Pascal/Turbo Pascal - convertir a euros pascal

 
Vista:

convertir a euros pascal

Publicado por davo (26 intervenciones) el 02/12/2012 18:10:45
Hola estoy intentando hacer un programa que cambie de euros a pesestas y viceversas mediante dos funciones.
He realizado este codigo y no me deja compilarlo le he dado vueltas y no consigo que me compile
Me puede decir alguien cual es el fallo?. Muchas gracias.Saludos a todos.

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
43
program convertir_euros_pesetas;
  const
  euro= 166.368;                    (*constante valor de 1 euro*)
 
var
   cantidad:real;                (*variable cantidad de euros o pesetas *)
   opcion:integer;
function calcula_euros (cantidad:real):real;
var
total:real;     (*funcion que calcula los euros*)
begin
write('Introduce una cantidad en euros ');
readln (cantidad);
total:=(cantidad/euro);
write('Son ',total,' euros');
calcula_euros:=total;
end;
function calcula_pesetas (cantidad:real):real;
var
total1:real;   (*funcion que calcula las pesetas*)
begin
write('Introduce una cantidad en pesetas: ');
readln(cantidad);
total1:=(cantidad*euro);
 write('Son ',total1,' pesetas');
 calcula_pesetas:=total1;
begin
 
write ('Para convertir: ');
writeln('1. Pasar de pesetas a euros.');
writeln('2. Pasar de euros a pesetas.');
readln (opcion);
 
if (opcion=1) then
 
calcula_euros(cantidad)
 
 else
 calcula_pesetas(cantidad);
end;
 
 
end.
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

convertir a euros pascal

Publicado por ramon (2158 intervenciones) el 03/12/2012 22:17:05
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
43
44
45
46
47
48
49
{A ver si esto te sirve de ayuda}
 
function realstring(r : real) : string;
  var
     dac1, dac : string[15];
     i : integer;
     salida : boolean;
  begin
      str(r:12:3,dac);
   i := 1;
   salida := false;
   repeat
     if dac[i] <> '.' then
     begin
         dac1[0] := chr(i);
         dac1[i] := dac[i];
         inc(i);
     end
   else
      begin
          if (dac[i + 1] <> '0') or (dac[i + 2] <> '0') then
          begin
             realstring := dac;
             salida := true;
          end
        else
           begin
              realstring := dac1;
              salida := true;
           end;
      end;
   until salida = true;
  end;
 
function pesetas_a_euros(pesetas : real) : string;
  var
     eur : string[15];
  begin
      eur := realstring(pesetas / 166.386);
      pesetas_a_euros := eur;
  end;
 
  function euros_a_pesetas(eurosx : real) : string;
  var
     peseta : string[15];
  begin
      peseta := realstring(eurosx * 166.386);
      euros_a_pesetas := peseta;
  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