principios de programacion 2010

59
SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS MODULO III: SISTEMAS BASICOS DE INFORMATICA SUBMODULO 1: APLICAR LOS PRINCIPIOS DE PROGRAMACIÓN EN LA SOLUCIÓN DE PROBLEMAS: PARA: CUARTO SEMESTRE GRUPO:____________ ESPECIALIDAD: INFORMATICA PERIODO: FEBRERO- JULIO DEL 2010 NOMBRE DEL ALUMNO(A): ______________________________________________ I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES 1 CENTRO DE BACHILLERATO TECNOLOGICO Industrial y de servicios No. 1

Upload: maruacuna

Post on 15-Jun-2015

4.040 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

MODULO III: SISTEMAS BASICOS DE INFORMATICA

SUBMODULO 1: APLICAR LOS PRINCIPIOS DE PROGRAMACIÓN EN LA SOLUCIÓN DE PROBLEMAS:

PARA:

CUARTO SEMESTRE

GRUPO:____________

ESPECIALIDAD:

INFORMATICA

PERIODO:

FEBRERO- JULIO DEL 2010

NOMBRE DEL ALUMNO(A):

______________________________________________

NOMBRE DE LA MAESTRA:

________________________________________________

PROGRAMA:

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

1

CENTRO DE BACHILLERATO TECNOLOGICO

Industrial y de servicios No. 1

Page 2: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

UNIDAD I: PROCESO DE SOLUCION, ALGORITMOS, DIAGRAMAS DE FLUJO Y PSEUDOCODIGOS.

TEMA 1.- DESARROLLAR EL PROCESO DE SOLUCION DE UN PROBLEMA:1.1 IDENTIFICAR EL PROBLEMA:1.2 ANÁLISIS DEL PROBLEMATEMA 2: ELABORAR ALGORITMOS PARA LA SOLUCION DE PROBLEMAS:2.1 DEFINICIÓN DE ALGORITMOTEMA 3: ELABORAR DIAGRAMAS DE FLUJO PARA LA SOLUCION DE PROBLEMAS3.1 DEFINICION DE DIAGRAMA DE FLUJO3.2 REGLAS PARA LA CREACIÓN DE DIAGRAMA DE FLUJO:3.3 SIMBOLOS DE DIAGRAMAS DE FLUJOTEMA 4: ELABORAR PSEUDOCODIGO PARA LA SOLUCION DE PROBLEMAS.4.1 DEFINICION DE PSEUDOCODIGO:4.2. PARTES DE UN PSEUDOCODIGO4.3. OBJETIVOS Y CARACTERISTICAS DE UN PSEUDOCODIGO:4.4. VENTAJAS DE UTILIZAR UN PSEUDOCÓDIGO A UN DIAGRAMA DE FLUJO

UNIDAD II: CODIFICAR LA SOLUCION DEL PROBLEMA EN UN LENGUAJE DE PROGRAMACION ESTRUCTURADO

TEMA 5: ELEMENTOS BASICOS DEL LENGUAJE DE PROGRAMACION ESTRUCTURADO5.1. QUÉ ES C.?5.2. CONCEPTOS IMPORTANTES: TEMA 6.- REGLAS PARA DESARROLLAR UN PROGRAMA EN CTEMA 7.-PANTALLA DE BORLANDTEMA 8: UTILIZAR ESTRUCTURAS DE CONTROL8.1 SENTENCIAS PARA ENTRADA Y SALIDA DE DATOS8.2. INSTRUCCIONES PARA CONTROL DE DATOS EN PANTALLA

UNIDAD III: SENTENCIAS DE CONTROL Y ARREGLOS

TEMA 9: SENTENCIAS DE CONTROL SELECTIVAS:9.1 SENTENCIA if - else9.2. SENTENCIA switch():

TEMA 10.- SENTENCIAS DE CONTROL REPETITIVAS:10.1 SENTENCIA while:10.2- SENTENCIA do - while10.3.- La SENTECIA for:

TEMA 11.- DECLARACION E INCIALIZACION DE ARREGLOS:11.1. CONCEPTO DE ARRAYS11.2. DECLARACIÓN DE ARREGLOS11.3 ARREGLOS UNIDIMENSIONALES:11.4.- ARREGLOS BIDIMENSIONALES

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

2

Page 3: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

TEMA 1.- DESARROLLAR EL PROCESO DE SOLUCION DE UN PROBLEMA.INTRODUCCION

CONCEPTOS: Software, software del sistema, software de programación, software de aplicación, editor, compilador, interprete, código fuente, código objeto, programa, lenguaje de programación, lenguaje de alto nivel, lenguaje de bajo nivel, diferentes lenguajes de programación.

1.1 IDENTIFICAR EL PROBLEMA:Un problema es simplemente una tarea a realizar. Una definición de problema no debe incluir restricciones en como debe resolverse el problema.Para resolver un problema se debe seguir los siguientes pasos:

1.2 Análisis del Problema Un Problema es la diferencia entre una situación actual y una situación deseada, ésta última puede surgir como producto de una necesidad, una deficiencia o una oportunidad de mejora de los negocios.En todo problema se encuentran tres características básicas:1.      Los datos de entrada2.      Los resultados, o salida3.      Las operaciones que se van a ejecutar o Proceso.

DATOS RESULTADOS

ENTADA SALIDA

Entrada: información dada del problema. Proceso: operaciones o cálculos necesarios para encontrar la solución del problema. Salida: respuestas dadas por el proceso resultados finales de los cálculos.El proceso de diseño de un programa consta de los siguientes pasos o etapas: Pasos:Pasos Etapa Descripción

1 Análisis del problema Conducen al diseño detallado por medio un código escrito en forma de un algoritmo2 Diseño de algoritmo

3 Codificación Se implementa el algoritmo en un código escrito en un lenguaje de programación. Refleja las ideas desarrolladas en las etapas de análisis y diseño

4 Compilación y ejecución Traduce el programa fuente a programa en código de maquina y lo ejecuta.

5 Verificación Busca errores en las etapas anteriores y los elimina.

6 Depuración

7 Documentación Son comentarios, etiquetas de texto, que facilitan la

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

Análisis del problema

Diseño del Algoritmo

Codificación(Programación)

Ejecución y Validación

3

PROCESO

Page 4: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

comprensión del programa

TEMA 2: ELABORAR ALGORITMOS PARA LA SOLUCION DE PROBLEMAS

2.1 DEFINICIÓN DE ALGORITMO-Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico.- Es un conjunto de instrucciones paso a paso que, al completarse, resuelve el problema original.-Un algoritmo puede definir una secuencia finita de instrucciones cada una de las cuales tiene un significado claro y puede ser efectuada con una cantidad finita de esfuerzo en una longitud de tiempo también finito.Estructura Básica de un Algoritmo:

Inicio Datos de entrada (operaciones básicas) Procesamiento de los datos Datos de salida

Fin

Un algoritmo establece, de manera genérica e informal, la secuencia de pasos o acciones que resuelve un determinado problema. Los algoritmos constituyen la documentación principal que se necesita para poder iniciar la fase de codificación y, para representarlos, se utiliza, fundamentalmente, dos tipos de notación: pseudocódigo y diagramas de flujo. El diseño de un algoritmo es independiente del lenguaje que después se vaya a utilizar para codificarlo.Algoritmo: Es un método para resolver un problema mediante una serie de pasos definidos, precisos y finitos.Preciso: implica el orden de realización de cada uno de los pasos.Definido: si se sigue dos veces, se obtiene el mismo resultado.Finito: Tiene un numero determinado de pasos, implica que tiene un fin,

Un algoritmo posee varias propiedades: 1.  Un algoritmo debe ser correcto. En otras palabras, debe calcular la función deseada, convirtiendo cada entrada en la salida correcta.2.  Un algoritmo está compuesto de una serie de pasos concretos (cada uno claramente entendido)3.  No debe existir ambigüedad en cual es el paso siguiente a realizar.4.  Debe estar compuesto de un número finito de pasos. 5.  Un algoritmo debe terminar.  

Ejemplo 1: Reparar un ponchado de una bicicleta 1.  INICIO 2. desmontar la rueda 3. desmontar la cubierta 4. sacar la cámara 5. inflar la cámara 6. introducir una sección de la cámara en un cubo de agua 7. mientras no salgan burbujas 8. introducir una sección de la cámara en un cubo de agua 9. marcar lo ponchado 10. poner pegamento 11. mientras no esté seco 12.       esperar 13. poner el parche 14. mientras no esté fijo 15.       apretar 16. montar la cámara 17. montar la cubierta 18. montar la rueda 19. FIN

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

4

Page 5: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

PRACTICA 1: PEDIR AL ALUMNO UN ALGORITMO DE LAS ACTIVIDADES REALIZADAS EN TODO UN DIA DE LA SEMANA QUE VIENE A CLASES

I.- SECUENCIAL Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el

número de renglón. Es decir que las instrucciones se ejecutan de arriba hacia abajo.Instrucción1 Instrucción2 Instrucción3

Instrucción

EJEMPLOS 2: El siguiente algoritmo te pida nombre, dirección, teléfono y fecha de nacimiento y que imprima los datos.

INICIOLeer nombreLeer dirección Leer teléfonoLeer FechaNacEscribir nombre, dirección, teléfono, FechaNacFIN

PRACTICA 2: Realiza un algoritmo que te pida nombre, especialidad, grupo, grado y número de control, los datos pedidos los va a imprimir.

EJEMPLO 3: El siguiente algoritmo te pida dos variables y que calcule la suma y resta e imprima los resultados.INICIOLeer N1, N2Suma= N1 + N2Resta = N1 - N2Escribir sumaEscribir restaFIN

PRACTICA 3: Realizar un algoritmo que te calcula suma, resta, multiplicación y división de dos variables e imprima los resultados.

EJEMPLO 4: El siguiente algoritmo te calcula el promedio de tres números e imprima el promedioINICIOLeer C1, C2, C3Suma = C1 + C2+ C3Promedio = Suma/ 3Escribir PromedioFIN

PRACTICA 4: Realizar un algoritmo que calcule el promedio de las asignaturas (materias) que estas llevando en este semestre, imprimir la calificación de las materias y el promedio.

II.- SELECTIVA

La instrucción selectiva determina si una determinada instrucción se ejecuta o no, según el cumplimiento de una condición.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

5

Page 6: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

si P entonces Instrucciones1

fin si

EJERCICIO 5: El siguiente ejemplo te pide la edad de una persona y solo imprime los mayores de edad:

INICIOLeer edad Si edad >= 18 Escribir “ES MAYOR DE EDAD” Fin siFIN

PRACTICA 5: Realizar un algoritmo que te pida la calificación e imprima si es aprobatoria.

III.- SELECTIVA DOBLE (ALTERNATIVA) La instrucción selectiva realiza una instrucción de dos posibles, según el cumplimiento de

una condición.si P entonces Instrucciones1 si no Instrucciones2

fin siLa condición P es una variable booleana o una función reducible a booleana (lógica,

Verdadero/Falso). Si esta condición es cierta se ejecuta Instrucciones1, si no es así, entonces se ejecuta Instrucciones2.

EJEMPLO 6: El siguiente algoritmo determine el mayor de dos númerosInicioLeer A,B, Si A > B entonces Escribir “El mayor es”, A Si no Escribir “El mayor es”, B Fin siFinPRACTICA 6: Realizar un algoritmo que pida la edad y que te imprima si es mayor o menor de edad.

IV. -SELECTIVA MÚLTIPLE:También es común el uso de una selección múltiple que equivaldría a anidar varias

funciones de selección.si Condición1 entonces Instrucciones1 si no si Condición2 entonces Instrucciones2

si no si Condiciónn entonces Instruccionesn - 1 si no Instruccionesn

fin si

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

6

Page 7: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

En este caso hay una serie de condiciones que tienen que ser mutuamente excluyentes, si una de ellas se cumple las demás tienen que ser falsas necesariamente, hay un caso si no que será cierto cuando las demás condiciones sean falsas.

En esta estructura si Condición1 es cierta, entonces se ejecuta sólo Instrucciones. En general, si Condición es verdadera, entonces sólo se ejecuta Instrucciones.

EJERCICIO 7: El siguiente algoritmo determina cual es mayor de tres números. InicioLeer A,B,C Si A>B entonces Si A>C entonces Escribir “El mayor es”, A Si no Escribir “El mayor es”, C Fin si Si no Si B>C entonces Escribir “El mayor es”, B Si no Escribir “El mayor es”, C Fin si Fin siFin

PRACTICA 7: Realizar un algoritmo que determine que tipo de rectángulo es (ESCALENO, ISOSCELES O EQUILATERO) pidiendo las mediadas de los tres lados.

Una construcción similar a la anterior (equivalente en algunos casos) es la que se muestra a continuación.

Seleccionar Indicador caso Valor1: Instrucciones1 caso Valor2: Instrucciones2

caso Valorn-1: Instruccionesn-1 [en otro caso: Instruccionesn]

Fin seleccionar IndicadorEJERCICIO 8: El siguiente algoritmo imprime un menú con tres opciones: 1.- Suma, 2.- Resta y 3.-Fin, al seleccionar suma o resta realizara las operación con dos variables e imprimirá el resultado, al seleccionar la opción 3 saldrá del algoritmo.InicioEscribir ”menú:” “1.- suma” “2.- resta” “3.- fin”Seleccionar Opcion Leer opc Caso opc =1 leer a, b suma = a + b escribir suma Caso opc = 2 leer a, b resta = a – b escribir resta

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

7

Page 8: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

En otro caso Escribir “fin del programa”Fin seleccionar FinPRÁCTICA 8: Realizar un algoritmo que realice una de las 5 operaciones especificadas en el MENU: 1. Suma, 2. Resta, 3. Multiplicación, 4. División, 5. Exponenciación, 6. Salir, e imprima el resultado.

En este caso hay Indicador es una variable o una función cuyo valor es comparado en cada caso con Valori, si en algún caso coinciden ambos valores, entonces se ejecutarán las Instruccionesi correspondientes. La sección en otro caso es análoga a la sección si no del ejemplo anterior.

V.- ITERATIVA:Las instrucciones iterativas abren la posibilidad de realizar una secuencia de instrucciones

más de una vez.mientras P hacer Instrucciones

fin mientrasEl bucle se repite mientras la condición P sea cierta, si al llegar por primera vez al bucle

mientras la condición es falsa, el cuerpo del bucle no se ejecuta ninguna vez.

Existen otras variantes que se derivan a partir de la anterior. La estructura de control hacer se utiliza cuando es necesario que las instrucciones de una estructura mientras se ejecuten al menos una vez:

hacer Instrucciones

mientras P

La estructura anterior equivaldría a escribir

Instrucciones mientras P hacer Instrucciones

fin mientras

EJERCICIO 9: El siguiente algoritmo imprima los números del 1 al 10.

Inicio n=1 mientras n<=10 escribir n n=n+1 fin mientrasFin.

PRÁCTICA 9: Realizar un algoritmo que calcule la suma consecutiva del 1 al 10.

Bucle o ciclo Repetir: Se evalúa la condición al final del ciclo, siempre se ejecuta al menos una vez el bucle, El bucle se repite hasta que la condición es verdadera.

Repetir instrucciones

hasta <condición> fin repetir.

EJERCICIO 10: Realizar un algoritmo que calcule la suma consecutiva que empiece en un número dado y que termine en un segundo número dado.

InicioLeer N1Leer N2

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

8

Page 9: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

Suma = 0N=N1Repetir N1 > N2 Suma = Suma+N N = N+1Fin repetirEscribir SumaFin

PRACTICA 10: Escribir un algoritmo que pida la edad y el sexo y dependiendo si es hombre o mujer y si puede votar o no, utilice el ciclo repetir y la condición si-sino.

Ciclo PARA HASTA: Una estructura de control muy común es el ciclo para, la cual se usa cuando se desea iterar sobre un índice i (por convención se usa i, sin embargo se puede usar cualquier identificador):

para hasta n hacer Instrucciones

fin para

EJERCICIO 11: Realizar un algoritmo que calcule e imprima el factorial de un número.

Inicio

fact = 1 leer numero x = 1 para hasta que x > numero fact = fact * x x = x+1 fin para escribir factFin.

PRÁCTICA 11: Realizar un algoritmo que imprima cualquier tabla de multiplicar.

Por último, también es común usar la estructura de control anidado o para anidado.

EJERCICIO 12: El siguiente algoritmo imprime las tablas de multiplicar del 1 al 10, imprimiendo de una en una.

INICIO Tabla = 1 X= 1Para hasta que Tabal >10 Para hasta que X= >10 Mult= Tabla * X Escribir Tabla “*”, X, “=”, Mult X= X+ 1 Fin para Tabla = Tabla +1Fin ParaFIN

PRACTICA 12: Realizar un algoritmo que en un Para hasta pida las calificaciones de tus materias de este semestre y te calcule el promedio, en otro ciclo de Para hasta imprimir las calificaciones que diste y el promedio calculado.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

9

Page 10: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

TEMA 3: ELABORAR DIAGRAMAS DE FLUJO PARA LA SOLUCION DE PROBLEMAS3.1 DEFINICION DE DIAGRAMA DE FLUJOEl diagrama de flujo representa la forma más tradicional y duradera para especificar los detalles algorítmicos de un proceso. Se utiliza principalmente en programación, economía y procesos industriales; estos diagramas utilizan una serie de símbolos con significados especiales. Son la representación gráfica de los pasos de un proceso, que se realiza para entender mejor al mismo.

3.2 . REGLAS PARA LA CREACIÓN DE DIAGRAMAS DE FLUJO:Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de izquierda a derecha.Los símbolos se unen con líneas, las cuales tienen en la punta una flecha que indica la dirección que fluye la información procesos, se deben de utilizar solamente líneas de flujo horizontal o verticales (nunca diagonales).Se debe evitar el cruce de líneas, para lo cual se quisiera separar el flujo del diagrama a un sitio distinto, se pudiera realizar utilizando los conectores. Se debe tener en cuenta que solo se vana utilizar conectores cuando sea estrictamente necesario.No deben quedar líneas de flujo sin conectarTodo texto escrito dentro de un símbolo debe ser legible, preciso, evitando el uso de muchas palabras.Todos los símbolos pueden tener más de una línea de entrada, a excepción del símbolo final.Solo los símbolos de decisión pueden y deben tener más de una línea de flujo de salida.

3.3 SIMBOLOS DE DIAGRAMAS DE FLUJO: Los símbolos tienen significados específicos y se conectan por medio de flechas que indican el flujo entre los distintos pasos o etapas.

Los símbolos más comunes son:  1.- SIMBOLOS DE OPERACIÓN: Son los que representan acciones u operaciones que

se van realizando en la secuencia lógica correspondiente. SIMBOLO DESCRIPCIÓN

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

10

Indica el inicio y el final de nuestro diagrama de flujo.

Nos indica la asignación de un valor en la memoria (inicialización o incremento) y la ejecución de una operación aritmética.

Indica la entrada de datos a través del teclado

INICIO/FINAL

PROCESO

ENTRADA

SUBPROGRAMA Representa un tratamiento con referencia, compuesta de una o varias operaciones o programas que se definene completamente.

SALIDA POR PANTALLA

Representa una función de salida de información en la pantalla o monitor.

SALIDA POR IMPRESORA

Page 11: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

2.- SIMBOLOS DE DECISIÓN: Se utilizan par el establecimiento de bifurcación o la construcción de estructuras en las que se evalúan una expresión lógica o múltiple derivados de una secuencia lógica de ejecución de las operaciones entre varios caminos posibles.

SIMBOLO DESCRIPCIÓN

SI

NO

SI NO

3.- LINEAS DE FLUJO: Indican una secuencia lógica de operaciones desde el comienzo (inicio) hasta final (fin o parada).

SIMBOLO DESCRIPCIÓN

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

11

Indica la salida de información por impresora

PREPARACION

Indica la modificación de una instrucción de un grupo de instrucciones que alteran el programa en si mismo, ejemplo modificación de un Registro.

DECISIÓN

Representa una operación de dos decisiones ya se verdadera o falsa, o si y no.

DECISIÓN MULTIPLE

Determina el camino a seguir entre varios casos posibles.

SÍMBOLO DE SELECCIÓN MÚLTIPLE: Dada una expresión permite escoger una opción de muchas.

BIFURCACION: Representa una incógnita es decir una entrada y dos posibles salidas, puede ser falso o verdadero, como también si o no, según sea la condición.

Page 12: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

4.- SIMBOLOS DE CONEXIÓN: Se utilizan para la unión de líneas de flujo en los casos de reagrupamiento de conexión o continuación en otra parte, pero por cualquier motivo cambio de hoja, cruce de líneas, etc.

SIMBOLO DESCRIPCIÓN

EJEMPLOS:EJEMPLO 13: El siguiente diagrama de flujo te pide a través del teclado nombre, dirección, teléfono y fecha de nacimiento y que imprima los datos por la pantalla.

PRACTICA 13: Realiza un Diagrama de flujo que te pida a través del teclado nombre, especialidad, grupo, grado y número de control, que imprima los datos por la impresora.

EJEMPLO 14: El siguiente diagrama de flujo te pide dos variables por el teclado y que calcule la suma y resta e imprima los resultados por pantalla.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

12

Conector dentro de página: Representa la continuidad del diagrama dentro de la misma página.

Conector fuera de página: Representa la continuidad del diagrama en otra página.

DIRECCIONES DE FLUJO: Muestran dirección y sentido del flujo del proceso, conectando los símbolos.

COMENTARIOS: Se utiliza para aclarar o documentar el diseño del algoritmo con algún comentario que se considera necesario

INICIO

nombre, dirección, teléfono, FechaNac

FIN

nombre, dirección, teléfono, FechaNac

N1, N2

INICIO

Page 13: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

PRACTICA 14: Realizar un diagrama de flujo que te calcula suma, resta, multiplicación y división de dos variables e imprima los resultados por la impresora.

EJEMPLO 15: El siguiente diagrama de flujo calcula el promedio de tres números e imprima el promedio, los datos de salida serán por el teclado y los de salida por impresora.

PRACTICA 15: Realizar un diagrama de flujo que calcule el promedio de los ASIGNATURAS (materias) que estas llevando en este semestre, imprimir la calificación de las materias y el promedio, los datos de entrada serán a través del teclado y los de salida por pantalla.

TEMA 4: ELABORAR PSEUDOCODIGO PARA LA SOLUCION DE PROBLEMAS.

4.1 DEFINCION DE PSEUDOCODIGO:

El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje común, instrucciones de programación y palabras clave que definen las estructuras básicas. Su objetivo es permitir que el programador se centre en los aspectos lógicos de la solución a un problema.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

13

FIN

SUMARESTA

Suma = N1+ N2Resta = N1 – N2

C1, C2, C3

FIN

Suma = C1+ C2 +C3Promedio = Suma/ 3

INICIO

Promedio

Page 14: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

No siendo el pseudocódigo un lenguaje formal, varían de un programador a otro, es decir, no hay una estructura semántica ni arquitectura estándar. Es una herramienta ágil para el estudio y diseño de aplicaciones, podríamos definir como: lenguaje imperativo, de tercera generación, según el método de programación estructurada.

Pseudocódigo = Pseudo (Supuesto) + Código (Instrucción).

Pseudocódigo: Su estructura es similar a la de un programa. Es un punto intermedio entre el lenguaje natural y el lenguaje de alto nivel, es decir Lenguaje intermedio entre nuestro lenguaje y el lenguaje de programación.

4.2. PARTES DE UN PSEUDOCODIGO: Todo documento en pseudocódigo debe permitir la descripción de: Instrucciones primitivas Instrucciones de proceso Instrucciones de control Instrucciones compuestas Instrucciones de descripción Estructura a seguir en su realización: Cabecera: Programa: Modulo: Tipos de datos: Constantes: Variables:

Cuerpo: Inicio Instrucciones Fin

Para comentar en pseudocódigo se le antepone al comentario un asteriscos (*).

4.3. OBJETIVOS Y CARACTERISTICAS DE UN PSEUDOCODIGO:

El principal objetivo del pseudocódigo es el de representar la solución a un algoritmo de la forma más detallada posible, y a su vez lo más parecida posible al lenguaje que posteriormente se utilizara para la codificación del mismo.

Las principales características de este lenguaje son: Se puede ejecutar en un ordenador Es una forma de representación sencilla de utilizar y de manipular. Facilita el paso del programa al lenguaje de programación. Es independiente del lenguaje de programación que se vaya a utilizar. Es un método que facilita la programación y solución al algoritmo del programa.

4.4. VENTAJAS DE UTILIZAR UN PSEUDOCÓDIGO A UN DIAGRAMA DE FLUJO Una vez que tenemos preparado un diagrama de flujos (ordinograma u organigrama) y un pseudocódigo ya podemos comenzar con la codificación del programa en nuestro ordenador. A partir de aquí todo varía dependiendo del lenguaje de programación que utilicemos, pero en todos los programas tendremos que definir los tipos de datos que utilizaremos. Ocupa menos espacio en una hoja de papel Permite representar en forma fácil operaciones repetitivas complejas Es muy fácil pasar de Pseudocódigo a un programa en algún lenguaje de programación. Si se siguen las reglas se puede observar claramente los niveles que tiene cada operación.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

14

Page 15: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

EJEMPLOS:EJEMPLO 16: El siguiente Pseudocódigo que te pida nombre, dirección, teléfono y fecha de nacimiento y que imprima los datos.INICIO Variables nombre, dirección, teléfono, FechaNac Escribir “Dame tu nombre:” Leer nombre Escribir “Dame tu dirección:” Leer dirección Escribir “Dame tu teléfono:” Leer teléfono Escribir “Dame tu Fecha de Nacimiento:” Leer FechaNac Imprimir nombre, dirección, teléfono, FechaNacFIN

PRACTICA 16: Realiza un Pseudocódigo que te pida nombre, especialidad, grupo, grado y número de control, los datos pedidos los va a imprimir.

EJEMPLO 17: El siguiente Pseudocódigo que pida dos variables y que calcule la suma y resta e imprima los resultados.INICIO Variables N1, N2, Suma, Resta Escribir “Dame dos números:” Leer N1, N2 Suma= N1 + N2 Resta = N1 - N2 Imprimir Suma Imprimir RestaFIN

PRACTICA 17: Realizar un Pseudocódigo que te calcula suma, resta, multiplicación y división de dos variables e imprima los resultados.

EJEMPLO 18: El siguiente Pseudocódigo te calcule el promedio de tres números e imprima el promedioINICIO Variables C1, C2, Suma, Promedio Escribir “Teclea tres números:” Leer C1, C2, C3 Suma = C1 + C2+ C3 Promedio = Suma/ 3 Imprimir PromedioFIN

PRACTICA 18: Realizar un Pseudocódigo que calcule el promedio de los asignaturas (materias) que estas llevando en este semestre, imprimir la calificación de las materias y el promedio.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

15

Page 16: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

UNIDAD II: CODIFICAR LA SOLUCION DEL PROBLEMA EN UN LENGUAJE DE PROGRAMACION ESTRUCTURADO

TEMA 5: ELEMENTOS BASICOS DEL LENGUAJE DE PROGRAMACION ESTRUCTURADO

5.1. QUÉ ES C.? C es un lenguaje de programación de alto nivel desarrollado en los laboratorios Bell de AT&T hacia 1972. Fue diseñado y escrito por Dennos Ritchie, quién estaba trabajando con Ken Thompson en el sistema operativo Unix. C pertenece a una familia bien establecida de lenguajes cuya tradición enfatiza virtudes claves como: fiabilidad, regularidad y facilidad de uso.

5.2. CONCEPTOS IMPORTANTES: 1.- Lenguaje: Se le denomina lenguaje de programación donde las instrucciones o sentencias de la computadora son escritas con palabras similares a los lenguajes humanos (inglés) lo que facilita la estructura y la fácil comprensión por el programador.2.- Programa: Es un conjunto de símbolos con determinadas reglas gramaticales con un propósito plenamente definido. 3.- Instrucción: Son acciones para especificar ciertas operaciones o tareas que se deben ejecutar en la computadora, la elaboración de un programa requiere el juego o repertorio de instrucciones de un lenguaje. 4.- Variable: Es un nombre que representa un valor, puede variar este valor durante la ejecución del programa.

Reglas de funcionamiento de las variables:1. La variable debe comenzar obligatoriamente con una letra.2. La variable puede llevar mayúscula o minúscula.3. No se puede utilizar sentencias ni palabras reservadas del C.

5.- Constantes: Existen cuatro tipos de constantes que son: literales, definidas, declaradoras y enumeradas.Las constantes literales se dividen en cuatro grupos que pueden ser:

a) CONSTANTES ENTERAS. Son todos los números que no utilizan signo de puntuaciónb) CONSTANTES CARÁCTER. Es un carácter del código ASCII encerrado entre comillas

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

16

Page 17: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

c) CONSTANTES REALES. Se les conoce como constantes flotantes y representan un valor real, siempre tienen signo de puntuación y representan números decimales.

CONSTANTES CADENA Secuencia de caracteres encerrados entre dobles comillas (“cadena de caracteres “ )

La constante cadena incluye un cero al final de la cadena ya que c++ necesita saber donde termina la cadena.Constantes definidas (simbólicas) Las constantes deben recibir nombres simbólicos mediante la directiva #define.

Constantes enumeradasLas constantes enumeradas permiten crear listas de elementos afines. Un ejemplo típico es una constante enumerada de listas de colores, que se puede declarar como: \\programa: que nos permite saber la distancia en millas y en Km. A la luna\\progamador: \\fecha: #incluye < iostream.h>main0{const double luna= 2388757;// distancia en millascout<<”La distancia ala luna es:”<<Luna<<”6.- Tipos de Datos: La siguiente tabla muestra los tipos de datos disponibles en el compilador de C++TIPO TAMAÑO(bits) RANGO DE VALORChar 8 -128 a 127Unsigned char 8 0 a 255Enum 16 -32,768 a 32,767Int 16 -32,768 a 32,767Short int 16 -32,768 a 32,767Unsigned in 16 0 a 65,535Long 32 -2,147,483,648 a 2,147,483,647Unsigned long 32 0 a 4,294,967,295Flota 32 3.4 E-308 a 3.4 E +38Double 64 1.7E-308 a 1.7 E +308Long double 80 3.4E-4932 a 3.4E +3932Void Near pointer 16 Dirección de memoriaFar pointer 16 Dirección de memoria

7.- Tipos de datos fundamentales:

char                          Representa un carácter en código ASCII, también se puede interpretar como un entero.

short int                   Indica un entero de tamaño corto.

int                            Entero

long int                    Entero largo.

unsigned short int  Como short int pero sin signo.

unsigned int            Como int pero sin signo.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

17

Page 18: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

unsigned long int    Como long int pero sin signo.

float                        Flotante corto.

double                    Flotante largo.

void                        No indica ningún tipo. Es el tipo de las funciones que no devuelven nada. Los tipos short int, long int, unsigned int y long float se pueden escribir como: short, long, unsigned y double. Con respecto al tamaño que ocupan en memoria variables de estos tipos, todo lo que garantiza C es:  sizeof(char) = 1  sizeof(short) <= sizeof(int) <= sizeof(long)  sizeof(unsigned) = sizeof(int)  sizeof(float) =< sizeof(double)

Donde sizeof es un operador que está incorporado en C y devuelve el número de bytes que tiene un objeto.

Hay un grupo de modificadores que indican la forma que se almacena una determinada variable de u n determinado tipo. Se indica antes del tipo de la variable.

static Cuando se invoca a una función por segunda vez se pierden los valores que las variables locales de la función tenían al acabar la anterior llamada. Declarando una variable de este tipo cuando se llama por segunda vez a la subrutina la variable static (estática) contiene el mismo valor que al acabar la llamada anterior.

auto Es lo mismo que si no se usara ningún modificador

volatile El compilador debe asumir que la variable está relacionada con un dispositivo y que puede cambiar de valor en cualquier momento.

register El compilador procurará almacenar la variable cualificada de este modo en un registro de la CPU.

extern La variable se considera declarada en otro fichero. No se le asignará dirección ni espacio de memoria.

8.- OPERADORES: OPERADORES ARITMETICOS:

Se aplican sobre objetos con valores numéricos, como se muestra en la siguiente tabla.

OPERADOR SIGNIFICADO + suma - resta * multiplicación / división % modulo

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

18

Page 19: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

++ incremento -- decremento

OPERADORES RELACIONALES:Se usan para comparar los valores que resultan de reducir expresiones:OPERADOR SIGNIFICADO > Mayor que < Menor que = Igual >= Mayor igual que <= Menor igual que == Igualdad != Desigualdad OPERADORES LÓGICOS:

Se aplican sobre los enunciados que resultan de las operaciones relaciónales:OPERADOR SIGNIFICADO ||           OR (ò) && AND (y) !           NOT (no)

OPERADORES INCREMENTALES.

Son operadores unarios que incrementan o disminuyen en una unidad el valor de la variable a la que afectan. Los operadores son (+ +) , ( - - ) .

9.- EXPRESIONESUna expresión es una combinación de variables y/o constantes, y operadores. La

expresión es equivalente al resultado que proporciona al aplicar sus operadores a sus operandos.Por ejemplo, 1+5 es una expresión formada por dos operandos (1 y 5) y un operador que es el signo + ; esta expresión es equivalente al valor de 6 , lo cual quiere decir que allí donde esta expresión aparece en el programa, en el momento de la ejecución es evaluada y sustituida por su resultado.Una expresión puede estar formada por otras expresiones más sencillas, y puede contener paréntesis de varios niveles agrupando distintos términos.

Los operadores de una expresión se evalúan en el siguiente orden:1.- paréntesis comenzando por los más internos2.- potencia3.- producto * y divisores /4.- suma + y resta –5.- relacionales6.- negación7.- conjugación.

10.- Comentarios:A la hora de programar es conveniente añadir comentarios (cuantos más mejor) para

poder saber que función tiene cada parte del código, en caso de que no lo utilicemos durante algún tiempo. Además facilitaremos el trabajo a otros programadores que puedan utilizar nuestro archivo fuente.Para poner comentarios en un programa escrito en C usamos los símbolos /* , */ o // , //

/* Este es un ejemplo de comentario */// Un comentario también puedeestar escrito en varias líneas //

El símbolo /* o // coloca al principio del comentario y el símbolo */ o // al final.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

19

Page 20: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

El comentario, contenido entre estos dos símbolos, no será tenido en cuenta por el compilador.

TEMA 6.- REGLAS PARA DESARROLLAR UN PROGRAMA EN C

#include (directivas del programa)#define (macros del procesador)

declaraciones globalesfuncionesvariables

función principal mainmain(){declaraciones locales sentencias}definiciones de otras funcionesfunc 1(...){...}func 2(...){...}

EJEMPLO:/* */ o // // …………………….. Comentarios# include<iostream.h> ……………Archivo de cabecera iostream.hmain() ………………………….. función principal{ variables locales

bloque}

bloque local}

funcion1( ) {

variables localesbloque

}

IMPORTANTE: Todas las sentencias de C se escriben en minúsculas, cada palabra o variable que se utilice deberá ser manejada igual durante el transcurso del programa .las variables pueden ser escritas en mayúscula o minúsculas. Ejemplo:Variable nombre NO es igual que variable NOMBRE.

1.- SINTAXIS Y FORMATOSLAS DIRECTIVAS

# includeEs una directiva del procesador que contiene los archivos ASCII (archivo fuente)

de cabecera. Se les conoce como conjunto de librerías de código objeto.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

20

Page 21: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

Sintaxis: # include <nombrearch> ó # include nombrearch.h

# defineIndica al procesador que defina un ítem de datos u operación para el programa C

2.- DECLARACION DE VARIABLESSintaxis: <tipo de dato> <nombre de variables> = < valor inicial>Ejemplos:

int valor;int valor1,valor2;int valor = 99;

Librerías de Entrada y salida I/O - La biblioteca que se usa para los flujos cin y cout (streams) es iostreams.h- La Librería stdio.h se utiliza para lectura y escritura de datos que están dentro de funciones:printf(), scanf(), gets() y puts().C Utiliza secuencias de escape para visualizar caracteres que no están representados por símbolos tradicionales como ejemplo:

Cout<<”\n” // salta a una nueva lineaSe recomienda que los programas se documenten, indicando nombre del programa, programador, fecha, lugar, información importante de referencia dentro del mismo. La forma de hacer esto es utilizando // ó /* */ . ejemplo:

// este es un ejemplo de programaó

/* este es un ejemplo de programa */

- La Librería conio.h se utiliza para las instrucciones que afectan los efectos en el monitor, como por ejemplo la sentencia clrscr ( ), gotoxy(a,b), window(a,b,x,y), getch(), getche(), return 0. Es necesario incluir la linea: #include <conio.h>. Donde conio.h es el archivo de cabecera donde se encuentran declarados los prototipos de las funciones que manejan la entrada/salida estándar por la consola.

- La librería math.h la utilizamos cuando realizaremos cálculos con alguna función especial.

3.- FUNCION PRINCIPAL main ( )Todo programa C desde el mas pequeño hasta el mas complejo tiene un programa principal que es con el que comienza la ejecución del programa. Este programa principal es también una función, pero una función que esta por encima de todas las demás, su sintaxis es la siguiente: (la palabra void es opcional). Las llaves { … } constituyen el modo utilizado por el lenguaje C para agrupar varias sentencias de modo que se comporten como una sentencia única (bloque) Todo el cuerpo de la función debe ir dentro de las llaves. main (void) { sentencia_1; sentencia_2; … }

El software que utilizaremos se llama BORLAND C++

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

21

Page 22: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

LOS ICONOS SIGNIFICAN:

ABRIR UN ARCHIVO (DEBEMOS INDICARLE DE QUE UNIDAD DE DISCO EN NUESTRO CASO SERA LA UNIDAD A

LE INDICA AL PROGRAMA QUE GRABE LA INFORMACION EN DISCO

VER LOS ARCHIVO INCLUIDOS PARA ESTE PROYECTO

BUSCA UN TEXO O PALABRA ---REPETIR O REMPLAZAR UNA OPERACION

LA PRIMERA FIGURA ES PARA CORTAR LO SELECCIONADO

LA SEGUNDA FIGURA INDICA COPIAR LO SELECCIONADO Y LA TERCER FIGURA INDICA PEGAR.

INDICA DESHACER LO ULTIMO QUE SE HIZO

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

BARRA DE TITULO

BARRA DE MUNUS

BARRA DE HERRAMIENTAS

BARRA DE NOMBRES

TEMA 7.-PANTALLA DE BORLAND C++

SI AL MOMENTO DE COMPILAR EL PROGRAMA USTED TIENE ERRORES LE APARECERA UN DIALOGO COMO ESTE INDICANDOLE DONDE ESTUVO LA FALLA

22

Page 23: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

NOS SIRVEN PARA CORRER EL PROGRAMA Y VER LOS ERRORES

RECOMENDACIONES AL UTILIZAR EL EDITOR DE C++:

Para hacer un programa NUEVO daremos un clic en FILE (archivo), enseguida clic en NEWPara ABRIR un archivo ya existente damos FILE enseguida OPEN y le indicamos de que unidad de disco queremos sacar el archivo.Para GUARDAR el archivo damos en FILE y enseguida en SAVE AS (guardar como)Para COMPILAR un programa deberemos utilizar en conjunto las teclas ALT F9Para CORRER un programa debemos utiliza en conjunto CONTROL F9Para escribir la diagonal inversa \ utiliza la tecla ALT 92Utiliza // para hacer comentarios y /* comentario */

TEMA 8: UTILIZAR ESTRUCTURAS DE CONTROL

8.1 SENTENCIAS PARA ENTRADA Y SALIDA DE DATOS: 1.- cout: Envía los datos en la pantalla

Utiliza el operador <<, el cual inserta datos en el flujo cout que los visualiza en la pantalla, ejemplo

count<< “esto es un cadena de caracteres”;

2.- cin: Toma datos desde el teclado: Se utiliza con un operador de extracción >>, para extraer valores de flujo almacenados en variables, se utiliza en conjunto con cout, ejemplocout<<”introduzca un numero:” ;cin>> num;EJEMPLOS: CON LAS SENTECIA cout y cin// programa de bienvenida# include <iostream.h> //librería que esta utilizando#include <sodio.h>#include <conio.h>main (){char a ;clrscr () ;cout <<” Escribe tu nombre”;cin>>a ;cout << ” BIENVENIDO A LA PROGRAMACION DE C++”;cout << ”Tu nombre es”<<a ;getch() ;}

3.- printf(): Desplegara datos en pantalla, se usa para la salida, ejemplosintaxis:

printf(<cadena_formato>, <elem>, <elem>…);donde:

cadena formato: Es un cadena de caracteres encerrada entre comillas dobles, este cadena es enviada a la pantalla,

elem: En la sustitución de los elementos se hace de acuerdo a los comandos de formato incluido en la cadena_formato, los cuales empiezan con el símbolo de porciento(%).

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

23

Page 24: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

La siguiente tabla muestra los comandos de formato mas utilizados:

COMANDO SIRVE PARA: %d Entero %u Entero sin signo %id Entero largo %p Valor de apuntador %f Numero de punto flotante %e Numero de punto flotante en valor exponencial %c Carácter %s Cadena de carácter %x Entero en formato hexadecimal % o Entero en formato octal

Ejemplos: printf("ABC");

Otra manera de hacer esto es mediante la proposición printf("%s", "ABC");

El formato %s hace que el argumento "ABC" se imprima en el formato de un string de caracteres. Esto mismo puede realizarse también con la proposición

printf("%c%c%c", 'A', 'B', 'C');

4.- scanf(): Esta función toma la entrada, normalmente del teclado y la almacena en variables previamente declaradas.

Sintaxis: scanf( <cadena_formato>, <elem>, <elem>,….);

Trabaja de maneta similar al printf(), utiliza la mayoria de los comandos mostradote en la tabla anterior, ejemplos

EJEMPLOS CON LA SENTENCIAS printf() y scanf():

#include <iostream..h> #include <stdio.h> /* Estándar Input/Output */ #include <conio.h> main()

{ int x; char c; float y; double z; clrscr () ; printf("\nIngrese un caracter : "); scanf("%c", &c); printf("\nIngrese un número entero : "); scanf("%d", &x); printf("\nIngrese un número con decimales : "); scanf("%f", &y); printf("\nIngrese un número entero doble : "); scanf("%lf", &z); printf("\n\nLos datos que ud. ingreso fueron :\n"); printf("%c %d %e %e\n\n", c, x, y, z); getch();

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

24

Page 25: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

} Código significado

\n Nueva línea\r Retorno de carro\t Tabulación\v Tabulación vertical\a Alerta (pitido sonoro)\b Retroceso de espacio

5.- La función gets(): toma una cadena de caracteres desde el teclado y la almacena en la variable cuyo identificador aparece como argumento en la invocación a gets(), como en:

gets(nombre);6.- La función puts() despliega en la pantalla una cadena de caracteres que se encuentra almacenada en la variable cuyo identificador aparece como argumento en la invocación a la función puts().

EJEMPLO 19: El siguiente programa te pide a través del teclado nombre, dirección, teléfono y fecha de nacimiento y te que imprima los datos.// Programa de registro de datos# include <iostream.h> //librería que esta utilizando#include <stdio.h>#include <conio.h>main (){char nombre[30];char direccion[35];char telefono, FechaNac; clrscr () ;puts ("INTRODUZCA SU NOMBRE ");gets (nombre);puts ("INTRODUZCA SU DIRECCION ");gets (direccion);puts ("INTRODUZCA SU TELEFONO ");gets (telefono);puts ("INTRODUZCA SU FECHA DE NACIMEINTO ");gets (FechaNac);printf("\n\nLos datos que usted ingreso fueron :\n");printf("%s", nombre);printf("%s", direccion);printf("%s", telefono);printf("%s", FechaNac);getch(); }

PRACTICA 19: Realiza un programa que te pida a través del teclado nombre, especialidad, grupo, grado y número de control, que imprima los datos que introdujiste.

8.2. INSTRUCCIONES PARA CONTROL DE DATOS EN PANTALLA

7.- Función clrscr(): que limpia la pantalla y posiciona el cursor en la esquina superior izquierda de la ventana actual.8.- Función gotoxy(a,b): posiciona el cursor en la posición establecida por la columna a y el renglón b.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

25

Page 26: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

9.- Función getch(): toma un carácter desde el teclado y no lo despliega en la pantalla.10.- Función getche(): toma un carácter desde el teclado y lo despliega en la pantalla.11.- Función return 0: Toma la devolución del valor de retorno

EJEMPLO 20: El siguiente programa te pide dos variables por el teclado y que calcule la suma y resta e imprima los resultados.

//programa que suma y resta de 2 números e imprime el resultado.

#include <stdio.h>

#include < iostream.h >#include <conio.h>

main()

{   int N1, N2, suma, resta;cout<<"dame el primer numero";cin>>N1;cout<<"dame el segundo numero";cin>>N2;suma=a+b;resta=a-b;cout<<"la suma de los dos números es:"<<suma;cout<<"la resta de los dos números es:"<<resta;return 0;}

PRACTICA 20 : Realizar un programa que te calcula suma, resta, multiplicación y división de dos variables e imprima los resultados de las operaciones.

EJEMPLO 21: El siguiente programa calcula el promedio de tres números e imprima el promedio.

//programa que calcula el promedio de 3 números e imprime el resultado.#include < iostream.h >#include <conio.h>main(){    float c1, c2, c3, suma, promedio; clrscr();    printf ("\nIngrese el primer numero:");    scanf ("%f",&c1);    printf ("\nIngrese el segundo numero:");    scanf ("%f",&c2);    printf ("\nIngrese el tercer numero:");    scanf ("%f",&c3);    suma=c1+c2+c3;    promedio=suma/3;    printf ("\EL PROMEDIO ES=:%f",promedio); getch(); return 0:}

PRACTICA 21: Realizar programa que calcule el promedio de las asignaturas (materias) que estas llevando en este semestre, imprimir la calificación de las materias y el promedio.

EJEMPLO 22: Un vendedor recibe un sueldo base mas un 10% extra por comisión de sus ventas, el vendedor desea saber cuanto dinero obtendrá por concepto de comisiones por las tres ventas

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

26

Page 27: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones. #include <stdio.h>#include < iostream.h >#include <conio.h>main(){    float sb,v1,v2,v3,com,tot_ven,tot_pag; clrscr();    sb=5000;    printf ("\nIngrese la venta 1:");    scanf ("%f",& v1);    printf ("\nIngrese la venta 2:");    scanf ("%f",& v2);    printf ("\nIngrese la venta 3");    scanf ("%f",& v3);    tot_ven=v1+v2+v3;    com=tot_ven*.10;    tot_pag=sb+com;    printf ("\nTotal de pago:%f",tot_pag);    printf ("\nComision:%f",com); getch(); return 0: }

PRACTICA 22: Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deberá pagar finalmente por su compra.

PREACTICA 23: Un alumno desea saber cual será su calificación final en la submodulo de PRINCIPIOS DE PROGRAMACION. Dicha calificación se compone de los siguientes porcentajes:

30 % del examen teórico.40% calificación de las practicas. 10% asistencia.10% tareas10% participaciones

PRACTICA 24: Realizar un programa que calcule el area de un circulo.

UNIDAD III: SENTENCIAS DE CONTROL Y ARREGLOS

TEMA 9: SENTENCIAS DE CONTROL SELECTIVAS:

9.1 SENTENCIA if - else

Esta sentencia permite permite elegir entre dos opciones de ejecución, y su sintaxis es :

if( condición ) [bloque_1] [else] [bloque_2]

donde: bloque_1 y bloque_2 pueden estar formados por uno ó más instrucciones.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

27

Page 28: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

else es opcional, y en caso de no existir, bloque_2 tampoco existirá.

Al ejecutarse esta estructura, primero se evalúa la condición. En caso de que, de esta evaluación, resulte un valor de verdad verdadero, se ejecutarán las instrucciones que forman el bloque_1; en caso contrario (si el valor de verdad es falso), se ejecutarán las instrucciones del bloque_2.

El diagrama de flujo para la estructura if-else se presenta en la siguiente figura:.

Esta estructura puede anidarse para elegir entre un grupo de más de dos opciones, tomando la siguiente forma:

if(condición_1) bloque_1; else if(condición_2) bloque_2; else if(condición_3) bloque_3; ............ else bloque_N;

EJERCICIO 25: El siguiente diagrama, Pseudocódigo y programa pide la edad de una persona y solo imprime si es mayores de edad es menor.

SI

NO

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

28

Edad

INICIO

Edad >=18

“Es menor de Edad”

“Es mayor de Edad”

INICIO Variables Calificación Escribir “Anota una calificación:” Leer Calificación Si Calificación>=6 Imprimir “Aprobado” Fin siFIN

Page 29: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

//programa te pide la edad e imprime si es mayor o menor de edad.#include <iostream.h> #include <conio.h> #include <ctdio.h> main() { int edad; clrscr(); cout << "INTRODUZCA LA EDAD: "; cin>>edad; if(edad >= 18) {

cout << "ERES MAYOR DE EDAD."; }else {

cout << "ERES MENOR DE EDAD."; }getch();}

PRACTICA 25: Realizar un diagrama de flujo y programa que te pida la calificación a través del teclado e imprima si la calificación es aprobatoria o reprobatoria.

EJERCICIO 26: El siguiente diagrama de flujo, Pseudocódigo y programa te pide 3 números y determina cual es mayor de ellos.

Pseudocódigo Inicio Variables A, B Escribir “Dame dos números:” Leer A,B, Si A > B entonces Imprimir “El mayor es”, A Si no Imprimir “El mayor es”, B Fin siFinDIAGRAMA DE FLUJO:

SI

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

29

FIN

A, B

INICIO

A >B

“El mayor es”, A

Page 30: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

NO

/*Programa Mayor de 3 numeros*//#include <iostream.h>#include <conio.h>#include <math.h>#include <stdio.h>main(){int a,b,c;clrscr ();cout<<"teclea el primer numero:"; cin>>a;cout<<"teclea el segundo numero:"; cin>>b;cout<<"teclea el tercer numero:"; cin>>c;if(a>b){ if(a>c){ cout<<"\n el mayor es:"<<a; } else { cout<<"\n el mayor es:"<<c; }}else { if(c>b){ cout<<"\n el mayor es:"<<c; } else { cout<<"\n el mayor es:"<<b; }}getch();return 0;}PRACTICA 26: Realizar un diagrama de flujo y programa que determine que tipo de rectángulo es (ESCALENO, ISOSCELES O EQUILATERO) pidiendo las mediadas de los tres lados.9.2. Sentencia switch(): Esta instrucción es útil cuando se tiene que elegir entre más de dos opciones, como es el caso de manejo de menús. SINTAXIS: switch(expresión_entera) { case Const_1 : Bloque_1 ; break ; case Const_2 : Bloque_2 ; break ; ............................. ............................. ............................. case Const_N : Bloque_N ; break ; default : Bloque_X ; }

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

30

FIN

“El mayor es”, B

Page 31: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

BREAK: Termina la cláusula CASE o permite salir de un bloque.DEFAULT: Se ejecutara si no coinciden ninguno de los casos.Esta estructura puede representarse con el diagrama mostrado en la siguiente figura.

EJERCICIO 27: El siguiente diagrama de flujo y programa imprime un menú con tres opciones: 1.- Suma, 2.- Resta y 3.-Fin, al seleccionar suma o resta realizara las operación con dos variables e imprimirá el resultado, al seleccionar la opción 3 saldrá del diagrama.

opc=2 opc= 1

opc = 3 ESTE DIAGRAMA DE FLUJO TAMBIEN SE PUEDE DESARROLLAR DE LA SIGUIENTE MANERA

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

31

INICIO

MENÚ: 1.- SUMA 2.- RESTA 3.- FIN SELECCIONAR LA OPCION

opca, b

suma

“fin del programa”

a, b

resta

FIN

opc

suma= a+bresta= a-b

INICIO

MENÚ: 1.- SUMA 2.- RESTA 3.- FIN SELECCIONAR LA OPCION

1

Page 32: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

SI NO

SI NO

SI NO

//suma y resta con la sentencia case*//#include<iostream.h>#include<conio.h>#include<math.h>#include<ctype.h>#include<iomanip.h>main(){int a,b,suma,resta, opc;

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

32

opc

a, b

opc=1

resta= a-b suma

suma= a+b

“FIN DEL PROGRAMA

opc=2

resta

opc=3

FIN

1

Page 33: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

clrscr();gotoxy(15,7); cout<<"menu principal";gotoxy(20,9); cout<<"1.-suma";gotoxy(20,11); cout<<"2.-resta";gotoxy(20,13); cout<<"5.-fin";gotoxy(15,15); cout<<"escoja la opcion..";cin>>opc;switch(opc){

case 1: clrscr(); cout<<"Teclea el Primer Numero:";cin>>a; cout<<"Teclea el Segundo Numero:";cin>>b; suma=a+b; cout<<"\n El resultado de la suma es="<<suma; break;case 2: clrscr(); cout<<"Teclea el Primer Numero:";cin>>a; cout<<"Teclea el Segundo Numero:";cin>>b; resta=a-b; cout<<"\n El resultado de la resta es="<<resta; break;case 3: clrscr(); cout<<"Fin del programa"; break;default: clrscr(); cout<<"No existe la opcion prueba de nuevo";}getch();return 0;}

PRÁCTICA 27: Realizar un diagrama de flujo y programa que realice una de las 5 operaciones especificadas en el MENU: 1.-Suma, 2.-Resta, 3.-Multiplicación, 4.-División, 5.- Exponenciación, 6. -Salir, e imprima el resultado.

EJERCICIO 28: El siguiente diagrama de flujo y Pseudocódigo calcula el AREA Y PERIMETRO de un TRIANGULO Y UN CUADRADO.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

33

INICIO

1

DIAGRAMA DE FLUJO

Page 34: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

NO

SI

SI NO

SI NO

SI NO

SI

NO

NO SI

NOPSEUDOCODIGOINICIOVariables OPC, B, H, PERIMETROR, PERIMETROC, AREAR, AREAC, L, REscribir “MENÚ:

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

34

MENÚ: 1.- RECTANGUO 2.- CUADRADO 3.- FIN SELECCIONAR LA OPCION

OPC

OPC=1

PERIMETROR

, AREAR

PERIMETROR= 2(B)+2(H)AREAR= B*H

“FIN DEL PROGRAMA

OPC=2

OPC=3

FIN

2

OPC<1 OPC>5

ERROR INTENTA DE NUEVO

1

B,H

R= S

¿Deseas continuar S/N?, R

1

L

PERIMETROC= L*4AREAC= L*L

PERIMETROC

, AREAC

R= S

¿Deseas continuar S/N?, R

1

2

3

3

Page 35: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

1.- RECTANGUO 2.- CUADRADO 3.- FIN SELECCIONAR LA OPCION”Leer OPCMientras OPC< OR OPC>5 Seleccionar CASO Caso opc =1 Escribir “Teclea la base y la altura:” Leer B, H PERIMETROR= 2(B)+2(H) AREAR= B*H Imprimir PERIMETROR, AREAR Escribir ¿Deseas continuar S/N? Leer R Si R= S entonces Regresa a Menú Si no Imprimir “FIN DEL PROGRAMA Fin si Caso opc =2 Escribir “Teclea el lado del cuadrado:” Leer L PERIMETROC= L*4 AREAC= L*L Imprimir PERIMETROC, AREAC Escribir ¿Deseas continuar S/N? Leer R Si R= S entonces Regresa a Menú Si no Imprimir “FIN DEL PROGRAMA” Fin si Caso opc =3 Imprimir “FIN DEL PROGRAMA:” En otro caso Imprimir “ERROR INTENTA DE NUEVO Fin seleccionar Fin mientras

FIN

PRACTICA 28: Realiza el programa del diagrama de flujo y Pseudocódigo anterior que calcula el AREA Y PERIMETRO de un TRIANGULO Y UN CUADRADO.

PRACTICA 29: Realizar un diagrama de flujo y un Pseudocódigo que calcula el AREA Y PERIMETRO de un TRIANGULO, TRAPECIO Y ROMBO, la entrada será a través del teclado y la salida por impresora.

TEMA 10.- SENTENCIAS DE CONTRO REPETITIVAS:

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

35

Page 36: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

10.1 SENTENCIA WHILE:

Con esta instrucción se maneja una estructura en la que, de entrada, se evalúa una condición. En caso de que el resultado de tal evaluación sea un valor diferente de cero , se ejecuta un bloque de instrucciones, en el cual debe existir una instrucción que modifique la condición, ya que de lo contrario ejecutará un ciclo infinito ( loop ). Si el resultado de la evaluación es un valor igual a cero , el bloque de instrucciones no se ejecuta y finaliza la ejecución de la instrucción.La sintaxis de la instrucción while es la siguiente:

while(condición) bloque;

EJERCICIO 30 : El siguiente diagrama de flujo y programa es con el ciclo MIENTRAS, imprime los números del 1 al 10, los datos de salida van hacer por la pantalla.

NO

SI

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

36

INICIO

N =1

N<=10

N

N = N+1

FIN

Page 37: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

//Programa que imprime los números del 1 al 10 utilizando la sentencia while.#include<iostream.h>#include<conio.h>#include<stdio.h>main(){int n;n=0;while(n<10){n=n++;cout<<n;cout<<"\n";}getch();return 0; }

PRACTICA 30: Realizar un diagrama de flujo y programa que imprima 10 números pero de inicio y fin se los des a través del teclado utilizando la sentencia while.

10.2- SENTENCIA do - while

La instrucción do-while tiene un comportamiento similar a while, sólo que en este caso primero se ejecuta el bloque de instrucciones y después se evalúa la condición. Con esto se asegura que el bloque se ejecutará al menos una vez. Esta es la sintaxis de la instrucción do-while :

do bloque; while(condición);

La instrucción do-while puede representarse con el diagrama mostrado en la siguiente figura

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

37

Page 38: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

EJERCICIO 31: El siguiente diagrama de flujo y programa que calcule la suma consecutiva del 1 al 10

NO

SI

// Programa que calcule la suma consecutiva del 1 al 10 #include<iostream.h>#include<conio.h>#include<stdio.h>main(){int suma,n,num;suma=0;n=1;do{suma=suma+n;n=n++;}while(n<=10);cout<<"\n***La suma consecutiva de los números del 1 al 10 es:"<<suma;getch();return 0;}

PRACTICA 31: Realizar un diagrama de flujo y programa que calcule la suma consecutiva que empiece y finalice lo números dados a través del teclado, utilice la sentencia do-while.

PRACTICA 32: Realizar un diagrama de flujo y programa utilizando la sentencia do-while que imprima 10 números pero de inicio y fin se los des a través del teclado

PRACTICA 33: Realizar un diagrama de flujo y programa utilizando la sentencia while o do- while que pida 10 enteros positivos e imprima en una lista los números pares y en otra los números impares.

10.3.- La SENTECIA for:Entre las instrucciones de iteración, for es la más versátil, ya que, entre otras

características, permite la declaración de variables dentro de su estructura.

La sintaxis de la instrucción for es la siguiente: for(inicialización ; condición ; control) bloque; donde:

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

38

N =1SUMA=0

N<=10 FIN

INICIO

Suma = Suma + n

n=n+

Suma

Page 39: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

inicialización: Es un bloque de instrucciones que puede incluir la declaración de las variables involucradas y la asignación de valores iniciales.Condición: Es una instrucción que puede evaluarse de tal forma que se obtenga como resultado un valor de verdad ( falso ó verdadero ). Mientras, se cumpla la condición, se ejecutará el bloque de instrucciones.Control: Es un bloque de instrucciones separadas por comas y que controlan la variación de los valores de las variables utilizadas.

Los bloques de inicialización, condición y control no son obligatorios, pero sí lo son los tres puntos y coma que los separan; de tal suerte que la forma mínima de una instrucción for quedaría así:

for(;;) // ciclo infinito ; // no realiza tarea alguna

El diagrama para la instrucción for se muestra en la siguiente figura

EJERCICIO 34: El siguiente diagrama de flujo y programa calcula e imprime el factorial de un número, la entrada es a través del teclado y la salida será por pantalla.

SI

NO

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

39

INICIO

Fact = 1

Num

X = 1

X>num

X= X+1

FACT = FACT * X

Fact FIN

Page 40: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

//Programa que te calcula el factorial de un número#include<conio.h>#include<stdio.h>#include<iostream.h>main(){int numero,fact,x;cout<<"¿Anota un numero al que se le va a calcular el Factorial? ";cin>>numero;clrscr();fact=1;for(x=1;x<=numero;x++) {fact=fact*x;} cout<<"El factorial de:"<<numero<< "Es igual a:"<<fact;getch();}

PRÁCTICA 34: Realizar un diagrama de flujo y Programa que imprima cualquier tabla de multiplicar con la sentencia for.

PRÁCTICA 35: Realizar un diagrama de flujo y Programa que imprima las tablas de multiplicar del 1 al 10, utilizando la sentencia for.

TEMA 11.- DECLARACION E INCIALIZACION DE ARREGLOS: Arreglos Características

A) Un arreglo es una variable que puede almacenar uno o más valores del mismo tipo.B) Para declarar un arreglo debe especificar el tipo, nombre y numero de valores que

almacenara el arreglo. C) Lo s valores dentro del arreglo se les denomina elementos del arregloD) El primer elemento del arreglo se almacena en el apuntador 0 del arreglo.E) Los programas a menudo utilizan variables indexadas para tener un acceso a los

elementos de un arreglo.F) Cuando una función recibe un arreglo como parámetro este deberá especificar su tipo

y nombre, más no el tamaño del arreglo.G) Cuando un programa pasa un arreglo para hacer una función el parámetro que se le

indique ala función será el número de elementos que contiene el arreglo. 11.1. CONCEPTO DE ARRAYSUn arreglo ( Lista o Tabla) almacena muchos elementos del mismo tipo, normalmente son de tipo “chart”,” int” o “float” y un numero único. Además deberá especificar el número de valores que almacenara el arreglo. Los arreglos consisten de un conjunto de elementos del mismo tipo almacenados en localidades contiguas de memoria. Los elementos de un arreglo comparten el mismo nombre, pudiendo distinguirse un elemento de otro a través de un subíndice.

En esta unidad, describiremos la declaración de los arreglos, el manejo de los elementos de un arreglo dado, así como lo relacionado con los arreglos que se utilizan para formar las cadenas de caracteres. 11.2. Declaración de arreglos

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

40

Page 41: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

Los elementos de los arreglos son variables de algún tipo dado, que al compartir el mismo nombre pueden ser tratadas como una sola entidad. La sintaxis para la declaración de un arreglo es la siguiente:

tipo identificador [ <expresión_constante> ] ;donde: tipo es el tipo de los elementos que componen el arreglo identificador es el nombre del arreglo expresión_constante es una expresión que al reducirse debe dar como resultado un valor entero positivo.

Muestra de la declaración de arreglos.

DECLARACION RESULTADO char nombre[31]; Declara un arreglo unidimensional llamado nombre compuesto de 31

elementos de tipo carácter. int valor[20]; Declara un arreglo unidimensional llamado valor, compuesto por 20 elementos de tipo entero con signo. unsigned long abc[x] Declara un arreglo unidimensional llamado abc, compuesto por x elementos de tipo entero largo sin signo. En este caso x debe ser una constante entera. double matriz[5][7]; Declara un arreglo bidimensional llamado matriz, compuesto por 35 elementos de tipo entero. int trid[3][5][8]; Declara un arreglo tridimensional llamado trid, compuesto por 120 elementos de tipo entero.

11.3. ARREBLOS UNIDIMENSIONALES: DEFINICION DE ARREGLO UNIDIMENCIONAL A este arreglo se le denomina vector ya que es una sola dimensión ya sea por columna o fila.DECLARACIÓN DEL ARREGLO UNIDIMENCIONALPor ejemplo, supongamos la siguiente declaración: int vector[5];

En este caso, se declara un arreglo de 5 variables de tipo entero agrupadas con el nombre vector, las cuales pueden representarse con la Siguiente figura

Representación de un arregloComo puede observarse en la figura anterior, el primer subíndice tiene valor cero y el último tiene valor cuatro. Lo anterior se debe a que, en C++, el primer subíndice siempre vale cero y el último tiene un valor menor en uno que el valor de la dimensión del arreglo.Una vez declarado el arreglo, se pueden asignar valores a cada uno de sus elementos, como se muestra enseguida:

vector[0] = 100 ; vector[1] = 101 ;

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

41

Page 42: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

vector[2] = 102 ; vector[3] = 103 ; vector[4] = 104 ;

EJERCICIO 36: El siguiente diagrama de flujo, Pseudocódigo y programa imprimirá 10 números dados a través del teclado, utilizando un arreglo unidimensional.

DIAGRMA DE FLUJO PSEUDOCODIGO

SI

NO

/*Programa que imprimirá 10 números dados a través del teclado, utilizando un arreglo unidimensional*/#include <iostream.h>#include <conio.h>#include <math.h>main(){int lista [10];int x;suma =0;for(x=1;x<10;x++){ cout<<"Teclea un numero:"<<x<<"="; cin>>lista [x];}for(x=0;x<8;x++){ cout <<lista[x]; cin>>lista[x]; cout<<"\n";}getch();return 0;}

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

42

INICIO

N [10]

X = 1

X>10

X= X+1

FIN

N [X]

N [X]

INICIO Variables N, X Arreglo N [10]

Para hasta que x > 10 Escribir “Anota un numero: Leer N [X] Imprimir N [X]

x = x+1 Fin para

FIN

Page 43: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

PRÁCTICA 36: Realizar un diagrama de flujo y programa que calcule el promedio de calificaciones de las asignaturas (materias) que llevas en este semestre, utiliza un arreglo unidimensional.

TEMA 11.4.- ARREGLOS BIDIMENSIONALES:

DEFINICION:

Es un arreglo con 2 dimensiones.

DECLARACION DE UN AREGLO BIDIMENSIONAL:

Cuando se manejan arreglos de varias dimensiones, debe recordarse que el subíndice de cada una de ellas inicia con un valor 0, como se observa en el siguiente listado.

#include <iostream.h> #include <conio.h> void main(void) { int matriz[3][4]; clrscr(); for(int x=0 ; x < 3 x++) { for(int y=0 y< 4 ; y++) { matriz[x][y]=x+y+1 ; gotoxy(y+1,x+1); cout matriz[x][y]; } } }

Listado Arreglo con dos dimensiones. El resultado de ejecutar el programa del listado es el siguiente:

1234 2345 3456El arreglo matriz puede representarse con la siguente figura .

Representación del arreglo matriz:

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

43

Page 44: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

Obsérvese que el primer subíndice varía de 0 a 2 y el segundo varía de 0 a 3. En los párrafos anteriores, se ha mostrado la forma de asignar valores a cada uno de los elementos de un arreglo una vez que se ha escrito su declaración. Aquí veremos la manera de asignarle valores iniciales a los elementos, en la misma instrucción que contiene la declaración del arreglo. Por ejemplo, para declarar un arreglo de 10 enteros y al mismo tiempo asignarle a cada uno de sus elementos los valores 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, puede escribirse: int digitos[] = { 0,1,2,3,4,5,6,7,8,9 }; En este caso, aunque no se escribe el tamaño de la dimensión del arreglo digitos, tiene el mismo efecto que escribir: int digitos[10]; digitos[0] = 0 ; digitos[1] = 1 ; digitos[2] = 2 ; digitos[3] = 3 ; digitos[4] = 4 ; digitos[5] = 5 ; digitos[6] = 6 ; digitos[7] = 7 ; digitos[8] = 8 ; digitos[9] = 9 ;

Como puede verse, la primera forma es mucho más compacta, aunque, como en muchas de las instrucciones de C++, la brevedad del código sacrifica la claridad.

EJEMPLO 37:

El siguiente diagrama de flujo, Pseudocódigo y programa imprime los numeras del 1 al 12 en una matriz de 3 X 4, utilizando un arreglo BIDIMENSIONAL.

DIAGRAMA DE FLUJO

.

SI

NO

SI

NO

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

44

INICIO

X = 1

X>3

X=X+1

FIN

Y = 1

Y >4

Y=Y +1

N [3][4] REN=10 COL= 30

REN=REN +5

PSEUDOCODIGO

INICIO Variables N, REN, COL Arreglo N [3][4]

REN= 10COL= 30Para hasta que x > 3 REN= REN +5 Para hasta que x > 4

Imprimir N[X][Y] COL = COL+10 Fin paraFin para

FIN

Page 45: Principios de Programacion 2010

SUBMODULO I: APLICAR LOS PRINCIPIOS DE PROGRAMACION EN LA SOLUCION DE PROBLEMAS

//ARREGLO BIDIMENSIONAL#include <iostream.h>#include <conio.h>#include <math.h>main(){int ren,col,j,i;int num[3][4];clrscr(); for(j=0;j<3;j++) { for(i=0;i<4;i++){ cout<<"Teclea el numero del renglon..."<<i<<"...columna..."<<j<<"..."; cin>>num[i][j]; } } clrscr( ); ren=10;col=30; gotoxy(20,3);cout<<"Tu tabla es la siguiente:"; for(j=0;j<3;j++){ for(i=0;i<4;i++){ gotoxy(col,ren); cout<<num[i][j]; col=col+5; } col=30; ren=ren+3; }getch();return 0;}

PRACTICA 37: Realizar un diagrama de flujo y programa que imprime 25 numeras que das a través del teclado utiliza un arreglo BIDIMENSIONAL DE 5 X 5.

PRACTICA 38: Realizar un diagrama de flujo y programa que te pida e imprima los nombres de las materias y maestros, utilizando un arreglo BIDIMENSIONAL.

I.S.C. LORENA SANTANA MARTINEZ C.B.T.i.s No.1 L.S.C. MAGDALENA ESCARCIA LOZANO 4 SEMESTRE L.S.C. SELMA ALBUQUERQUE WEXEL FEB-JUL´2010 L.S.C. MA EUGENIA ACUÑA REYES

45

N[X][Y]

COL=COL +10