Pascal/Turbo Pascal - Problema de cifras en pascal

 
Vista:

Problema de cifras en pascal

Publicado por Maveves (1 intervención) el 19/11/2009 17:43:28
Hola!
Me gustaría saber cómo hacer un programa en Pascal que me calcule lo siguiente. Si introduzco el año 1979 el programa me debe devolver las dos primeras cifras, es decir, 19. Si introduzco el año 1518 el programa me devuelve la cifra 15.

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Problema de cifras en pascal

Publicado por Cacho (7 intervenciones) el 19/11/2009 23:25:30
TRUNC(TuNumero/100)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema de cifras en pascal

Publicado por BrunoBsso (10 intervenciones) el 22/11/2009 01:33:46
Esto yo te lo respondi en emagister...
Es un pokito mas practico ke el de cacho... sobretodo porke el de cacho solo sirve para numeros de 4 cifras...

program Pedro;

uses
Crt;

function TratarComoString(Num:String):String;
begin
if Length(Num)>=2 then {Para contemplar solo los casos que almacenen 2 cifras}
TratarComoString:='Las primeras 2 cifras son: '+Num[1]+Num[2]
else
TratarComoString:='Invalido. Ingrese numeros de 2 o mas cifras';
end;

function TratarConDivMod(Num:Integer):Integer;
begin
if Num>=10 then begin {Para contemplar solo los casos que almacenen 2 cifras}
while Num>99 do
Num:=Num DIV 10;
TratarConDivMod:=Num;
end
else
TratarConDivMod:=0;
end;

procedure SetOpcion(NumeroOpcion:Char);
var
NumS:String;
NumI:Integer;
begin
if NOT(NumeroOpcion='0') then begin
Write('Ingrese un numero de 2 o mas cifras: ');
case NumeroOpcion of
'1': begin
Readln(NumS);
Writeln(TratarComoString(NumS));
end;
'2': begin
Readln(NumI);
Writeln(TratarConDivMod(NumI));
end;
end;
end;
end;

function OpcionValida(Op:Char):Boolean;
begin
OpcionValida:=(Op='0') or (Op='1') or (Op='2');
end;

var
Opcion:Char;
begin
Opcion:='a';
while NOT(OpcionValida(Opcion)) do begin
ClrScr; {Para limpiar la pantalla antes de trabajar. Usa la unit CRT}
Writeln('Opcion 0: Salir');
Writeln('Opcion 1: Tratar los numeros como texto');
Writeln('Opcion 2: Tratar con operadores DIV y MOD');
Writeln;
Write('Seleccione su opcion: ');
Readln(Opcion);
Writeln;
end;
SetOpcion(Opcion);
Writeln;
Write('Presione ENTER para salir... ');
Readln;
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar