DISEÑO de ALGORITMOS - Sebastian Cervantes Martinez
DISEÑO de ALGORITMOS - Sebastian Cervantes Martinez
DISEÑO de ALGORITMOS - Sebastian Cervantes Martinez
FUNDAMENTOS DE PROGRAMACIÓN
SEBASTIAN CERVANTES MARTINEZ
GRUPO 18
OBTENER EL DIAGRAMA DE FLUJO Y EL PSEUDOCÓDIGO, PARA LOS SIGUIENTES INCISOS, MOSTRAR LOS
RESULTADOS SOLICITADOS.
Datos de salida: c
Proceso: c=a+b
Pseudocódigo
Algoritmo Ej1
a<-5
b<-4
c<-a+b
Escribir a,"+",b,"=",c
FinAlgoritmo
Diagrama de flujo
2. Obtener la suma de dos variables.
Análisis
Datos de entrada: x, y1
Datos de salida: z
Proceso: z=x+y1
Pseudocódigo
Algoritmo Ej2
Leer x, y1
z<-x+y1
FinAlgoritmo
Diagrama de flujo
3. Obtener el cuadrado y el cubo de una variable x.
Análisis
Datos de entrada: x
Cuadrado=x*x
Pseudocódigo
Algoritmo Ej3
Leer x
Cubo<-x*x*x
cuadrado<-x*x
FinAlgoritmo
Diagrama de flujo
4. Obtener un valor de la función z=x2 +y3.
Análisis
Datos de entrada: x, y1
Datos de salida: z
Proceso: z=x*x+y1*y1*y1
Pseudocódigo
Algoritmo Ej4
Leer x, y1
z<-x*x+y1*y1*y1
Escribir "El valor de la funcion para x=", x, " y para Y=", Y1, " es ", z
FinAlgoritmo
Diagrama de flujo
5. Obtener el perímetro de un círculo.
Análisis
Pseudocódigo
Algoritmo Ej5
Leer r
P<-2*PI*r
Escribir "El perímetro del círculo con radio ", r, " es igual a ", p
FinAlgoritmo
Diagrama de flujo
6. Obtener el perímetro de un triángulo.
Análisis
Proceso: p=x+y1+z
Pseudocódigo
Algoritmo Ej6
Leer x, y1, z
p<- x+y1+z
FinAlgoritmo
Diagrama de flujo
7. Obtener el perímetro de un cuadrado.
Análisis
Proceso: P=x*4
Pseudocódigo
Algoritmo Ej7
Leer x
P<- x*4
FinAlgoritmo
Diagrama de flujo
8. Obtener el perímetro de un paralelogramo.
Análisis
Proceso: P=x*2+y1*2
Pseudocódigo
Algoritmo Ej8
Leer x, y1
P<- x*2+y1*2
FinAlgoritmo
Diagrama de flujo
9. Obtener el área de un círculo.
Análisis
Proceso: a= pi*r^2
Pseudocódigo
Algoritmo Ej9
Leer r
p<- PI*r^2
FinAlgoritmo
Diagrama de flujo
10. Obtener el área de un triángulo.
Análisis
Pseudocódigo
Algoritmo Ej10
Leer b, h
A<- (b*h)/2
FinAlgoritmo
Diagrama de flujo
11. Obtener el área de un cuadrado.
Análisis
Pseudocódigo
Algoritmo Ej11
Leer x
a<- x*x
FinAlgoritmo
Diagrama de flujo
12. Obtener el área de un paralelogramo.
Análisis
Proceso: a= b*h
Pseudocódigo
Algoritmo Ej12
Leer b, h
a<- b*h
FinAlgoritmo
Diagrama de flujo
13. Obtener el volumen de un cilindro.
Análisis
Proceso: V= a*h
Pseudocódigo
Algoritmo Ej13
Leer a, h
v<- a*h
FinAlgoritmo
Diagrama de flujo
14. Obtener el volumen de una esfera.
Análisis
Proceso: V= 4/3*pi*r^3
Pseudocódigo
Algoritmo Ej14
Leer r
v<- (4/3)*PI*r^3
FinAlgoritmo
Diagrama de flujo
15. Obtener el volumen de un cono.
Análisis
Proceso: V= (a*h)/3
Pseudocódigo
Algoritmo Ej15
Leer a, h
v<- (a*h)/3
FinAlgoritmo
Diagrama de flujo
16. Obtener el volumen de un prisma recto.
Análisis
Proceso: V= a*h
Pseudocódigo
Algoritmo Ej16
Leer a, h
v<- a*h
FinAlgoritmo
Diagrama de flujo
17. Obtener el volumen de una pirámide.
Análisis
Proceso: V= ((L*L)*h)/3
Pseudocódigo
Algoritmo Ej17
Leer L, h
v<- ((L*L)*h)/3
FinAlgoritmo
Diagrama de flujo
18. Obtener la división de dos variables.
Análisis
Proceso: d=a/b
B diferente de 0
Pseudocódigo
Algoritmo Ej18
Leer a, b
Si b<>0 Entonces
d<- a/b
Escribir a,"/”,b,"=“,d
SiNo
Fin Si
FinAlgoritmo
Diagrama de flujo
19. Leer un número Z e imprimir si es negativo o positivo.
Análisis
Pseudocódigo
Algoritmo Ej19
leer z
Si z>=0 Entonces
Si z>0 Entonces
SiNo
Fin Si
SiNo
Fin Si
FinAlgoritmo
Diagrama de flujo
20. Leer dos valores numéricos a y b, e imprimir solamente el menor.
Análisis
Pseudocódigo
Algoritmo Ej20
Leer a, b
Si a>=b Entonces
Si a>b Entonces
SiNo
Fin Si
SiNo
Fin Si
FinAlgoritmo
Diagrama de flujo
21. Hacer un algoritmo, usando un elemento de selección múltiple, indique al usuario que deberá
elegir solo una opción a realizar.
Opción 1 -- Suma
Opción 2 -- Resta
Opción 3 -- División
Opción 4 -- Multiplicación
Análisis
Proceso: Según 1: Suma, 2: Multiplicación, 3: Resta, 4: División, de otro modo: “opción no valida”
Pseudocódigo
Algoritmo Ej21
Escribir "MENU"
Leer MENU
1:
Leer a,b
c <- a+b
2:
Leer a,b
c <- a*b
Escribir 'La multiplicación de a y b es igual a ',c
3:
Leer a,b
c <- a-b
4:
Leer a,b
Si b<>0 Entonces
c <- a/b
Escribir a,'/',b,'=',c
SiNo
FinSi
De Otro Modo:
Fin Segun
FinAlgoritmo
Diagrama de flujo
22. Hacer un algoritmo, usando un elemento de selección múltiple, indique al usuario que deberá
elegir solo una opción a realizar.
Opción 1 -- Obtener el perímetro de un círculo
Análisis
Datos de salida: d
Pseudocódigo:
Algoritmo ejer_22
definir a,b,c,d Como Real
definir m,r Como Entero
Repetir
Escribir "Seleccione una opción"
Escribir "1-perimetro de un círculo"
Escribir "2-perimetro de un triángulo"
Escribir "3-perimetro de un cuadrado"
Escribir "4-perimetro de un rectángulo"
Leer m
Según m Hacer
1:
Escribir "Ingrese el radio"
Leer a
si a>0 entonces
b<-2*PI*a
Escribir "El perímetro del círculo es de: ",b, " unidades"
fin si
2:
Escribir "Ingrese la medida de cada lado"
Leer a,b,c
Si a+b>c o b+c>a o a+c>b Entonces
d<-a+b+c
Escribir d
SiNo
Escribir "No es un triangulo"
FinSi
3:
Escribir "Ingrese el lado del cuadrado"
Leer a
Si a>0 Entonces
d<-a*4
Escribir "El perímetro es", d
SiNo
Escribir "eRROR"
Fin Si
4:
Escribir "Escribir el valor de lado 1 y lado 2"
Leer a,b
Si a>0 y b>0 y a<>b Entonces
c<-a+a+b+b
Escribir "El perímetro de un paralelogramo es",c
SiNo
Escribir "eRROR"
Fin Si
De Otro Modo:
Escribir "opción no valida"
Fin Según
Escribir "escriba 1 para ver de nuevo el menú de perímetros"
Leer r
Hasta Que r<>1
FinAlgoritmo
Diagrama de flujo
23. Hacer un algoritmo, usando un elemento de selección múltiple, indique al usuario que deberá
elegir solo una opción a realizar.
Opción 1 -- Obtener el área de un círculo
Análisis
Datos de salida: c, d
Pseudocódigo:
Algoritmo EJER_23
Definir a,b,c,d Como Real
Definir m,r Como Entero
Escribir 'Seleccione una opcion'
Repetir
Escribir '1-AREA de un circulo'
Escribir '2-AREA de un triangulo'
Escribir '3-AREA De un cuadrado'
Escribir '4-AREA de un rectangulo'
Leer m
Segun m Hacer
1:
Escribir "Escribe el valor del radio"
Leer a
Si a>0 Entonces
b <- PI*a*a
Escribir "El area del circulo es ",b
SiNo
Escribir "No es un valor válido"
FinSi
2:
Escribir "Escribe el valor de la base y la altura"
Leer a,b
Si a>0 y b>0 Entonces
c <- (a*b)/2
Escribir "El area del triangulo es ",c
FinSi
3:
Escribir "introduzca el valor de uno de los lados"
Leer a
Si a>0 Entonces
b <- a*a
Escribir "El area del cuadrado es ",b
FinSi
4:
Escribir "Introduzca el valor de la base y altura"
Leer a,b
Si a>0 y b>0 Entonces
c <- a*b
Escribir "El area del rectangulo es ", c
FinSi
De Otro Modo:
Escribir 'opcion no valida'
FinSegun
Escribir 'escriba 1 para ver de nuevo el menu de AREAS'
Leer r
Hasta Que r<>1
FinAlgoritmo
Diagrama de flujo
24. Hacer un algoritmo, usando un elemento de selección múltiple, indique al usuario que deberá
elegir solo una opción a realizar.
Opción 1 -- Obtener el volumen de un cilindro
Análisis
Datos de salida: c, d
Pseudocódigo
Algoritmo EJER_23
Definir a,b,c,d Como Real
Definir m,r Como Entero
Escribir 'Seleccione una opcion'
Repetir
Escribir '1-VOLUMEN de un cilindro'
Escribir '2-VOLUMEN de una esfera'
Escribir '3-VOLUMEN de un cono'
Escribir '4-VOLUMEN de un prisma recto'
Escribir '5-VOLUMEN de una piramide'
Leer m
Segun m Hacer
1:
Escribir 'Escribe el valor del radio de la base'
Leer a
Si a>0 Entonces
Escribir 'Escribe el valor de la altura'
leer b
si b>0 entonces
c<-PI*a^2*b
Escribir 'El volumen del cilindro es ', c
SiNo
Escribir 'No es un valor válido'
FinSi
SiNo
Escribir 'No es un valor válido'
FinSi
2:
Escribir 'Escribe el valor del radio de la esfera'
Leer a
Si a>0 Entonces
c <- 4/3*PI*a^3
Escribir 'El volumen de la esfera es ',c
SiNo
Escribir 'No es un valor valido'
FinSi
3:
Escribir 'introduzca el valor de el radio de la base'
Leer a
Si a>0 Entonces
Escribir 'Introduzca el valor de la altura'
Leer b
Si b>0 entonces
c<- 1/3*PI*a^2*b
Escribir 'El volumen del cono es ', c
SiNo
Escribir 'El valor dado no es válido'
FinSi
SiNo
Escribir 'El valor dado no es válido'
FinSi
4:
Escribir 'Introduzca los lados de la base'
Leer a,b
Si a>0 Y b>0 Entonces
Escribir 'Introduzca el valor de la altura'
Leer c
Si c>0 Entonces
d<- a*b*c
Escribir 'El volumen del prisma es ', d
Sino
Escribir 'El valor de la altura no es válido'
FinSi
SiNo
Escribir 'Valor no valido'
FinSi
5:
Escribir 'Ingrese el área de la base'
Leer a
Si a>0 entonces
Escribir 'Ingrese el valor de la altura'
Leer b
si b>0 entonces
c<- 1/3*a*b
Escribir 'El volumen de la piramide es ',c
SiNo
Escribir 'El valor no es válido'
FinSi
SiNo
Escribir 'El valor no es valido'
FinSi
De Otro Modo:
Escribir 'opción no valida'
FinSegun
Escribir 'escriba 1 para ver de nuevo el menu de AREAS'
Leer r
Hasta Que r<>1
FinAlgoritmo
Diagrama de flujo
25. Hacer un algoritmo, usando un elemento de selección múltiple, indique al usuario que deberá
elegir solo una opción a realizar.
Opción 1 -- Menú de perímetros
Análisis
Datos de salida: c, d
Pseudocódigo
Algoritmo Ej25
Definir a,b,c,d Como Real
Definir n,m,r,s Como Entero
Repetir
Escribir 'Seleccione un menú'
Escribir '1-Menu de PERIMETROS'
Escribir '2-Menu de AREAS'
Escribir '3-Menu de VOLUMENES'
Leer n
Segun n Hacer
1:
Repetir
Escribir 'Seleccione una opcion'
Escribir '1-perimetro de un circulo'
Escribir '2-perimetro de un triangulo'
Escribir '3-perimetro de un cuadrado'
Escribir '4-perimetro de un rectangulo'
Escribir 'Presione cualquier otro numero para salir de este menú'
Leer m
Segun m Hacer
1:
Escribir 'Ingrese el radio'
Leer a
Si a>0 Entonces
b <- 2*PI*a
Escribir 'El perimetro del circulo es de: ',b,' unidades'
FinSi
2:
Escribir 'Ingrese la medida de cada lado'
Leer a,b,c
Si a+b>c O b+c>a O a+c>b Entonces
d <- a+b+c
Escribir d
SiNo
Escribir 'No es un triangulo'
FinSi
3:
Escribir 'Ingrese el lado del cuadrado'
Leer a
Si a>0 Entonces
d <- a*4
Escribir 'El perimetro es',d
SiNo
Escribir 'eRROR'
FinSi
4:
Escribir 'Escribir el valor de lado 1 y lado 2'
Leer a,b
Si a>0 Y b>0 Y a<>b Entonces
c <- a+a+b+b
Escribir 'El perimetro de un paralelogramo es',c
SiNo
Escribir 'eRROR'
FinSi
FinSegun
Escribir '1- Volver al menu de perimetros'
Escribir '2- Volver al menu principal'
Leer r
si r>2 entonces
Escribir 'Opcion no válida'
FinSi
Hasta Que r<>1
2:
Escribir 'Seleccione una opcion'
Repetir
Escribir '1-AREA de un circulo'
Escribir '2-AREA de un triangulo'
Escribir '3-AREA De un cuadrado'
Escribir '4-AREA de un rectangulo'
Escribir 'Cualquier otro numero para salir de este menú'
Leer m
Segun m Hacer
1:
Escribir "Escribe el valor del radio"
Leer a
Si a>0 Entonces
b <- PI*a*a
Escribir "El area del circulo es ",b
SiNo
Escribir "No es un valor válido"
FinSi
2:
Escribir "Escribe el valor de la base y la altura"
Leer a,b
Si a>0 y b>0 Entonces
c <- (a*b)/2
Escribir "El area del triangulo es ",c
FinSi
3:
Escribir "introduzca el valor de uno de los lados"
Leer a
Si a>0 Entonces
b <- a*a
Escribir "El area del cuadrado es ",b
FinSi
4:
Escribir "Introduzca el valor de la base y altura"
Leer a,b
Si a>0 y b>0 Entonces
c <- a*b
Escribir "El area del rectangulo es ", c
FinSi
FinSegun
Escribir '1- menu de AREAS'
Escribir '2- menu PRINCIPAL'
Leer r
Hasta Que r<>1
3:
Escribir 'Seleccione una opcion'
Repetir
Escribir '1-VOLUMEN de un cilindro'
Escribir '2-VOLUMEN de una esfera'
Escribir '3-VOLUMEN de un cono'
Escribir '4-VOLUMEN de un prisma recto'
Escribir '5-VOLUMEN de una piramide'
Escribir 'Cualquier otro numero para salir de este menu'
Leer m
Segun m Hacer
1:
Escribir 'Escribe el valor del radio de la base'
Leer a
Si a>0 Entonces
Escribir 'Escribe el valor de la altura'
Leer b
Si b>0 Entonces
c <- PI*a^2*b
Escribir 'El volumen del cilindro es ',c
SiNo
Escribir 'No es un valor válido'
FinSi
SiNo
Escribir 'No es un valor válido'
FinSi
2:
Escribir 'Escribe el valor del radio de la esfera'
Leer a
Si a>0 Entonces
c <- 4/3*PI*a^3
Escribir 'El volumen de la esfera es ',c
SiNo
Escribir 'No es un valor valido'
FinSi
3:
Escribir 'introduzca el valor de el radio de la base'
Leer a
Si a>0 Entonces
Escribir 'Introduzca el valor de la altura'
Leer b
Si b>0 Entonces
c <- 1/3*PI*a^2*b
Escribir 'El volumen del cono es ',c
SiNo
Escribir 'El valor dado no es válido'
FinSi
SiNo
Escribir 'El valor dado no es valido'
FinSi
4:
Escribir 'Introduzca los lados de la base'
Leer a,b
Si a>0 Y b>0 Entonces
Escribir 'Introduzca el valor de la altura'
Leer c
Si c>0 Entonces
d <- a*b*c
Escribir 'El volumen del prisma es ',d
SiNo
Escribir 'El valor de la altura no es valido'
FinSi
SiNo
Escribir 'Valor no valido'
FinSi
5:
Escribir 'Ingrese el area de la base'
Leer a
Si a>0 Entonces
Escribir 'Ingrese el valor de la altura'
Leer b
Si b>0 Entonces
c <- 1/3*a*b
Escribir 'El volumen de la piramide es ',c
SiNo
Escribir 'El valor no es válido'
FinSi
SiNo
Escribir 'El valor no es valido'
FinSi
FinSegun
Escribir '1- menu de VOLUMENES'
Escribir '2- menu PRINCIPAL'
Leer r
Hasta Que r<>1
De Otro Modo:
Escribir 'Opción no válida'
Fin Segun
Hasta Que r<>2
FinAlgoritmo
Diagrama de flujo
26. Generar e imprimir los números del 1, 2, 3, hasta el 10.
Análisis
Datos de entrada: c
Datos de salida: c en cada ciclo
Proceso: c<-c+1
Pseudocódigo
Algoritmo Ej26
Definir c Como Entero
c<-1
Mientras c<=10 Hacer
Escribir c
c<-c+1
Fin Mientras
FinAlgoritmo
Diagrama de flujo
27. Generar e imprimir los primeros 40 números pares.
Análisis
Datos de entrada: a=2
Datos de salida: a (cada ciclo)
Proceso: a=a+2
Pseudocódigo
Algoritmo Ej27
Definir a como entero
a<-2
Mientras a<81 Hacer
Escribir a
a<- a+2
Fin Mientras
FinAlgoritmo
Diagrama de flujo
28. Generar e imprimir los primeros 30 números impares.
Análisis
Datos de entrada: a=1
Datos de salida: a (cada ciclo)
Proceso: a=a+1
Pseudocódigo
Algoritmo Ej28
Definir a Como Entero
a<-1
Mientras a<60 hacer
Escribir a
a<-a+2
FinMientras
FinAlgoritmo
Diagrama de flujo
29. Hallar e imprimir los cuadrados de la numeración del 100, 99, 98 hasta el 1.
100, 10000
99, 9801
Análisis
Datos de entrada: a=100
Datos de salida: a, b (cada ciclo)
Proceso: a=a-1 b=a^2
Pseudocódigo
Algoritmo Ej29
Definir a,b Como Real
a<-100
Mientras a>=1
b<-a^2
Escribir a,", ",b
a<-a-1
FinMientras
FinAlgoritmo
Diagrama de flujo
30. Hallar e imprimir los valores de la siguiente tabla:
Pseudocódigo
Algoritmo Ej30
Definir a,b,c,d Como Real
a<-1
d<-1
Mientras a<=50 Hacer
b<- d^2
c<- d^3
Escribir a,"-",d,"-",b,"-",c
a<-a+1
d<-d+2
FinMientras
FinAlgoritmo
Diagrama de flujo
31. Mostrar en pantalla los valores de la siguiente tabla:
Núm. Vuelta
1 5 100
2 10 90
3 15 80
. . .
10 50 10
Análisis
Datos de entrada: a=1 b=100
Datos de salida: a, b (cada ciclo)
Proceso: a=a+1, a*5, b=b-10
Pseudocódigo
Algoritmo Ej31
Definir a, b como entero
a<-1
b<-100
Mientras a<=10 Hacer
Escribir a,"-",a*5,"-",b
a<-a+1
b<-b-10
FinMientras
FinAlgoritmo
Diagrama de flujo
32. Obtener la tabla de multiplicar del número 9, del 1 al 20. Imprimir cada resultado en forma de
tabla, preferentemente de la siguiente forma:
9X1=9
9X2=18
9X20=180
Análisis
Pseudocódigo:
Algoritmo Ej32
Definir a como entero
a<-1
Mientras a<=20 hacer
Escribir "9x",a,"=",a*9
a<-a+1
FinMientras
FinAlgoritmo
Diagrama de flujo:
33. Obtener la tabla de multiplicar de X número, en el rango a, b –ascendente-.
Análisis
Datos de entrada:
Datos de salida:
Proceso:
Pseudocódigo
Algoritmo Ej33
Definir x,a,b como entero
Escribir 'Ingrese el número del cual quiere la tabla de multiplicar'
Leer x
Escribir 'Ingrese el rango de los multiplos a mostrar (a,b)'
Leer a, b
Si a<b Entonces
Mientras a<=b hacer
Escribir x,"x",a,"=",a*x
a<-a+1
FinMientras
SiNo
Mientras b<=a hacer
Escribir x,"x",b,"=",b*x
b<-b+1
FinMientras
FinSi
FinAlgoritmo
Diagrama de flujo
34. Obtener la suma de los primeros 100 números de manera inversa, es decir,
100+99+98+…+2+1=5050. Muestre la numeración y la suma total. -Usar un ciclo para obtener la
numeración. –
Análisis
Datos de entrada: a=100, b=0
Datos de salida: a(ciclo), b (suma total)
Proceso: a>=1, b=b+a, a=a-1
Pseudocódigo
Algoritmo Ej34
Definir a,b como entero
a<-100
b<-0
Mientras a>=1 Hacer
Escribir a
b<-b+a
a<-a-1
FinMientras
Escribir b
FinAlgoritmo
Diagrama de flujo
35. Obtener la suma de los 100 primeros números impares.
Mostrar la serie y la suma total. Suma total=1+3+5+…+199
Análisis
Datos de entrada: a=1, b=0
Datos de salida: a (ciclo), b
Proceso: a<=100, b=b+a, a=a+2
Pseudocódigo
Algoritmo Ej35
Definir a, b como entero
a<-1
b<-0
Mientras a<=199
Escribir a
b<-b+a
a<-a+2
FinMientras
Escribir b
FinAlgoritmo
Diagrama de flujo
36. Hallar e imprimir la suma de los cubos de los 30 primeros números impares.
Análisis
Datos de entrada:
Datos de salida:
Proceso:
Pseudocódigo
Algoritmo Ej36
definir a,b como enteros
a<-1
b<-0
Mientras a<=59 Hacer
b<-b+a^3
a<-a+2
FinMientras
Escribir b
FinAlgoritmo
Diagrama de flujo
37. Obtener la numeración de 1, 2, 3 hasta el 100, para obtener dos sumas distintas, la suma1 es la
suma de los impares y la suma2 es la suma de las pares.
Mostrar solamente las dos sumas totales, usar un solo ciclo.
Análisis
Datos de entrada:
Datos de salida:
Proceso:
Pseudocódigo
Algoritmo Ej37
Definir a, b, c como entero
a<-1
b<-0
c<-0
Mientras a<=100
si a MOD 2 =0 Entonces
b<-b+a
SiNo
c<-c+a
FinSi
a<-a+1
FinMientras
Escribir b,"-",c
FinAlgoritmo
Diagrama de flujo
38. Solicite al usuario su nombre, indique cuantas letras “a”, tiene su nombre.
Leer letra por letra.
Análisis
Datos de entrada: a, b (usuario)
Datos de salida: c (número de letras a)
Proceso: a>0, a=a-1, c=c+1, si b=a
Pseudocódigo
Algoritmo Ej38
Definir a, c Como Entero
Definir b Como Caracter
c<-0
Escribir 'Indique cuantas letras tiene su nombre'
Leer a
Si a>2 entonces
Escribir 'Ingrese su nombre letra por letra'
Mientras a>0 Hacer
Leer b
si b='a' o b='A' Entonces
c<-c+1
FinSi
a<-a-1
FinMientras
FinSi
si c=1 entonces
Escribir 'Su nombre tiene ', c, " letra a"
Sino
Escribir 'Su nombre tiene ',c," letras a'
FinSi
FinAlgoritmo
Diagrama de flujo
39. Solicite al usuario 20 letras e indique sí se puede formar la palabra “Goyo”, al menos una
vez. No importa el orden de las letras, leer letra por letra.
Análisis
Datos de entrada: a=1, b,c,d=0, l=letra (usuario)
Datos de salida: Se pues escribir goyo/No se puede escribir goyo
Proceso: si l=g,y o o, sumar uno a sus respectivos contadores
Pseudocódigo
Algoritmo Ej39
Definir a, b, c, d Como Entero
Definir l como caracter
a<-1
b<-0
c<-0
d<-0
Escribir 'Ingrese 20 letras una por una'
Mientras a<=20 hacer
Leer l
Si l='g' o l='G' entonces
b<-b+1
SiNo
Si l='o' o l='O' entonces
c<-c+1
SiNo
d<-d+1
FinSi
FinSi
a<-a+1
FinMientras
Si b>=1 y c>=2 y d>=1 Entonces
Escribir 'Se puede escribir Goyo'
Sino
Escribir 'No se puede escribir Goyo'
FinSi
FinAlgoritmo
Diagrama de flujo
40. Obtener el promedio de 10 calificaciones, las cuales deben de estar en el rango de 0 a
10, el promedio se obtiene de tal forma que las 4 primeras calificaciones serán tareas y
tienen un valor del 30% del promedio final y los 6 restantes son calificaciones de exámenes
y tienen un valor del 70%, sí alguna de las calificaciones no es válida asignar una
calificación de cero para tener siempre un promedio.
Análisis
Datos de entrada: x=1, ce=0, ct=0, c (usuario)
Datos de salida: pf (promedio final)
Proceso: x<=10, x<=4, ct=ct+c, ce=ce+c
Pseudocódigo
Algoritmo Ej40
Definir x, c Como Entero
Definir ce, ct, pf Como Real
x<-1
ce<-0
ct<-0
Mientras x<=10 Hacer
Escribir 'Ingrese la calificación ', x
Leer c
si c>=0 y c<=10 entonces
si x<=4 entonces
ct<-ct+c
Sino
ce<-ce+c
FinSi
Fin si
x<-x+1
FinMientras
ct<-(ct/4)*.3
ce<-(ce/6)*.7
pf<-ce+ct
Escribir 'Promedio final=',pf
FinAlgoritmo
Diagrama de flujo
41. Obtener y mostrar elementos de la serie ULAM: Solicitar al usuario un número Natural X, sí
es par divídalo entre 2 y sí es impar multiplique por 3 y aumente en 1. Se obtendrán enteros
positivos repitiendo el proceso hasta llegar a 1. Ejemplo sí empezamos en 5 la serie a
mostrar sería: 5, 16, 8, 4, 2, 1.
Análisis
Datos de entrada:
Datos de salida:
Proceso:
Pseudocódigo
Algoritmo Ej41
Definir x, a Como Entero
Escribir 'Ingrese numero de inicio para la serie ULAM'
Leer x
Mientras x>0 y x>1 hacer
Si x MOD 2 =0 Entonces
x<-x/2
Escribir x
SiNo
x<-(x*3)+1
Escribir x
FinSi
FinMientras
FinAlgoritmo
Diagrama de flujo
42. Obtener X elementos de la serie de Fibonacci, preguntar el usuario cuantos elementos
desea ver. Serie de Fibonacci: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89……
Análisis
Datos de entrada: v(usuario), a=1, b=0, c=0
Datos de salida: a(ciclo)
Proceso: c=b, b=a, a=a+c, v=v-1
Pseudocódigo
Algoritmo Ej42
Definir a, b, c, v como enteros
a<-1
b<-0
c<-0
Escribir 'Ingrese cuantos dígitos de la serie de Fibonacci desea ver'
Leer v
Mientras v>0 hacer
Imprimir a
c<-b
b<-a
a<-a+c
v<-v-1
FinMientras
FinAlgoritmo
Diagrama de flujo