ESTRUCTURAS ALGORÍTMICAS REPETITIVAS
selectivas utilizando diagramas de flujo en la herramienta PSeInt.
1. Construya un algoritmo que calcule e imprima la suma de los N primeros número
naturales.
algoritmo
Proceso ejercicio1
escribir 'bienvenidos'
escribir 'cuantos numeros desea ingresar'
leer nc
csum<-0
Para i<-1 Hasta nc Con Paso 1 Hacer
escribir 'escriba numero',i,''
leer n
csum<- csum + n
Fin Para
escribir 'la suma total de los numeros es:',csum
FinProceso
diagrama de flujo
pantalla de salida
3. Escriba un algoritmo tal que dado como datos N números enteros, determine cuántos
de ellos son pares y cuántos impares.
algoritmo:
Proceso ejercicio3
escribir 'bienvenidos'
escribir 'determine cuantos de sus numeros son pares'
escribir 'cuantos numeros decea ingresar'
leer nm
csumin<-0
csumpar<-0
Para s<-1 Hasta nm Con Paso 1 Hacer
escribir 'ingrese numero',s,''
leer n
Si n%2=0 Entonces
csumpar<- csumpar + 1
Sino
csumin<- csumin + 1
Fin Si
Fin Para
escribir 'sus numeros pares son:',csumpar
escribir 'sus numeros impares son:',csumin
FinProceso
diagrama de flujo:
pantalla de salida:
5. Escriba un algoritmo que lea un número entero N y calcule el resultado de la siguiente
serie:
algoritmo:
Proceso ejercicio5
escribir 'bienvenidos'
escribir 'ingrese la cantidad de datos a sumar'
leer n
sum<-0
para s<-1 hasta n con paso 1 Hacer
escribir 'sus numeros a sumar son=' ,1/s, ''
sum<-sum+1/s
FinPara
escribir 'la suma es=',sum
FinProceso
diagrama de flujo:
pantalla de salida:
7. Calcule el aumento de sueldos para N empleados de una empresa, bajo el siguiente
criterio:
- Si el sueldo es menor a $10,000, aumento 10%
- Si el sueldo está comprendido entre $10,000 y $25,000, aumento 7%
- Si el sueldo es mayor a $25,000, aumento 8%
- Imprimir el nuevo sueldo del trabajador y el monto total de la nómina
- considerando el aumento.
Algoritmo:
Proceso sueldo Escribir "Cuantos empleados?" Leer emp Total <- 0 Para n <- 1 hasta emp Con Paso 1 Hacer Escribir "Empleado ", n," :" Escribir "Ingrese el sueldo:" Leer Sueldo Si sueldo < 10000 Entonces sueldox <- sueldo * 1.10 Escribir "Aumento de 10%!" FinSi Si sueldo >= 10000 Y sueldo <= 25000 Entonces sueldox <- sueldo * 1.07 Escribir "Aumento de 7%!" FinSi Si sueldo > 25000 Entonces sueldox <- sueldo * 1.08 Escribir "Aumento de 8%!" FinSi Escribir "Su nuevo sueldo es: ", sueldox Escribir "" Total <- Total + sueldox FinPara Escribir "El sueldo total de todos los empleados es: ", Total FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 9:
Haga un algoritmo que calcule la suma de los números pares comprendidos entre 10 y 50.
Algoritmo:
Proceso pares Escribir "Calculando la suma de números pares" Escribir "comprendidos entre 10 y 50:" Escribir "" pares <- 0 Para n <- 10 Hasta 50 Con Paso 1 Hacer Si n mod 2 = 0 Entonces Escribir n, "+" pares <- pares + 1 FinSi FinPara Escribir "" Escribir "Hay ", pares, " números pares." FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 11:
Escriba una algoritmo que dado el peso, la altura y el sexo de N personas que pertenecen a un departamento de la república, obtengan tanto el promedio del peso como de la estatura de esta población.
Algoritmo:
Proceso promedio Escribir "Ingrese numero de personas:" Leer c npeso <- 0 naltura <- 0 nhombres <- 0 nmujeres <- 0 Para n <- 1 hasta c Con Paso 1 Hacer Escribir "Persona ", n, " :" Escribir "Ingrese su peso en lbs:" Leer peso npeso <- npeso + peso Escribir "Ingrese altura en cms:" Leer altura naltura <- naltura + altura Escribir "Ingrese su sexo:" Escribir "1 = Hombre" Escribir "2 = Mujer" Leer sexo Si sexo = 1 Entonces nhombres <- nhombres + 1 FinSi Si sexo = 2 Entonces nmujeres <- nmujeres + 1 FinSi Escribir "" FinPara Escribir "Promedio de peso: ", npeso/c Escribir "Promedio de altura: ", naltura/c Escribir "Nº de hombres: ", nhombres Escribir "Nº de mujeres: ", nmujeres FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 13:
Una persona invierte en un banco un cierto capital y quiere saber cuánto obtendrá al cabo de cierto tiempo, si el dinero se colocó a una determinada tasa de interés mensual. Haga un algoritmo.
Algoritmo:
Proceso inversion Escribir "Bienvenido!" Escribir "Calcule cuanto dinero obtendra por una inversión!" Escribir "Ingrese una cantidad de dinero invertida" Leer cd Escribir "Inserte la tasa de interes mensual de su banco:" Leer im ntotal <- 0 Escribir "" Escribir "Calcular dinero obtenido de dentro de # meses:" Escribir "Ingrese númmero de meses" Leer c Para n <- 1 hasta c con paso 1 hacer mes <- (((cd * im) / 365) * 30) ntotal <- ntotal + mes FinPara Escribir "" Escribir "Usted obtendrá un total de $", ntotal Escribir "dentro de ", c, " meses por su inversión bancaria." FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 15:
Escriba un algoritmo que reciba como entrada 24 números reales que representan las temperaturas del exterior en un período de 24 horas. Encuentre la temperatura promedio, así como la más alta y más baja del día.
Algoritmo:
Proceso temperatura Dimension temp[24] Escribir "Ingrese las temperaturas del día:" ntemp <- 0 Para n <-1 Hasta 24 Con Paso 1 Hacer Leer temp[n] ntemp <- ntemp + temp[n] FinPara Si temp[1] > temp[2] Entonces may <- temp[1] FinSi Para n <- 3 hasta 24 Con Paso 1 Hacer Si temp[n] > may Entonces may <- temp[n] FinSi FinPara Si temp[1] < temp[2] Entonces men <- temp[1] FinSi Para n <- 3 hasta 24 Con Paso 1 Hacer Si temp[n] < men Entonces men <- temp[n] FinSi FinPara Escribir "Promedio =", ntemp/24 Escribir "Temperatura más alta:", may Escribir "Temperatura más baja:", men FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 17:
En una universidad con un número determinado de alumnos se desea obtener el porcentaje y promedio de la población femenina, el porcentaje y promedio de la población masculina.
Algoritmo:
Proceso PromedioU Escribir "Ingrese el numero de alumnos" Leer c nhombres <- 0 nmujeres <- 0 Para n <- 1 Hasta c Con Paso 1 Hacer Escribir "Alumno ", n Escribir "Ingrese el sexo:" Escribir "1 = Masculino" Escribir "2 = Femenino" Leer R Segun R hacer 1: nhombres <- nhombres + 1 2: nmujeres <- nmujeres + 1 FinSegun FinPara Total <- nhombres + nmujeres Escribir "" Escribir "Población masculina: " (nhombres*100)/total, "%" Escribir "Población femenina: ", (nmujeres*100)/total, "%" FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 19:
Escriba un algoritmo que obtenga todos los números “primos gemelos” comprendidos entre A y B (enteros positivos). Los primos gemelos son parejas de números primos con una diferencia entre sí de exactamente dos. Ejemplo 3 y 5 son primos gemelos.
Algoritmo:
Proceso Numero_Primo Escribir "Buscador de números primos..." Escribir "Ingrese punto de partida y final:" Leer A, B Para n<-A Hasta B Con Paso 1 Hacer //El número 1, por convenio, no se considera //ni primo ni compuesto. a=0 Para i<-1 Hasta n Hacer Si n mod i = 0 Entonces a=a+1 FinSi FinPara Si a =2 Entonces Escribir n FinSi FinPara FinProceso//Este algoritmo encuetra todos los numeros primos //comprendidos entre A y B //No logre que encontrara las parejas de numeros gemelos.
Diagrama de flujo:
Pantalla de salida: