Unidad Educativa
"MARIO COBO BARONA"
Estructuras básicas en programación estructurada:
Existen tres tipos de estructuras básica que son:
-
Estructuras secuénciales: cada acción sigue a otra acción secuencialmente. La salida de una acción es la entrada de otra.
-
Estructuras selectivas: en estas estructuras se evalúan las condiciones y en función del resultado de las mismas se realizan unas acciones u otras. Se utilizan expresiones lógicas.
-
Estructuras repetitivas: son secuencias de instrucciones que se repiten un número determinado de veces.
Ejemplos resueltos de estructuras secuenciales
Ejercicio No: 1
Realizar el siguiente programa:
Juan Carlos es jefe de bodega en una fábrica de pañales desechables y sabe que la producción diaria es de 744 pañales y que en cada caja donde se empacan para la venta caben 12 pañales. ¿Cuántas cajas debe conseguir Juan Carlos para empacar los pañales fabricados en una semana (5 días)?
ANÁLISIS MATEMÁTICO
Bodeguero fábrica de pañales
asigno variables a los valores numéricos:
744 ==> pd (producción diaria)
12 ==> ucaj (en una caja caben 12 pañales)
ccajas ==> ? (Cuantas cajas de conseguir)
(fabricación semanal de pañales) fsem = 744 * 5 fsem = 3720
(Cantidad de cajas necesarias en una semana) ccjsem = 3720/12 ccjsem = 310
|
Remplazando con variables las formulas tenemos:
fsem = pd * 5
ccjsem = fsem/ucaj
PSEUDOCODIGO
1. Inicio
2. Leer producción diaria, pd
3. Leer unidades por caja, ucaj
4. fsem = pd * 5
5. ccjsem = fsem / ucaj
6. Escribir cantidad de cajas semanales, ccjsem
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Segunda forma utilizando constantes:
ANÁLISIS MATEMÁTICO
Bodeguero fábrica de pañales
744 ==> pd (producción diaria)
12 (en una caja caben 12 pañales
utilizamos como constante).
ccajas ==> ? (Cuantas cajas de conseguir)
(fabricación semanal de pañales) fsem = 744 * 5 fsem = 3720
(Cantidad de cajas necesarias en una semana) ccjsem = 3720/12 ccjsem = 310
|
Remplazando con variables las formulas tenemos:
fsem = pd * 5
ccjsem = fsem/ucaj
PSEUDOCODIGO
1. Inicio
2. Leer producción diaria, pd
3. Leer unidades por caja, ucaj
4. fsem = pd * 5
5. ccjsem = fsem / 12
6. Escribir cantidad de cajas semanales, ccjsem
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Ejercicio No: 2
Realizar un programa que permita ingresar dos calificaciones (Quimestre1,Quimestre2), sumar y obtener el promedio.
ANÁLISIS MATEMÁTICO
matemáticamente:
5.8 + 7.3 = 13.1
13.1/2 = 6.5
remplazando con variables:
cq1 => calificación primer quimestre
cq2 => calificación segundo quimestre
sum = cq1 + cq2
prom = suma/2
sum prom
También podemos obtener directamente el promedio si asi estubiera planteado el problema: Obtener el promedio de dos calificaciones: prom = (cq1 + cq2)/2 |
PSEUDOCODIGO
1. Inicio
2. Leer Calificación 1er. quim, cq1
3. Leer Calificación 1er. quim, cq2
4. sum = cq1 + cq2
5. prom = sum/2
6. Escribir, La suma es, sum
7. Escribir, El Promedio es, prom
8. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
A.- Ejercicios propuestos de estructuras secuenciales
|
Ejemplos resueltos de estructuras selectivas
Ejercicio No: 1
Desarrolle un programa que permita leer dos valores distintos, determinar cual de los dos valores es el mayor y escribirlo.
ANALISIS MATEMATICO
8 => A
5 => B
Si 8 > 5 ==> Mayor es: 8 (A)
caso contrario
Mayor será el otro número (B)
5 => A
8 => B
Si 5 > 8 ==> Mayor es (A)
caso contrario
Mayor es: 8 (B)
PSEUDOCODIGO
1. Inicio
2. Solicitar la introducción de dos
valores distintos
3. Leer los dos valores A,B
4. Si A>B Entonces
Escribir A, “Es el mayor”
5. De lo contrario: Escribir B, “Es
el mayor”
6. Fin_Si
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Ejercicio No: 2
Desarrolle un programa que permita leer o ingresar un valor numérico y verificar si es positivo, negativo.
ANALISIS MATEMATICO
Recta númerica
Negativos - Positivos
Asignamos una variable al numero.
A => 8
Comparamos con el valor cero(0)
Si 5>0 => Es Positivo: 8 (A)
caso contrario,
Es negativo (B)
Con un numero negativo:
A => - 6
Si - 6 > 0 => Es Positivo: (A)
caso contarrio
Es negativo: -6 (A)
También puede verificar con el otro operador "<" (menor que)
PSEUDOCODIGO
1. Inicio
2. Leer un valor numerico A
3. Si A > 0 Entonces
Escribir "Positivo", A
5. No
Escribir, "Negativo", B
6. Fin_Si
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Ejercicio No: 2.1.
Desarrolle un programa que permita leer o ingresar un valor numérico y verificar si es positivo, negativo o neutro (0)
El mismo ejercicio anterior pero mejor estructurado, tenemos una decisión doble o multiple
ANALISIS MATEMATICO
Recta númerica
Negativos (cero) Positivos
Asignamos una variable al numero.
A => 6
Comparamos con el valor cero(0)
Si 6 = 0 => Es NEUTRO: 0 (A)
caso contrario
Si 6 > 0 => Es POSITIVO: 6(A)
caso contrario
Si -6 < 0 => Es NEGATIVO: -6(A)
De lo que podemos observar se realizan tres preguntas (condiciones), pero podemos utilizar solo dos preguntas, ya que la tercera respuesta se visualizaría automaticamente por el caso contrario asi:
A => 6
Comparamos con el valor cero(0)
Si 6 = 0 => Es NEUTRO: (A)
caso contrario
Si 6 > 0 => Es POSITIVO: (A)
caso contrario
Es NEGATIVO: (A)
PSEUDOCODIGO
1. Inicio
2. Leer un valor numerico A
3. Si A > 0 Entonces
Escribir "Positivo", A
5. No
Escribir, "Negativo", B
6. Fin_Si
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
B.- Ejercicios propuestos de estructuras selectivas
|
Ejemplos resueltos de estructuras repetitivas
CICLO WHILE
Ejercicio No: 1
Realizar un programa para visualizar los 10 primeros números pares
ANALISIS MATEMATICO
Cuales son los 10 primeros números pares?.
La serie de la izquierda son los numeros pares.
La serie de la derecha es el contador del numero de elemntos que se visualiza.
Valor final de la serie de elemntos a visualizar 10
A -> es la variable para los numeros pares.
C -> es la variable para el contador del ciclo.
A + 2 es el incremento del contador de los pares
C + 1 es el incremento del contador del ciclo
A=2
A-> A+2
2
4
6
8
10
12
14
16
18
20
PSEUDOCODIGO
1. Inicio
2. Valores inicales
A = 1; C=1
2. MQ C <= 10
3. Escribir A
4. contador pares
A = A+2
5. contador ciclo
c = C+ 1
6. Fin_ciclo
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
C=1
C -> C +1
1
2
3
4
5
6
7
8
9
10
Ejercicio No: 2 (Ciclo While.- SEGUNDA FORMA)
Realizar un programa para visualizar los 10 primeros números pares
ANALISIS MATEMATICO
Cuales son los 10 primeros números pares?.
Solo cambiamos el valor inicial del contador del ciclo C= 0
Condidción C<10
Valor final de la serie de elemntos a visualizar 10
A -> es la variable para los numeros pares.
C -> es la variable para el contador del ciclo.
A + 2 es el incremento del contador de los pares
C + 1 es el incremento del contador del ciclo.
A =2
A-> A+2
2
4
6
8
10
12
14
16
18
20
C=0
C -> C +1
0
1
2
3
4
5
6
7
8
9
10
PSEUDOCODIGO
1. Inicio
2. Valores inicales
A = 2; C=0
2. MQ C < 10
3. Escribir A
4. contador pares
A = A+2
5. contador ciclo
c = C+ 1
6. Fin_ciclo
7. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Ejercicio No: 3 (Ciclo While)
Realizar un programa para visualizar los N primeros números impares. (N =varios, grupos)
ANALISIS MATEMATICO
Cuales son los N primeros números impares?.
Valor final de la serie de elemntos a visualizar N
Condidción C< N
A -> es la variable para los numeros impares.
C -> es la variable para el contador del ciclo.
A + 2 es el incremento del contador de los pares
C + 1 es el incremento del contador del ciclo.
A =1
A-> A+2
1
3
5
7
9
11
13
:
N
C=1
C -> C +1
1
2
3
4
5
6
7
:
N
PSEUDOCODIGO
1. Inicio
2. Leer el límite, N
3. Valores inicales
A = 1; C=1
4. MQ C <= N
5. Escribir A
6. contador pares
A = A+2
7. contador ciclo
c = C+ 1
8. Fin_ciclo
9. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Ejercicio No: 4 (Ciclo While)
Ingresando N calificaciones de un estudiante obtener su promedio.
ANALISIS MATEMATICO
Cuales son los N Calificaciones?.
N -> 4 (límite de calificaciones)
Notas -> 10
3
6
8
Suma => 27
remplazando variables
Suma = Suma + Notas
Prom => 27/4
Prom => 7.75
remplazando con var.
Prom= Suma/N
DIAGRAMA DE FLUJO
PSEUDOCODIGO
1. Inicio
2. Leer Limite de calificaciones, N
3. Valores inicales
C=1
2. MQ C <= N
3. Leer, Calificaciones, Notas
5. Calculos
Suma = Suma + Notas
6. Fin_ciclo
7. Calculos
Prom = Suma / N
8. Fin
PRUEBA DE ESCRITORIO
C=1
C= C+1
1
2
3
4
CICLO DO - WHILE
Ejercicio No: 1
Ingresando N calificaciones de un estudiante obtener su promedio.
ANALISIS MATEMATICO
Cuales son los N Calificaciones?.
N -> 4 (límite de calificaciones)
Notas -> 10
3
6
8
Suma => 27
remplazando variables
Suma = Suma + Notas
Prom => 27/4
Prom => 7.75
remplazando con var.
Prom= Suma/N
PSEUDOCODIGO
1. Inicio
2. Leer Limite de calificaciones, N
3. Valores inicales
C=1
2. Regresa el ciclo
3. Leer, Calificaciones, Notas
5. Calculos
Suma = Suma + Notas
6. Repetir mientras c<= N
7. Calculos
Prom = Suma / N
8. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
CICLO FOR - TO - DO
Ejercicio No: 1
Ingresando N calificaciones de un estudiante obtener su promedio.
ANALISIS MATEMATICO
Cuales son los N Calificaciones?.
N -> 4 (límite de calificaciones)
Notas -> 10
3
6
8
Suma => 27
remplazando variables
Suma = Suma + Notas
Prom => 27/4
Prom => 7.75
remplazando con var.
Prom= Suma/N
PSEUDOCODIGO
1. Inicio
2. Leer Limite de calificaciones, N
3. Ciclo For C= 1,N,C++
3. Leer, Calificaciones, Notas
5. Calculos
Suma = Suma + Notas
6.Cierra ciclo for
7. Calculos
Prom = Suma / N
8. Fin
DIAGRAMA DE FLUJO
PRUEBA DE ESCRITORIO
Series o patrones conocidos de números
Resolver las siguientes series. (realice el análisis, diagrama de flujo y prueba de escritorio en el cuaderno de trabajo)
A veces los números forman patrones interesantes. Aquí mostramos los más comunes y cómo se forman.
Sucesiones aritméticas
Una sucesión aritmética se construye sumando un valor fijo cada vez.
Ejemplos:
1. Visualizar la siguiente serie
1, 4, 7, 10, 13, 16, 19, 22, 25, ... |
Esta sucesión tiene una diferencia de 3 entre cada dos números consecutivos.
El patrón se sigue sumando 3 al último número cada vez.
2. Visualizar la siguiente serie
3, 8, 13, 18, 23, 28, 33, 38, ... |
Esta sucesión tiene una diferencia de 5 entre cada dos números consecutivos.
El patrón se sigue sumando 3 al último número cada vez.
Sucesiones geométricas
Una sucesión geométrica se construye multiplicando un valor fijo cada vez.
Ejemplos:
3. Visualizar la siguiente serie
2, 4, 8, 16, 32, 64, 128, 256, ... |
Esta sucesión tiene un factor 2 entre cada dos números consecutivos.
El patrón se sigue multiplicando el último número por 2 cada vez.
4. Visualizar la siguiente serie
3, 9, 27, 81, 243, 729, 2187, ... |
Esta sucesión tiene un factor 3 entre cada dos números consecutivos.
El patrón se sigue multiplicando el último número por 3 cada vez.
Sucesiones especiales
Números triangulares
5. Visualizar la siguiente serie
1, 3, 6, 10, 15, 21, 28, 36, 45, ... |
Esta sucesión se genera con un patrón de puntos que forma un triángulo.
Añadiendo otra fila de puntos y contando el total se encuentra el siguiente número de la sucesión.
Números cuadrados
6. Visualizar la siguiente serie:
1, 4, 9, 16, 25, 36, 49, 64, 81, ... |
El siguiente número se hace elevando su posición al cuadrado.
El segundo número es 2 al cuadrado (22 o 2×2)
El séptimo número es 7 al cuadrado (72 o 7×7) etc.
Números cúbicos
7. Visualice la siguiente serie.
1, 8, 27, 64, 125, 216, 343, 512, 729, ... |
El siguiente número se calcula elevando su posición al cubo.
El segundo número es 2 al cubo (23 o 2×2×2)
El séptimo número es 7 al cubo (73 o 7×7×7) etc.
Números de Fibonacci
8. Visualice la siguiente serie.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, ... |
El siguiente número se halla sumando los dos números delante de él.
El 2 se calcula sumando los dos números delante de él (1+1)
El 21 se calcula sumando los dos números delante de él (8+13)
El siguiente número de la sucesión sería 55 (21+34)
Cada número se calcula sumando los dos anteriores a él.
-
El 2 se calcula sumando (1+1)
-
Análogamente, el 3 es sólo (1+2),
-
Y el 5 es (2+3),
-
¡y sigue!
C.- Ejercicios propuestos de estructuras repetitivas
Ejercicios de codificación con ciclos FOR, WHILE y DO - While
-
Visualizar los 10 primeros multiplos de 3
-
Visualizar los N primeros múltplos de 5
-
Ingresando N numeros enteros visualizar el Promedio de dichos numeros.
-
Ingresar 2 números por teclado y sumar, sin utilizar el operando de suma(+)
-
Ingresar 2 números por teclado y dividir, sin utilizar el operando de división (/)
-
Visualice la siguiente serie: 2/5, 4/4, 6/3, 8/2, 10/1
-
Visualice la siguiente serie: 3/-N; 6/-5; 9/-4; 12/-3; 15/-2 ....N/1.
-
Calcular el factorial de un número
-
Generar la serie: 1, 5, 3, 7, 5, 9, 7, ..., 23
-
Generar 5,10,15,20,25,30,35....n
-
Visualizar los n primeros números en forma descendente
-
Visualizar los N primeros numeros enteros y verificar cuales son multiplos de 3, cuales son múltiplos de 5.
-
Realizar la sumatoria de los números enteros comprendidos entre el 10 y el 20, es decir 10+11+12...+20.
-
Desarrolle un programa que realice la sumatoria de los numeros enteros pares comprendidos entre 1 y 40, el programa debera visualizar los numeros en cuestion y finalmente la sumatoria.
-
Ingresando un grupo (N) de valores numéricos, verificar cunatos son pares y cuantos son impares.
-
Realizar un programa que el usuario ingrese N numeros y verifique cuantos son positivos y cuantos negativos.
-
Programa que pida números de cuatro cifras e indique si los números son capicúas o no. El programa deberá ir pidiendo números hasta que el usuario introduce ‘-1’ por teclado. El número –1 indicará la finalización de la ejecución del programaNota1: Un número capicúa es simétrico p.e. 1221 ó 25752Nota2: Cuando el número no es de cuatro cifras se deberá mostrar un mensaje de error por pantalla y se pedirá otro número menor que 10000. En caso de que el número sea menor de cuatro cifras se completará con ceros a la izquierda.Nota3: El único número negativo que se aceptará es ‘-1’ que indicará la finalización del programa. Cualquier otro número negativo, se mostrará un mensaje de error.
-
Visualizar los divisibles de un número entero
-
Verificar si un número es Perfecto
-
Ingresando N numeros enteros verificar cuantos positivos se encuentran.
-
Verificar si un número es Primo
-
Ingresar un número de cédula y verificar si es verdadera o falsa
-
Ingresar los 9 dígitos de una cédula en la variable A y visualizar el décimo dígito
-
Visualizar la tabla de multiplicar de un número ingresado por teclado (Valor final ciclo 12)
-
Visualizar la tabla de multiplicar de un numero ingresado por teclado, al generar la primera operación usted debe ingresar la respuesta por teclado y verificar si esta correcto o incorrecto.
-
Ingresando N estudiantes con dos calificaciones cada uno, obtener el promedio. El programa solo debe aceptar calificaciones de 1 a 10, caso contrario debe volver a ingresar otra calificación.
-
Ingresan varias calificaciones de un estudiante obtener el promedio, luego del cual verificar los siguiente: Si el promedio esta de 9.1 a 10 S.A.R.; De 8.1 a 9 D.A.R; De 7 a 8 A.A.R., De 4.1 a 6.9 P.A.A.R, y menos de 4 N.A.A.R.
-
Realice un programa que le permita determinar de una lista de números ingresados:
¿Cuántos están entre el 50 y 75, ambos inclusive?
¿Cuántos mayores de 80?
¿Cuántos menores de 30? -
Realizar un programa que permita ingresar una lista de sueldos de varios empleados y despliegue una segunda lista aumentados el 30%.