miércoles, 27 de marzo de 2013

Pseudocódigo XVI

Ejercicios pseudocódigo con PSeInt.




Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un día desde las 0:00:00 horas hasta las 23:59:59 horas.Usar instrucción Esperar 1 Segundo.



1 Proceso Relog24Horas
2      // 23:59:59
3      // 0:7:5 00:07:05
4      Definir Horas, Minutos, SegundosR como entero;
5      Definir HorasC, MinutosC, SegundosC como caracter;
6      Para Horas<-0 hasta 23 hacer
7            Para Minutos <-0 hasta 59 hacer
8                   Para SegundosR <-0 hasta 59 hacer
9                          Borrar pantalla;
10                         Si Horas > 9 Entonces
11                                HorasC<-"";
12                         sino
13                                HorasC<-"0";
14                         FinSi
15                         Si Minutos > 9 Entonces
16                                MinutosC<-"";
17                         Sino
18                               MinutosC<-"0";
19                         FinSi
20                         Si SegundosR > 9 Entonces
21                                SegundosC <- "";
22                         Sino
23                                segundosC<-"0";
24                         FinSi
25                         Escribir HorasC, Horas,":",MinutosC, Minutos, ":",SegundosC, SegundosR;
26                         Esperar 15 Milisegundo;
27                  FinPara
28           FinPara
29     FinPara
30 FinProceso




Dada la siguiente serie matemática:    a1=0    a2=1    an=an-1 + (2*an-2) para n>=3 Determinar cual es el valor y el rango del primer término cuyo valor sea mayor o igual a 2000.




1 Proceso SerieAx
2      //Dada la siguiente serie matemática:
3      //a1=0
4      //a2=1
5      //an=an-1 + (2*an-2) para n>=3
6      //Determinar cual es el valor y
7      //el rango del primer término cuyo valor
8      //sea mayor o igual a 2000.
9      // a3 = a2 + (2*a1) = 1 + (2*0) = 1
10     // a4 = a3 + (2*a2) = 1 + (2*1) = 3
11     // a5 = a4 + (2*a3) = 3 + (2*1) = 5
12     // a6 = a5 + (2*a4) = 5 + (2*3) = 11
13     Definir indice como entero;
14     Definir Ax, Axm1, Axm2 como entero;
15     indice <-3; //3
16     Axm2<-0; // Ax-2 a1
17     Axm1<-1; // Ax-1 a2
18     Ax<-0;
19
20     Mientras Ax < 2000 hacer
21            //an=an-1 + (2*an-2)
22           Ax <- Axm1 + (2*Axm2);
23           Axm2 <- Axm1;
24           Axm1<-Ax;
25           Indice <- Indice + 1;
26           //Escribir "a" , indice -1, " valor " , Ax;
27     FinMientras
28     //restar uno a indice
29     Escribir "a" , indice -1, " valor " , Axm1;
30
31 FinProceso

Calcular la suma de los divisores de cada número introducido por teclado. Terminaremos cuando el número sea negativo o 0.


1 Proceso Divisores
2      //Calcular la suma de los divisores de cada número
3      //introducido por teclado. Terminaremos cuando el número
4      //sea negativo o 0.
5      Definir Numero, Max como entero;
6      Definir Suma ,indice como entero;
7      Definir PrimerDiv como logico;
8      PrimerDiv <- falso;
9      repetir
10           Suma <- 1;
11           PrimerDiv <- Falso;
12           Escribir "Dime el Numero";
13           Leer Numero;
14           Max<-Numero;
15           Si Numero > 0 entonces
16                  Escribir "Divisor " , 1;
17                  indice <- 2;
18                  Mientras indice <= Max hacer
19                         si Numero % indice = 0 Entonces
20                                Escribir "Divisor " , Indice;
21                                Suma <- Suma + Indice;
22                                si PrimerDiv = Falso Entonces
23                                      si indice <> Numero Entonces
24                                             PrimerDiv <- Verdadero;
25                                             Max <- Numero / Indice;
26                                      FinSi
27                                FinSi
28                         FinSi
29                         indice <- Indice + 1;
30                  FinMientras
31                  si primerDiv = Verdadero Entonces
32                         Escribir "Divisor " , Numero;
33                         Suma <- Suma + Numero;
34                  FinSi
35                  Escribir " Suma " , Suma;
36            FinSi
37     hasta que Numero <=0
38 FinProceso

2 comentarios:

  1. Oye me puedes ayudar es que en la simulacion del reloj en la linea 26 donde dice esperar 15 milisegundo me sale error espero que me puedas ayudar con eso gracias

    ResponderEliminar
  2. Oye me preguntaba si me podias ayudar en el ejercicio de la simulacion del reloj
    el la linea 26 donde dice esperar 15 milisegundo me tira error espero que me puedas ayudar con eso pues todos tus ejercicios me han servido de muucha ayuda y me funcionan correctamente espero tu respuesta, saludos

    ResponderEliminar