Pascal/Turbo Pascal - programa que transforme la base 2 a 16 en base 10

 
Vista:
sin imagen de perfil

programa que transforme la base 2 a 16 en base 10

Publicado por tammara (5 intervenciones) el 05/09/2017 21:51:47
hola, tengo que hacer un programa que transforme la base 2 a 16 en base 10 pero tengo un problema ejecuto una vez el problema y me lo calcula bien a la siguiente linea le pongo otra base con otro numero y me lo calcula mal no se cual es el problema si el primer numero que le puse me lo calculo bien.
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
50
51
52
53
54
55
56
57
58
PROGRAM calcula;
CONST
     maxlargo=6;
VAR
   d,c,cont,base:integer;
   caracter:char;
BEGIN
    base:=0;
    c:=0;
    read(caracter);
   while (caracter<>'$') do
  begin
    while (caracter<>':') do
            begin
             base:=ord(caracter)-ord('0')+base*10;
             read(caracter);
            end;
         if (caracter=':') then
             begin
                  read(caracter);
                   C:=C+1;
                 case caracter of
                   'A':cont:=10;
                   'B':cont:=11;
                   'C':cont:=12;
                   'D':cont:=13;
                   'E':cont:=14;
                   'F':cont:=15;
                    else
                      cont:=ord(caracter)-ord('0');
                 end;
              end;
                  read(caracter);
                  while (caracter<>'.') do
                      begin
                         c:=c+1;
                          case caracter of
                                   'A':d:=10;
                                   'B':d:=11;
                                   'C':d:=12;
                                   'D':d:=13;
                                   'E':d:=14;
                                   'F':d:=15;
                                  else
                                    d:=ord(caracter)-ord('0');
                            end;
                                      cont:=cont*base+d;
                                      read(caracter)
 
                      end;
             readln();
             if (c>maxlargo) then
                 write('ERROR')
               else
                write(cont);
 
 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

programa que transforme la base 2 a 16 en base 10

Publicado por missdaisy (1 intervención) el 08/09/2017 01:13:15
Te recomiendo que saques esto de aca antes que unos de los profesores de la fing lo vean y que cambies el codigo por si lo vieron ya si n o estas en el horno .
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar
sin imagen de perfil

programa que transforme la base 2 a 16 en base 10

Publicado por juana (5 intervenciones) el 08/09/2017 11:57:54
Por favor podrian borrar esto me va a traer problemas y no era mi intension, por favor realmente lo necesito :(, no quiero pasar un mal monento
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