lunes, 23 de septiembre de 2024

■ Pascal_025 ► Pedir un número y mostrarlo con letra

Ejercicio 025: Perdir un número entre 1 y 100 y mostrarlo con letra.

Entrada: Un número entero entre 1 y 100.

Salida: El número con letra.


Program Pascal_025;
uses
    crt;
var
    numeros : array[1..28] of string;
    decenas : array[1..8] of string;
    num : integer;
Begin
    numeros[1]  := 'uno';
    numeros[2]  := 'dos';
    numeros[3]  := 'tres';
    numeros[4]  := 'cuatro';
    numeros[5]  := 'cinco';
    numeros[6]  := 'seis';
    numeros[7]  := 'siete';
    numeros[8]  := 'ocho';
    numeros[9]  := 'nueve';
    numeros[10] := 'diez';
    numeros[11] := 'once';
    numeros[12] := 'doce';
    numeros[13] := 'trece';
    numeros[14] := 'catorce';
    numeros[15] := 'quince';
    numeros[16] := 'dieciséis';
    numeros[17] := 'diecisiete';
    numeros[18] := 'dieciocho';
    numeros[19] := 'diecinueve';
    numeros[20] := 'veintiuno';
    numeros[21] := 'veintidós';
    numeros[22] := 'veintitrés';
    numeros[23] := 'veinticuatro';
    numeros[24] := 'veinticinco';
    numeros[25] := 'veintiséis';
    numeros[26] := 'veintisiete';
    numeros[27] := 'veintiocho';
    numeros[28] := 'veintinueve';
    
    decenas[1] := 'veinte';
    decenas[2] := 'treinta';
    decenas[3] := 'cuarenta';
    decenas[4] := 'cincuenta';
    decenas[5] := 'sesenta';
    decenas[6] := 'setenta';
    decenas[7] := 'ochenta';
    decenas[8] := 'noventa';
    
    WriteLn('Ingresa un número');
    ReadLn(num);
    
    WriteLn('El número con letra es:');
    if (num < 30) then begin
        if (num < 20) then begin
            WriteLn(numeros[num]);
        end
        else begin
            if (num > 20) then begin
                WriteLn(numeros[num - 1]);
            end
            else begin
                WriteLn(decenas[1]);
            end;
        end;
    end
    else begin
        if (num < 100) then begin
            Write(decenas[num div 10 - 1]);
            if (num mod 10 > 0) then begin
                WriteLn(' y ', numeros[num mod 10]);
            end;
        end
        else begin
            if (num > 100) then begin
                WriteLn('Número fuera de rango');
            end
            else begin
                WriteLn('Cien');
            end;
        end;
    end;
End.



■ En otros lenguajes:
     • Pseudocódigo
     • C#_025
     • Java_025 
     • Python_025

No hay comentarios:

Publicar un comentario