Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1.- Diseña el algoritmo que suma todos los números naturales anteriores a un número N
dado.
Inicio
Suma = 1
Contador = 2
no Visualizar
Contador <= 100
Suma
si
Suma = Suma+Contador
Fin
Contador = Contador +1
Inicio
Contador = 2
Suma = 1
Mientras Contador <= 100 hacer
Suma = Suma + Contador
Contador = Contador + 1
Fin_mientras
Visualizar Suma
Fin
2.- Diseña el algoritmo del programa que muestra en pantalla las potencias de 2
comprendidas entre 0 y 10 ( 20; 21; 22... 210)
Inicio
Contador = 0
NO
Contador <= 10
SI
Potencia = 2^contador
Contador = Contador + 1
Inicio
Contador = 0
Mientras ( Contador <= 10 ) hacer
Potencia = 2^Contador
Contador = Contador + 1
Visualizar potencia
Fin_mientras
Fin
3.- Diseña el algoritmo del programa que, tras leer tres números, comprueba si la suma de
cualquier pareja de ellos es igual al tercer número, indicando si se cumple esa condición o
no.
Inicio
Leer ,A, B, C
si
A+B==C
no
si
A+C==B
no
si
B+C==A
no
Visualizar Visualizar
“No se cumple” “Se cumple”
fin
inicio
Leer_A, B, C
Si_(A+B==C)entonces
visualizar “son iguales”
Si_no
si_(A+C==B)entonces
visualizar “son iguales”
si_no
si_(B+C==A)entonces
visualizar “son iguales”
si_no
visualizar “son diferentes”
fin_si
fin_si
fin_s
4.- Diseña el algoritmo del programa que permita resolver la ecuación de segundo grado
Inicio
Leer A, B , C
D = B ^ 2 – 4 * A *C
No
D >= 0
Si
Visualizar
“Soluciones
imaginarias”
X1 = (- B + D ^ 1/2) / 2 * A
X2 = (- B – D ^ 1/2) / 2 * A
Visualizar x1, x2
Fin
Inicio
Leer A, B, C
D = B ^ 2 – 4 * A * C
Si (D >= 0) entonces
X1 = (- B + D ^ 1/2) / 2 * A
X2 = (- B - D ^ 1/2) / 2 * A
Visualizar X1, X2
Si _ no
Visualizar “Soluciones imaginarias”
Fin _ si
Fin
5.- Diseña el algoritmo del programa que lee números del teclado y, al finalizar, muestra la
media aritmética de todos ellos. Se considera que el número cero finaliza la introducción
de datos.
Inicio
Suma = 0
Contador = 0
Leer numero
no no
Numero<>0 Suma<>0
si si
Contador = Contador+1
Visualiozar
media
fin
Inicio
Suma = 0
Contador = 0
leer numero
mientras (numero<>0) hacer
suma = suma+numero
contador = contador+1
leer número
fin_mientras
s (suma<>0) entonces
media = suma/contador
visualizar media
si_no
visualizar “no ha introducido ningún numero”
fin_si
fin
6.- Diseña el algoritmo del programa que sume y muestra en pantalla los múltiplos de 3
entre 3 y 99.
inicio
Suma = 3
Contador = 6
no
Contado < 100
si
Contador = contador+3
fin
inicio
suma = 3
contador = 6
mientras (contador < 100) hacer
suma = suma+contador
contador = contador+3
fin_mientras
visualizar suma
fin
7.- Diseña el algoritmo del programa que lee cuatro números del teclado y muestra el
mayor de ellos.
Inicio
Leer a, b, c, d
mayor = a
si no
b > mayor inicio
leer (a, b, c, d)
mayor = a
mayor = b
si (b > mayor) entonces
mayor = b
fin_si
si (c > mayor) entonces
si no mayor = c
c > mayor
fin_si
si (d > mayor) entonces
mayor = c
mayor = d
fin_si
visualizar (mayor)
fin
si no
d > mayor
mayor = d
visualizar mayor
fin
8.- Diseña el algoritmo del programa que muestra en pantalla todos los números primos
entre 2 y 100.
Inicio
i =2
j =2
no
i < = 100
si
no
i % j <> 0
no
si i <> j
si visualizar i
j =j+ 1
i=i+ 1
j=2
fin
inicio
i = 2
j = 2
mientras (i <= 100) hacer
mientras (i % j <>0) hacer
j = j + 1
fin_mientras
si (i == j) entonces
visualizar i
fin_si
i = i + 1
j = 2
fin_mientras
fin
9.- Diseña algoritmo del programa que determine el MCD de dos números enteros por el
algoritmo de Euclides: consiste en realizar divisiones sucesivas; en la primera división, se
toma como dividendo el mayor de los números y como divisor el otro; luego, el divisor y el
resto sirven respectivamente de dividendo y divisor de la siguiente división. El proceso
termina cuando se obtiene un resto nulo. El mcd es entonces el penúltimo resto del
algoritmo.
EJEMPLOS
.
MCD de: a = 987 y b = 610: MCD de de a = 945 y b = 651:
987 = 1×610 + 377 945 = 1×651 + 294
610 = 1×377 + 233 651 = 2×294 + 63
377 = 1×233 + 144 294 = 4×63 + 42
233 = 1×144 + 89 63 = 1×42 + 21
144 = 1×89 + 55 42 = 2×21 + 0
89 = 1×55 + 34
55 = 1×34 + 21 mcd(945; 651) = 21 (el último resto no nulo)
34 = 1×21 + 13
21 = 1×13 + 8
13 = 1×8 + 5
8 = 1×5 + 3
5 = 1×3 + 2
3 = 1×2 + 1
2 = 2×1 + 0
inicio
leer A, B
si (A>B) entonces
dividendo = A
divisor = B
si_no
dividendo = B
divisor = A
fin_si
resto = dividendo%divisor
mientras (resto<>0) hacer
dividendo = divisor
divisor = resto
resto = dividendo%divisor
fin_mientras
visualizar divisor
fin
inicio
leer A, B
si no
A >B
Dividendo = A Dividendo = B
Divisor = B
Divisor = A
Resto = dividendo%divisor
no
Visualizar:
resto<>0
divisor
si
Dividendo = divisor
Divisor = resto
fin
10.- Diseñar el algoritmo del programa que determina si una palabra introducida por
teclado es palíndromo o no. Un palíndromo es una palabra que se lee igual en ambos
sentidos, como por ejemplo radar.
Inicio
i=0
j=0
leer Cad
si
Cad [ i ] <>’ \0' i= i+1
no
si
i <> 0 Cad_inv [ j ] = Cad [ i - 1]
no
j =j+1
i=i-1
Cad_inv [ j ] = ” \0 ”
no
Cad == Cad_inv
si
visualizar visualizar
“sí es palindromo” “no es palindromo”
fin
Inicio
i = 0
j = 0
leer cad
mientras (cad[i] <> “\0”) hacer
i = i + 1
fin mientras
mientras ( i <> 0) hacer
cad_inv[j] = cad[i–1]
j = j + 1
i = i – 1
fin mientras
cad_inv [j] = ”\0 ”
si (cad == cad_inv ) entonces
visualizar “si es palindromo”
si_no
visualizar “no es palindromo”
fin_si
fin