0% encontró este documento útil (0 votos)
1K vistas425 páginas

Fundamentos de Programacion PDF

Cargado por

brenda fabe
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
1K vistas425 páginas

Fundamentos de Programacion PDF

Cargado por

brenda fabe
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
FUNDAMENTOS ze , PROGRAMACION Diagramas de flujo, Diagramas N-S, Pseudocddigo y Java fy Alfgomega Fundamentos de Programacion Diagramas de flujo, Diagramas N-S, Pseudocédigo y Java José Alfredo Jiménez Murillo Eréndira Miriam Jiménez Herndndez Laura Nelly Alvarado Zamora Ad Alfaomega [Buenos Aires * Bogotd * México DF # Santiago de Chile Datos catalograticos Gerente editorial: Jiménez, José Alfredo; Jiménez, Bréndira ‘Marcelo Grillo Giannetto y Alvarado, Laura gillo @alfaorncga com.mx Fancanidas de cia Diagramas de flujo, Diagramas N-S, aii Poevdocsdigoy inva Gerardo Gonzélee Nutiee geoazalez@ alfaumeva com.mx Alfaomega Grupo Editor, S.A. de C.V., México ISBN: 978-607-622-202-7 Fommato: 17 x 23 em Paginas: 432 Fundamentos de programacién. Diagramas de flujo, Diagramas N-S, Pseudocédigo y Java José Alfredo Jiménez. Murillo, Eréndira Miriam Jiménez Herniindez y Laura Nelly Alvarado Zamora, Derechos reservados @Alfaomega Grupo Editor, S.A. de C. V., México, Primera edicién: Alfaomega Grupo Editor, México, octubre 2014 © 2015 Alfomega Grupo Editor, 8.4. de C.V. Pitégoras 1139, Col. Del Valle, 03100, México D.F. ‘Miembro de la Camara Nacional de Ta Industria Editorial Mexicana Registro No, 2317 Pag. Web: httpu/mww.alfaomega.com.imx E-mail: atencionalcliente@alfaomega.com.mx ISBN: 978.607-622.202-7 Derechos reservados: Esta obra es propiedad intelectual de sus autores y los derechos de pablicacin en lengua espafiola han sido legalmente transferidos al editor. Prohibida su reproduccién parcial o total por cualquier medio sin permiso por escrito del propictario de los derechos del copyright. NOTA IMPORTANTE: La informacién contenida en esta obra ticne un fin exclusivamente didléctico y, por lo tante, no esta previsto su aprovechamiento a nivel profesional o industrial. Las indicaciones tgonicas y programas incluidos, han sido elaborados con gran cuidado por los autores y reproducidos bajo estrictas normas de control, ALFAOMEGA GRUPO EDITOR, S.A. de C.V. no serd juridicamente responsable por: errores u omisiones; dafios y perjuicios que se pudieran attibuir al uso de la informacién comprendida en este libro, ni por Ta utilizacién indebida que pudiera darsele. Impreso en México, Printed in Mexico. Empresas del grupo: ‘México: Alfucmegs Grupo Editr,S.A_ de C-V.~ Pitigoras 1139,Col. De Valle, México,D F.~ CP. 03100, Tel. (52-55) 5575-5022 — Fax: (52-55) 5575-2420 / 2490. Sin costo: 01-800-020-4396 E-mail: alencionalciente@alfaomega.com mx Colombia: Alfsomega Colombiana S.A. Calle 62 No. 20-46, Barrio Sen Luis, Bogoti, Colombia, “Tels: (97-1) 7450102 / 210-0415 ~ E-mail: chiente@altaomega.com.co Chile: Alfacmega Grupo Editor, SA.~ Av. Providencia 1443. Oficins 24, Santiago, Chile Tel. (56-2) 2235-4248 ~ Fax: (56-2) 2235-5786 — E-mail: agcehile@alfaoenega.cl Argentina: Altaomega Grupo Editor Argentino, S.A. Paraguay 1207 PB.OF 11, CP. 1057, Buenos Aires, Argentina, Tel Fax: (54-11) 4811-4887 y aX) 7183 — E-mail: ventas @alfnomegaoditorcom ar Para mis hijos: Eren, Pao y Marcelo, Por su apoyo y caro, José Alfredo A mis papas por ayudarme y darme un gran ejemplo. A mi mamd por motivarme para alcanzar mis metas. A Pepe por su amory apoyo. Eréndira Miriam Al null pointer asigment, mi primer motivador a discernir en el drea de la programacién. A Andy y Axel, mis entrenadores de paciencia. Los amo, Laura Nelly Mensaje del editor Una de las convicciones fandamentales de Alfuomega Grupo Editor es que los conocimientos son esen- ciales en el desempenio profesional, ya que sin ellos es imposible adquirir las habilidades, las desttezas y las actitudes necesarias para competi en el mercado laboral. El continue avance en la ciencia y la tecnologia demanda la actualizacién constante en estos conocimientos. Alfaomege Grupo Editor tiene como misién brindar a los estudiantes y a los profesionales textos actualizados escritos por especialistas destacados en su campo y que se encuentran enmarcados con una estructura didéctica fundamentada en bases pedagégicas que favorecen el aprendizaje y facilican su uili- zacién y aplicacién en la vida diaria. Consciente de las exigencias del entorno actual, Alfaomega Grupo Editor oftece complementos 2 este medio impreso a través de materiales adicionales en una pagina web que coadyuvardn, junto con 1 presente libro, a complementar y desarrollar las competencias necesarias que una profesién determinada requiera para responder a estas demandas. Esta obra busca desarrollar la légica de programacién del estudiante usando diferentes maneras de representar los algoritmos y presentando interesantes y variados problemas resueltos y para resolver, que ilustran los conceptos revisados. FUNDAMENTOS NF FROGRAMACION ATFAOMEGA Acerca de los autores José Alfredo Jiménez Murillo Obtuvo al titulo de Ingenicro Industrial Mecénico en Disco de Manufactura en el Insticuto Tecnolégica de Morelia. Después Obtuvo el grado de Maestsfa en Ciencias en Cém- puto Aplicado en el Centro de Estadistica y Céleulo (CEC) del Colegio de Postgraduados (CP), en Montecillo Estado de Méxi- co, en donde recibié un reconocimiento por su trayectoria acadé mica en este centro de investigaciéa, Posteriormente obruvo una segunda Maestria en Ciencias, en la Ensefianza de las Ciencias en el area de Matematicas en el Centro Interdisciplinario de Investigacién y Docencia en Educa- ci6n Técnica (CIIDET) de la Ciudad de Queréraro Qro. Méx., en donde le fue entregado un reconocimiento por el mejor pro- media de la generacién. Es autor del libra “Mateméticas para la computacién” de la Ediorial Alfaomega. Eréndira Miriam Jiménez Hernandez Nacié en Tlaxcala México, en 1987. A los 16 afios de edad gané medalla de bronce en la 9* Olimpiada Mexicana de Informiti- ca. Como parte de su formacién académica obtuvo el titulo de Ingeniera en Sistemas Computacionales con mencién honorifica en el Insticuto Tecnoldgico de Morelia y el grado de Maestra en Ciencias de la Computacién en el Centro de Investigacién en Computacién del Instituto Policécnico Nacional (IPN). Actual- mente realiza sus estudios de Doctorado en Ciencia ¢ Ingenieria de Ia Compuracién en la Universidad Nacional Auténoma de México (UNAM). Eunpaseentos ne mrocaaMtacion Atiouncs viii Acerca de los autores Laura Nelly Alvarado Zamora De origen Michoacano, nacida en la ciudad de Morelia. Realizé sus estudios de Licenciada en Informatica y se gradué con men- cién honorifica en el Instituto Tecnolégico de Morelia. Obtuvo el grado de Macstra en Administracién con Orien- tacién a los Sistemas por la Universidad Michoacana de San Ni- colds de Hidalgo (UMSNH) Inicié como desarrolladora independiente y desde 1997 se dedica ala docencia en el drea de la programacién. Aumwoucs Jnctnez, Jnstnz, Atvanano Contenido Antes de comenzar a leer xi Introduccién xii Capitulo 1. Conceptos bisicos Capfuulo 3. Introduccién a la programacin 1.1 Introduccién........222 a nr oC aoe. ee 3 32. Lenguaje de programacin Java... 86 te al ws 1 3.2.1 Caractstaticas del Lenguaje Java... 86 BOAIERE sr: ; 3.3. Entornos de desarrollo para Java .... 87 15 _Lenguyje de programas 7 33.1 NetBeans IDE........ : 87 LG Progam 8 3.4 Traduccién de un programa. . 88 1.7 Programacién ame 8 3.5 Bjecucién de un programa......... 38. 1.8 Paradigma de programacién ....-.. 9 3.6 Estructura bésica de un programa ... 93 UD. | Rae o.n0 3.7 Elementos del lenguaje Java. 94 1.10 Compiladores ¢ imeérpretes ... 321 Cauca 94 EAL, Eisele so 3.7.2. Tipos primitivos de variables... 94 1.12 Consola de linea de comandos...... 14 3.7.3 Cadenas de caracteres 96 113° Resumen.....eeeeceeeee seveee 15-374 Definicisn de variables 96 196 Problems. 16 3.7.5. Identificadores constantes . - 98 3.7.6 Operadores . 98 Caplenlo 2..-Algoritmos 3.8 Salida de datos... = 101 2% Farpincdin 24 3.9 Lectura de datos ... - 107 22 Resolucién de problemas 3.10 Conversion de tipo de daros ....... 108 de programacion ........ . 24 3.11 Clase Mach . ud 2.2.1. Anilisis de problema S88 YE 3.12. mores en tiempo de ejecucién «117 2.3. Representacién del algoritmo....... 26 ay eeitee: cess 2.3.1 Descripcién narrada 26 nobles 2.3.2 Diagrama de fujo wees 8 id Contre 2.3.3 Pseudocédigo .......... - 6 ‘PH ne Comralde Sule: 2.3.4 Diagramas Nassi-Shneiderman (N-S) 51 4.1. Introduecién. 130 2A Disefio dealgoritmos defunciones 58 4.2. ‘Eseructuras sclectivas: simple, 2.4.1 Fanciones en compuracién . . 59 doble y niltiple 130 24.2 Funciones rccursivas seccss 6} 4.2.1 Instruccién selectiva simple (if)... 130 243 Procedimientos ......... + 67 4.2.2 Instruccién selectiva doble (if-else). . 131 2.5 Resumen. 4.2.3 Insuuccién condicional miluple 2.6 Problemas (witch) : = 136 FONpAMRNTOs DF ROGRAMACION Armounca x Contenida 4.3 Estructurasiterativas: mientras, 6.7 Sobrecarga de métodos .... += 266 hacer-mientras, desde 139 68 Herencia . + 267 4.3.1, Mientras (while) . $139 6.9 Otros conceptos del paradigma dela 4.3.2 Hacer-mientras (do-while)...... 143 programacién oriencada a objetos . . . 270 433. Desde (E02) .cc cece 1146 6.10. Resumen... sees 270 44 Ciclos anidados .. Denes 149 GIL Problemas so... cscs csc £270 4.5. Manipulacién de cadenas. 1154 4.6 Disefio e implementacién de fanciones Capitulo 7. Introduccién a las Interfaces y métodos . : 158 grificas de usuario Go), Runcionetin vee 19974 ntroduccidn . cose 286 4.6.2. Méodos ae 1163 re 7.2 Definicién y evolucién de ls 3. Recursividad - SII ye nei 86 47° Resumen 181 cctaces BAe : 73 Proceso de desarollo de sofware con Interfaces grificas. ‘ 7A Paquetes grificos........+ : Capieile'5, Arsepled 7.5 Cuadros de didlogo . we 48 Problemas. . 182 5.1 . 196 7.6 Etiquetas... . 5.2 7.7 Cuadros de texto . conceptos bisicos, operaciones 7.8 Botones.. yapli ceeeeess 196 7.9 Un-vistazo a JTextArea y 5.3 Arreglos bidimensionales: ‘JScrollPane . . 311 conceptos bisicos, operaciones 7.10 Resumen 314 y aplicaciones. - . 208 7.11 Problemas .317 5.3.1. Anreglos irregulares 216 5.3.2. Arreglos como argumentos y Respuestas a problemas nones parimetros . 29 ony 5.4 Atreglos mulidimensionales: (pan ‘ficos 259 ae Basico operaciones 2. Algoritmos. conse SD omega +232 Introduccién a la programacién. =+ 347 5.5 Resumen e + 234 es ee pee 335 & Control de flujo ree 350 ~ = Nise 3S Arreglos. 0... eeeeeeceees .. 367 Capitulo 6. Introduccién a la programacién 6 Introduestin als programacién ‘odeitnds Objetoa orientada a objetos. - 381 7 Introduccidn alas interfaces grficas 6.1 Introduecién..... - 246 de usuario . -397 6.2. Origenes de la programacién orientada a objetos. . =-247 — Apéndices 6.3. Beneficios dela programacién orientada A. Instalacién de NetBeans IDE 409 a objetos 248 B Sintaxis para importar una dase de 64 Clases .. 248, otro paquete .... 0... eee 2 Ald 65 Méodos = 252 C Instrucciones para agregar la 6.6 Objetos . +255 biblioteca Absolute Layout ..........- 416 ATROMEGA Jieez, JIMENEZ, ALVARADO Antes de comenzar a leer En este libro se utiliza la tipografia Courier en los casos en que se hace referencia a eédigo 0 acciones que se han de realizar en Ia computadora, ya sea en un ejemplo o cuando se refiere a alguna funcién mencio- nada en el texto. También se usa para indicar mends de programas, teclas, URLs. grupos de noticias 0 direcciones de corteos electrénicos. Material de apoyo en la web Para tener acceso al material de la pagina web de apoyo del libro: 1, Ira la pagina http:/Mibroweb alfaomega.com.mx 2. tea lasecl'bn de catalogo y seleccionar la imagen de la portada del libro, al dar doble dlic sobre ella, tended acceso al material descargable Estimado profesor: Si desea acceder a los contenidos exclusivos para docentes por favor contacte al representante de la editorial que lo suele visitar 0 envienos un correo electrSnico a webmaster@alfaomega. com.mx FUNDAMENTOS DE FROGRAMACION ALAOMEGA Introduccién El indice de reprobacién en las asignaruras que permiten a los alumnos aprender a programar ca un len- guaje determinado es muy alto, peto no porque sea dificil aprender un lenguaje de programacién o porque sea complicado codificar un algoritmo, si€") porque las personas tienen problemas en légica, les cuesta mucho trabajo crear el algoritmo que permita resolver el problema. Quieren imprimir el resultado antes de calcularlo, o quieren calcularlo antes de tener todos los datos para realizar dicho célculo. Esperan que la computadora les adivine el pensamiento y se desesperan porque sus programas no realizan lo que se espera de ellos. La verdad es que el principal problema es que no plasman en sus programas las instrucciones necesarias para resolver el problema, bien porque no conocen la infinidad de maneras en que se puede usar tuna inscruccién para que la computadora realice Io que se quiera, 0 bien porque el orden de las inscru res no ¢s el adecuado, En ambos casos el problema es de Iégica porque no es suficiente saber que existen instrucciones para leer e imprimir informacién, para ejecurar un bloque de inscrucciones varias veces, para seleccionar el conjunto de sentencias sc ejecutardn cn determinado momento si se cumple una cierta con- dicién. Si las instrucciones no se usan adecuadamente en el momento indicado de nada sirven, o si no se combinan con un poco de imaginacién por parte de la persona que las esté utilizando para adaptaclas a las diferentes situaciones que se presenten, entonces no tiene ninguna ventaja conocerlas si no se saben usar. Esta obra esté pensada para ayudar alas personas que comienzan una carrera en el drea de la computa- cién, Busca desarrollar la légica de programacién del estudiante usando diferentes maneras de representar los algoritmos y resolviendo problemas interesantes para ilustrar y explicar cada uno de los conceptos 0 instrucciones de los lenguajes de programacién, tiene problemas que obligarsn a la persona a pensar y ser creativa para resolverlos. El libro esta integrado por siete unidades. En la primera unidad “Concepto bisicos” se abordan los conceptos y definiciones de los términas més usados en la programacién, entre los cuales se pueden mencionar: computadora, usuario, programa, programacién, compilador y su diferencia con intérprete, lenguaje de programacién, paradigma de programacién, algoritmo, entre otros. El objetivo de esta unidad es familiasizar al lector con las palabras y conceptos propios del dea. La segunda unidad “Algoritmos” tiene como finalidad el andlisis de problemas y la representacién de su soluciéa por medio de lenguajes algorfunicos. Se representan algoriumos por medio de descrip- cién narrada, diagramas de flujo, diagramas N-S, y pseudocddigo con sus ventajas y desventajas de cada tuna de estas formas de representacién. ‘También en esta segunda unidad se ve la representacisn de instruc- ciones mateméticas usando para ello operadores aritméticos bésicos y para finalizar se resuelven problemas con ayuda de funciones y procedimientos. Todas las actividades de la unidad se realizan sin apegarse a nin- glin lenguaje de programacién, pero tratando de que los algoritmas aqui representados se puedan codificar en Ja mayoria de los lenguajes de programacién conocidos. FUNDAMENTOS NF FROGRAMACION AtROMEGA xiv Introduccién En la unidad tres “Introduccién a la programacién’, se explica la forma de instalar el compilador Java, puesto que se utilizaré este lenguaje de programacién para el diseio de programas en este libro de texto. Se analiza la estructura bésica de un programa en Java. La manera de leer datos de teclado y Ia forma de imprimir la informacién en modo consola. Se codifican en Java ecuaciones matemédticas, se estudian los diferentes tipos de datos y se resuelven problemas secuenciales en Java. En la unidad cuatto “Control de flujo” se estudian y analizan las estructuras de control que permiten a la computadora tomar decisiones y con ello elegir la ruta que se debe seguir en el momento de la ejecu- cién de un programa, en funcién de las caracteristicas del problema, los datos conocidos y la presentacién del resultado. Se estudian tambien las instrucciones que permiten ejecutar un bloque de sentencias varias veces. Ademds en esta unidad se trata a profundidad el uso de métodos, como una forma de segmentar el programa en pequefies subprogramas que realizan una actividad deverminada, pero que en conjunto y de forma organizada, son parte de un sistema computacional més complejo. La unidad cinco “Arreglos” presenta las propiedades y restricciones de estructuras que permiten guar dar y procesar gran cantidad informacién, aprovechando la memoria de la computadora, para manipular los datos contenidas en vectores, matrices y arreglos multidimensionales La unidad seis “Introduccién a la programacién orientada a objetos” tiene como finalidad el intro- duciral alumno en el paradigma de programacién mds utilizada actualmente como lo ¢s la programacién orientada a objetos. Se explican los diferentes elementos de esce paradigma come son: objeto, clase, méto~ do, herencia, sobrecarga de métodos, entre otras. En la unidad siete “Introduccién a las interfaces grificas de usuario” se aborda de forma breve la pro- ‘gramaci6n grifica con la finalidad de que el alumno desarrolle programas mas amigables usando diferentes elementos grificos como son: cuadres de didlogo, etiquetas, campos de texto y botones. El objetivo de este libro es que las personas que incursionan en el érea de la computacién aprendan 2 programar, se utiliza el Ienguaje Java como una herramienta para observar los resultados obtenidos al codificar algoritmos que resuelven un problema determinado, pero la finalidad no es aprender Java sino aprender a programar independientemente del lenguaje, pero si ademas de ello, se aprende un poco del lenguaje més utilizado accualmente, los resultados serin doblemente satisfactorios. ATROMEGA Jowever, Janexe7, ArvARADO

También podría gustarte