You are on page 1of 27

Nombre: Edison Herrera

Fecha: 13 de octubre del 2008

Construir un algoritmo que permita leer un número de tres dígitos y sumar sus dígitos y determinar si la
suma es múltiplo del primer digito, segundo digito y tercer digito.

1. Análisis.

123  La Suma Es 6
6  Es múltiplo del primer digito
6  Es múltiplo del segundo digito
6  Es múltiplo del tercer digito

 Entrada: 1 Números.

 Proceso: num1>=100 and num1<=999


digito1 : trunc(num1/100)
aux1 : num1-(digito1*100)
digito2 : trunc (aux1/10)
aux2 : trunc(num1/10)
aux3 : aux2*10
digito3 : num1-aux3
suma : digito1+digito2+digito3
multiploaux : suma mod digito1
multiploaux1: suma mod digito2
multiploaux2: suma mod digito3
multiploaux=0
multiploaux1=0
multiploaux2=0

 Salida: Imprimir

La suma de los tres dígitos.


La suma es múltiplo del primer digito
La suma es múltiplo del segundo digito
La suma es múltiplo del tercer digito

2. Diseño del algoritmo.


3. Pseudocódigo

1 var
2 num1:numerico
3 digito1:numerico
4 digito2:numerico
5 digito3:numerico
6 aux1:numerico
7 aux2:numerico
8 aux3:numerico
9 suma:numerico
10 multiploaux:numerico
11 multiploaux1:numerico
12 multiploaux2:numerico
13 inicio
14 cls()
15 leer(num1)
16 digito1=int(num1/100)
17 aux1=num1-(digito1*100)
18 digito2=int(aux1/10)
19 aux2=int(num1/10)
20 aux3=(aux2*10)
21 digito3=(num1-aux3)
22 suma=(digito1+digito2+digito3)
23 multiploaux=suma % digito1
24 multiploaux1=suma % digito2
25 multiploaux2=suma % digito3
26 imprimir("\n la suma de los tres digitos es :",suma)
27 si (multiploaux ==0)
28 {
29 imprimir("\n la suma es multiplo del primer digito")
30 sino
31 imprimir("\n la suma no es multiplo del primer digito")
32 }
33 si (multiploaux1==0)
34 {
35 imprimir("\n la suma es multiplo del segundo digito")
36 sino
37 imprimir("\n la suma no es multiplo del segundo digito")
38 }
39 si (multiploaux2==0)
40 {
41 imprimir("\n la suma es multiplo del tercer digito")
42 sino
43 imprimir("\n la suma no es multiplo del tercer digito")
44 }
45 fin

4. Corrida De Escritorio
PANTALLA MEMORIA
Num1 Digito1 Aux1 Digito2 Aux2 Aux3 digito3 suma Multiplo Multipl Multiploa
aux oaux1 ux2

La suma de los tres dígitos, suma

La suma es múltiplo del primer 123 1 23 2 12 120 3 6 0 0 0


digito

La suma es múltiplo del segundo


digito

La suma es múltiplo del tercer


digito

Construir un algoritmo que permita leer un número de tres dígitos y determine si alguno de ellos es
numero primo.
1. Análisis.

123
1  Es número primo
2  Es número primo
3  Es número primo

 Entrada: 1 Números.

 Proceso: num1>=100 and num1<=999


digito1 : trunc(num1/100)
aux1 : num1-(digito1*100)
digito2 : trunc (aux1/10)
aux2 : trunc(num1/10)
aux3 : aux2*10
digito3 : num1-aux3
digito1=1 or digito1=2 or digito1=3 or digito1=5 or digito1=7
digito2=1 or digito2=2 or digito2=3 or digito2=5 or digito2=7
digito3=1 or digito3=2 or digito3=3 or digito3=5 or digito3=7

 Salida: Imprimir
Primer digito es número primo
Segundo digito es número primo
Tercer digito es número primo

2. Diseño del algoritmo.


3. Pseudocódigo

1 var
2 num1:numerico
3 digito1:numerico
4 digito2:numerico
5 digito3:numerico
6 aux1:numerico
7 aux2:numerico
8 aux3:numerico
9 inicio
10 cls()
11 leer(num1)
12 si (num1>=100 and num1<=999)
13 {
14 digito1=int(num1/100)
15 aux1=num1-(digito1*100)
16 digito2=int(aux1/10)
17 aux2=int(num1/10)
18 aux3=(aux2*10)
19 digito3=(num1-aux3)
20
21 si (digito1==1 or digito1==2 or digito1==3 or digito1==5 or digito1==7)
22 {
23 imprimir("\n Primer digito es número primo")
24 sino
25 imprimir("\n Primer digito no es número primo")
26 }
27 si (digito2==1 or digito2==2 or digito2==3 or digito2==5 or digito2==7)
28 {
29 imprimir("\n Segundo digito es número primo")
30 sino
31 imprimir("\n Segundo digito no es número primo")
32 }
33 si (digito3==1 or digito3==2 or digito3==3 or digito3==5 or digito3==7)
34 {
35 imprimir("\n Tercer digito es número primo")
36 sino
37 imprimir("\n Tercer digito no es número primo")
38 }
39 }
40 fin
41
42
43
44

4.- Corrida De Escritorio

PANTALLA MEMORIA
Num1 Digito1 Aux1 Digito2 Aux2 Aux3 digito3

Primer digito es número primo

Segundo digito es número primo 123 1 23 2 12 120 3

Tercer digito es número primo


Construir un algoritmo que permita leer tres números enteros e imprimirlos ascendentemente.

1. Análisis.

 Entrada: 3Números.

 Proceso: Ordenar los números en forma ascendente

 Salida: Imprimir
Escribir los números de menor a mayor

2. Diseño del algoritmo.


3.- Pseudocódigo

1 Var
2 num1: numérico
num2: numérico
3 num3: numérico
4 Inicio
5 Cls ()
6 Leer (num1)
7 Leer (num2)
Leer (num3)
8 Si (num1<num2)
9 {
10 Si (num1<num3)
11 {
12 Si (num2<num3)
{
13 Imprimir ("El menor es el ", num1)
14 Imprimir ("El medio es el ", num2)
15 Imprimir ("El mayor es el ", num3)
16 Sino
17 Imprimir ("El menor es el ", num1)
Imprimir ("El medio es el ", num3)
18
Imprimir ("El mayor es el ", num2)
19 }
20 Sino
21 Imprimir ("El menor es el ", num3)
22 Imprimir ("El medio es el ", num1)
Imprimir ("El mayor es el ", num2)
23
}
24 Sino
25 Si (num2<num3)
26 {
27 Si (num1<num3)
28 {
Imprimir ("El menor es el ", num2)
29 Imprimir ("El medio es el ", num1)
30 Imprimir ("El mayor es el ", num3)
31 Sino
32 Imprimir ("El menor es el ", num2)
33 Imprimir ("El medio es el ", num3)
Imprimir ("El mayor es el ", num1)
34 }
35 Sino
36 Imprimir ("El menor es el ", num3)
37 Imprimir ("El medio es el ", num2)
38 Imprimir ("El mayor es el ", num1)
39 }
}
40 Fin
41
42
43
44

4.- Corrida De Escritorio

PANTALLA MEMORIA

“Ingresar tres números” V Num1 num2 num3


“Numero menor” 10 10 13 12
“Numero medio” 12
“Numero mayor” 13

Construir un algoritmo que permita leer un número entero de dos dígitos y determine si es un número par
menor que 30

1. Análisis.

 Entrada: 1 Números.

 Proceso: a<30 and b/2*20=a

 Salida: Imprimir
Es par y es menor que 30
No es par o no es menor que 30
2. Diseño del algoritmo.

4. Pseudocódigo

1 var
2 a:numerico
3 b:numerico
4 inicio
5 cls()
6 leer(a)
7 b=int(a/2)*2
8 si (b =a and a < 30)
9 {
10
11 imprimir("\n Es par y menor que 30 ")
12 sino
13 imprimir("\n No es par o no es menor que 30 ")
14 }
15 fin

4. Corrida De Escritorio

PANTALLA MEMORIA

a b

Es par y menor que 30 10 10


Construir un algoritmo que permita leer dos enteros positivos y determinar si el último dígito de un dato
es igual al último dígito del otro

1. Análisis.

 Entrada: 2 Números.

 Proceso: num1-trunc(num1/10)*10
Num2-trunc(num2/10)*10

 Salida: Imprimir
los digitos no son iguales

2. Diseño del algoritmo.


5. Pseudocódigo

1 var
2 num1:numerico
3 num2:numérico
4 aux1:numerico
5 aux2:numerico
6
7 inicio
8 cls()
9 leer(num1,num2)
10 aux1=num1-trunc(num1/10)*10
11 aux2=num2-trunc(num2/10)*10
12 si (aux1=aux2)
13 {
14
15 imprimir("\n los digitos son iguales'")
16 sino
17 imprimir("\n 'los digitos no son iguales ")
18 }
19 fin

5. Corrida De Escritorio

PANTALLA MEMORIA
Num1 Num2 Aux1 Aux2

los digitos no son iguales 158 259 8 9


Utilizando el concepto de ciclo

Leer un numero entero positivo y determine a cuanto es igual la suma de todos los enteros comprendidos
entre 1 y el numero leído.

1. Análisis.

1+n=1+2+3+4+5+6+7+8+9+10+11+…………..n

 Entrada: 1 Números.

 Proceso: 1+2+3+4+5+6+7+8+9+10+11+…………..n

 Salida: Imprimir

Suma

2. Diseño del algoritmo.


3. Pseudocódigo

1 var
2 N:numerico
3 Suma:numerico
4 i:numerico
5
6 inicio
7 cls()
8 leer(N)
9 Suma=0
10 desde i=1 hasta N
11 {
12 Suma=Suma+i
13 }
14 imprimir("\n Suma es = ",Sumal)
15
16 fin
17

4. Corrida De Escritorio

PANTALLA MEMORIA
N Suma i

5 0 1
1 2
3 3
Suma es = ",Sumal 6 4
10 5
15

Construir un algoritmo que permita leer un número de tres dígitos y sumar sus dígitos y determinar si la
suma es múltiplo del primer digito, segundo digito y tercer digito.

1. Análisis.

1230  La Suma Es 6

 Entrada: 1 Números.

 Proceso: num1>=100 and num1<=999


digito1 : trunc(num1/100)
aux1 : num1-(digito1*100)
digito2 : trunc (aux1/10)
aux2 : trunc(num1/10)
aux3 : aux2*10
digito3 : num1-aux3
digito3 : num1-aux3

 Salida:
La suma de los dígitos.

2. Diseño del algoritmo.


3. Pseudocódigo

1 var
2 num1:numerico
3 digito1:numerico
4 digito2:numerico
5 digito3:numérico
6 digito4:numérico
7 aux1:numerico
8 aux2:numerico
9 aux3:numerico
10 suma:numerico
11
12 inicio
13 cls()
14 leer(num1)
15 digito1=int(num1/100)
16 aux1=num1-(digito1*100)
17 digito2=int(aux1/10)
18 aux2=int(num1/10)
19 aux3=(aux2*10)
20 digito3=(num1-aux3)
21 suma=(digito1+digito2+digito3)
22
23 imprimir("\n la suma de los tres es :",suma)
24
25 fin
26
27
44
45

4. Corrida De Escritorio

PANTALLA MEMORIA
suma
Num1 Digito1 Aux1 Digito2 Aux2 Aux3 digito3 Digito4

La suma de los tres , suma

: 123 1 23 2 12 120 3 0 6

Leer dos números enteros positivos y mostrar todos los números terminados en 3 comprendidos entre el
número mayor y el número menor.

1. Análisis.

 Entrada: 3 Números.

 Proceso:
Verificar que el numero sea positivo
Mostrar todos los números terminados en 3

 Salida: Imprimir
2. Diseño del algoritmo.

3. Pseudocódigo

1 var Var
2 n1,n2,i:numerico
3 Inicio
4 Cls()
5 Leer(n1,n2)
6 Desde i=3 hasta n2 paso 10
7 {
8 Si((i>n1)and(i<n2))
9 {
10 Imprimir("\n\tlos números son   ",i,"\n")
11 }
12 }
13 Fin
14
15
16
17
4. Corrida De Escritorio

PANTALLA MEMORIA

     
Num1    Num2   
12 15
 
“La suma es igual a” 13

Construir un algoritmo que permita leer un número y calcular su factorial.

1. Análisis.

5!=1*2*3*4*5=120

 Entrada: 1 Números.

 Proceso: 5!=1*2*3*4*5=120

 Salida: Imprimir

Factorial

2. Diseño del algoritmo.


3. Pseudocódigo

1 var
2 final:numerico
3 factorial:numerico
4 i:numerico
5
6 inicio
7 cls()
8 leer(final)
9 factorial=1
10 desde i=1 hasta final
11 {
12 factorial=i*factorial
13
14 }
15 imprimir("\n multiplicacion es = ",factorial)
16
17 fin

4. Corrida De Escritorio

PANTALLA MEMORIA
final factorial i

5 1 1
1 2
Factoriales,factorial 2 3
6 4
24 5
120

You might also like