Consulta también:
- Calculadora en pascal
- Descargar calculadora para pc - Programas - Calculadoras
- Calculadora de asistencia a clases ✓ - Foro Ofimático
- Calculadora windows 10 no abre - Guide
- Como hallar un porcentaje de asistencias.. ✓ - Foro Excel
- Calcular el porcentaje de asistencia a una reunión ✓ - Foro Ofimático
4 respuestas
Hola. Te dejo el código de una calculadora simple. Puedes usar números con decimales, también convierte decimales a binarios. Suerte!
Program calcu;
Uses Crt;
Var
Num1 : real;
Num2 : real;
Resultado : real;
Opcion : string;
Procedure Repita;
Begin
ClrScr; TextColor(10);
writeLn(' <<<<<< CALCULADORA. (Everest32.com) >>>>>>');
Writeln ('1: Sumar');
Writeln ('2: Restar');
Writeln ('3: Multiplicar');
Writeln ('4: Dividir');
Writeln ('5: Decimal a binario');
Writeln;
Writeln ('Escriba su opcion: '); writeln;
End;
Procedure Suma;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2) ;
Resultado :=(Num1 + Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End;
Procedure Resta;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2);
Resultado := (Num1 - Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End ;
Procedure Multiplica;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2);
Resultado := (Num1 * Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End ;
Procedure Divide;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2);
Resultado := (Num1 / Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End ;
Procedure Dec_a_Bin;
var I, Cociente, Contador: integer;
NumeroBin: array[1..16] of integer;
CadenaBin,CadenaTemp: string;
Begin
Contador := 1; CadenaBin := '';
For I := 1 to 16 do NumeroBin[I] := 0;
Write ('Ingrese numero a convertir: ');
Readln(Cociente);
Repeat
NumeroBin[Contador] := Cociente mod 2;
Contador := Contador + 1;
Cociente := Cociente div 2;
Until Cociente < 1;
TextColor(6); writeln; writeln('Resultado: ');
For I := 16 downto 1 do write(NumeroBin[I]);
End;
Begin
Repeat
Repita;
Readln(opcion); writeln;
If opcion = '1' then Suma;
If opcion = '2' then Resta;
If opcion = '3' then Multiplica;
If opcion = '4' then Divide;
if opcion = '5' then Dec_a_Bin;
TextColor(10); Writeln; Writeln('¨Desea continuar? (s/n)');
Readln(opcion);
until (opcion = 'n') or (opcion = 'N');
End.
Program calcu;
Uses Crt;
Var
Num1 : real;
Num2 : real;
Resultado : real;
Opcion : string;
Procedure Repita;
Begin
ClrScr; TextColor(10);
writeLn(' <<<<<< CALCULADORA. (Everest32.com) >>>>>>');
Writeln ('1: Sumar');
Writeln ('2: Restar');
Writeln ('3: Multiplicar');
Writeln ('4: Dividir');
Writeln ('5: Decimal a binario');
Writeln;
Writeln ('Escriba su opcion: '); writeln;
End;
Procedure Suma;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2) ;
Resultado :=(Num1 + Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End;
Procedure Resta;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2);
Resultado := (Num1 - Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End ;
Procedure Multiplica;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2);
Resultado := (Num1 * Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End ;
Procedure Divide;
Begin
Write ('Ingrese primer numero: ');
Readln(Num1);
Write ('Ingrese segundo numero: ');
Readln(Num2);
Resultado := (Num1 / Num2);
TextColor(6); writeln; writeln('Resultado: ', Resultado:0:8);
End ;
Procedure Dec_a_Bin;
var I, Cociente, Contador: integer;
NumeroBin: array[1..16] of integer;
CadenaBin,CadenaTemp: string;
Begin
Contador := 1; CadenaBin := '';
For I := 1 to 16 do NumeroBin[I] := 0;
Write ('Ingrese numero a convertir: ');
Readln(Cociente);
Repeat
NumeroBin[Contador] := Cociente mod 2;
Contador := Contador + 1;
Cociente := Cociente div 2;
Until Cociente < 1;
TextColor(6); writeln; writeln('Resultado: ');
For I := 16 downto 1 do write(NumeroBin[I]);
End;
Begin
Repeat
Repita;
Readln(opcion); writeln;
If opcion = '1' then Suma;
If opcion = '2' then Resta;
If opcion = '3' then Multiplica;
If opcion = '4' then Divide;
if opcion = '5' then Dec_a_Bin;
TextColor(10); Writeln; Writeln('¨Desea continuar? (s/n)');
Readln(opcion);
until (opcion = 'n') or (opcion = 'N');
End.
24 abr 2010 a las 21:20
Error 3: Unknown identifier
hice todo lo que pusiste
25 abr 2010 a las 06:19
También toma en cuenta que este código es para Turbo Pascal. No lo he probado con Free Pascal.
Acabo de copiar y pegar el código en un archivo.pas y compila y funciona bien.