• Lenguaje

    PSeInt (Pseudocódigo)

  • Descripción

    Calcula la fecha del siguiente día a partir de una fecha digitada desde el teclado por el usuario (dd, mm, aaaa) e imprimirla. (Tenga en cuenta los años bisiestos.), recuerde que sólo debe ingresar valores correctos, es decir no pueden haber meses de más de 31 días o años con más de 12 meses, se debe garantizar que el año este en el rango de 4 cifras. (en caso de no cumplir con las condiciones se debe mostrar los mensaje de error).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Proceso DiaSiguiente
    Escribir Sin Saltar "Ingresa el valor de anno:";
    Leer anno;
    Escribir Sin Saltar "Ingresa el valor de dia:";
    Leer dia;
    Escribir Sin Saltar "Ingresa el valor de mes:";
    Leer mes;
    Si (dia = 30 Y (mes = 4 O mes = 6 O mes = 9 O mes = 11)) O dia = 31 O (mes = 2 Y (dia = 29 O (dia = 28 Y (anno MOD 4 <> 0 O anno MOD 100 = 0) Y anno MOD 400 <> 0))) Entonces
        dia_siguiente <- 1;
        mes_siguiente <- mes+1;
    SiNo
        dia_siguiente <- dia+1;
        mes_siguiente <- mes;
    FinSi
    Si mes_siguiente = 13 Entonces
        anno_siguiente <- anno+1;
        mes_siguiente <- 1;
    SiNo
        anno_siguiente <- anno;
    FinSi
    Si dia<1 O dia>31 O (mes = 2 Y dia>29) O ((mes = 4 O mes = 6 O mes = 9 O mes = 11) Y dia = 31) O (mes = 2 Y dia = 29 Y (anno MOD 4 <> 0 O anno MOD 100 = 0) Y anno MOD 400 <> 0) Entonces
        dia_siguiente <- 0;
        mes_siguiente <- 0;
        anno_siguiente <- 0;
        Escribir "Día incorrecto";
    FinSi
    Si mes<1 O mes>12 Entonces
        dia_siguiente <- 0;
        mes_siguiente <- 0;
        anno_siguiente <- 0;
        Escribir "Mes incorrecto";
    FinSi
    Si anno<1000 O anno>=10000 Entonces
        dia_siguiente <- 0;
        mes_siguiente <- 0;
        anno_siguiente <- 0;
        Escribir "Año incorrecto";
    FinSi
    Escribir "Valor de anno siguiente: ", anno_siguiente;
    Escribir "Valor de dia siguiente: ", dia_siguiente;
    Escribir "Valor de mes siguiente: ", mes_siguiente;
FinProceso