ejemplos de algoritmos

Post on 07-Jun-2015

124.681 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

EJEMPLOS DE ALGORITMOS

1.- Diseña el algoritmo que suma todos los números naturales anteriores a un número N dado.

Inicio Contador = 2 Suma = 1 Mientras Contador <= 100 hacer Suma = Suma + Contador Contador = Contador + 1 Fin_mientras Visualizar SumaFin

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 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.

inicioLeer_A, B, CSi_(A+B==C)entonces

visualizar “son iguales”Si_no

si_(A+C==B)entoncesvisualizar “son iguales”

si_nosi_(B+C==A)entonces

visualizar “son iguales”si_no

visualizar “son diferentes”fin_si

fin_sifin_s

4.- Diseña el algoritmo del programa que permita resolver la ecuación de segundo grado

InicioLeer A, B, CD = B ^ 2 – 4 * A * CSi (D >= 0) entonces

X1 = (- B + D ^ 1/2) / 2 * AX2 = (- B - D ^ 1/2) / 2 * AVisualizar X1, X2

Si _ noVisualizar “Soluciones imaginarias”

Fin _ siFin

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.

InicioSuma = 0Contador = 0leer numero

mientras (numero<>0) hacersuma = suma+numerocontador = contador+1leer númerofin_mientras

s (suma<>0) entoncesmedia = suma/contadorvisualizar media

si_novisualizar “no ha introducido ningún numero”

fin_sifin

6.- Diseña el algoritmo del programa que sume y muestra en pantalla los múltiplos de 3 entre 3 y 99.

iniciosuma = 3contador = 6mientras (contador < 100) hacer

suma = suma+contadorcontador = contador+3

fin_mientrasvisualizar suma

fin

inicioleer (a, b, c, d)mayor = asi (b > mayor) entonces

mayor = bfin_sisi (c > mayor) entonces

mayor = cfin_sisi (d > mayor) entonces

mayor = dfin_sivisualizar (mayor)fin

7.- Diseña el algoritmo del programa que lee cuatro números del teclado y muestra el mayor de ellos.

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 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_mientrasfin

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.

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 divisorfin

MCD de de a = 945 y b = 651:945 = 1×651 + 294651 = 2×294 + 63294 = 4×63 + 42 63 = 1×42 + 21 42 = 2×21 + 0       

mcd(945; 651) = 21 (el último resto no nulo)

MCD de: a = 987 y b = 610:987 = 1×610 + 377610 = 1×377 + 233377 = 1×233 + 144233 = 1×144 + 89144 = 1×89 + 55 89 = 1×55 + 34 55 = 1×34 + 21 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

mcd(987; 610) = 1 (el último resto no nulo).

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.

Inicioi = 0j = 0leer cadmientras (cad[i] <> “\0”) hacer

i = i + 1fin mientrasmientras ( i <> 0) hacer

cad_inv[j] = cad[i–1]j = j + 1i = i – 1

fin mientrascad_inv [j] = ”\0 ”si (cad == cad_inv ) entonces

visualizar “si es palindromo”si_no

visualizar “no es palindromo”fin_sifin

top related