• Domingo 22 de Diciembre de 2024, 17:11

Autor Tema:  No Me Compila ....  (Leído 1669 veces)

rodo1985

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
No Me Compila ....
« en: Jueves 10 de Mayo de 2007, 15:33 »
0
hola que tal , programe lo siguiente y no compila....



Código: Text
  1.  
  2.  
  3. program calculo_de_raiz;
  4. var
  5. a,b,c,d,raiz1,raiz2:real;
  6. begin
  7. writeln ('ingrese los tres valores de la ecuacion');
  8. readln (a,b,c);
  9. d:=(b*b)-(4*a*c);
  10.  if d<0 then
  11.  begin
  12.  writeln ('las raices son imaginarias');
  13.  end
  14.  else
  15.  begin
  16.   if d>=0 then
  17.   begin
  18.    raiz1:=(-b+d)/2*a;
  19.    raiz2:=(-b-d)/2*a;
  20.    writeln ('las raices son');
  21.    writeln ('el valor de la primera raiz es :' raiz1);
  22.    writeln ('el valor de la segunda raiz es :' raiz2);
  23.   end;
  24.  end;
  25. end.
  26.  
  27.  
  28.  


cuando compilo me pone :

error syntax ¨)¨  identifier raiz1

rodo1985

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: No Me Compila ....
« Respuesta #1 en: Jueves 10 de Mayo de 2007, 15:46 »
0
AAAAAAA!!!!!!!!!!!!!! me comi la coma en el writeln de la raiz ....

Código: Text
  1.  
  2. program calculo_de_raiz;
  3. var
  4. a,b,c,d,raiz1,raiz2:integer;
  5. begin
  6. writeln ('ingrese los tres valores de la ecuaciona');
  7. writeln ('ingrese a , b ,c' );
  8. readln (a,b,c);
  9. d:=((b*b)-(4*a*c))**(1/2);
  10.  if d<0 then
  11.  begin
  12.  writeln ('las raices son imaginarias');
  13.  end
  14.  else
  15.   begin
  16.   if d>=0 then
  17.    begin
  18.    raiz1:=(-b+d)/(2*a);
  19.    raiz2:=(-b-d)/(2*a);
  20.    writeln ('las raices son');
  21.    writeln ('el valor de la primera raiz es :', raiz1);
  22.    writeln ('el valor de la segunda raiz es :', raiz2);
  23.    end;
  24.  end;
  25.  readln;
  26. end.
  27.  
  28.  
  29.  
  30.  
una consulta cuando el free pascal te marca error como puedo saber sobre que linea del codigo esta dicho error .......

no compila cuando agrego lo de la raiz ()**(1/2)...

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: No Me Compila ....
« Respuesta #2 en: Jueves 10 de Mayo de 2007, 21:35 »
0
De seguro es porque la variable "d", "raiz1" y "raiz2" deben ser de tipo Real
Código: Text
  1.  
  2.  d, raiz1, raiz2: Real;
  3.  
  4.  
Creo que con eso ya quedaria resuelto.
Es que el operador "/" se usa para diviciones reales, si quieres dividir enteros, debes usar "div" pero olvidate de lo que sige despues de lo coma.

rodo1985

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: No Me Compila ....
« Respuesta #3 en: Jueves 10 de Mayo de 2007, 22:11 »
0
gracias por responder enko

mira esto este es otro cuando compilo me pone ¨error illegal expression¨

como que hay una ilegal exprecion pero donde ??

Código: Text
  1.  
  2.  
  3. program promedios;
  4. var a,b,c,d,e,pg1,pg2,max,max2:real;
  5.     x,y,i,nl:integer;
  6.  
  7. begin
  8.  
  9.  writeln ('ingrese el numero de legajo:');
  10.  readln (nl);
  11.  writeln ('ingrese los cinco promedios:');
  12.  readln (a,b,c,d,e);
  13.  pg1:=(a+b+c+d+e)/5;
  14.  max:=pg1;
  15.  x:=nl;
  16.  
  17.  writeln ('ingrese el numero de legajo:');
  18.  readln (nl);
  19.  writeln ('ingrese los cinco promedios:');
  20.  readln (a,b,c,d,e);
  21.  pg2:=(a+b+c+d+e)/5;
  22.  max2:=pg2;
  23.  y:=nl;
  24.  
  25.  for i:=3 to 5 do
  26.  begin
  27.  
  28.   writeln ('ingrese el numero de legajo:');
  29.   readln (nl);
  30.   writeln ('ingrese los cinco promedios:');
  31.   readln (a,b,c,d,e);
  32.   pg1:=(a+b+c+d+e)/5;
  33.  
  34.   if pg1>max then
  35.   begin
  36.  
  37.     max:=pg1;
  38.     x:=nl;
  39.  
  40.   end
  41.   else
  42.   begin
  43.  
  44.    if pg1>max2 then
  45.    begin
  46.  
  47.      max2=pg1;
  48.      y:=nl;
  49.  
  50.    end;
  51.  
  52.   end;
  53.  
  54.  end;
  55.  
  56.  writeln ('los valores maximos son:', max,max2);
  57.  writeln ('los numeros de legajo son:', x,y);
  58.  
  59.  readln;
  60.  
  61. end.
  62.  
  63.  
  64.  

rodo1985

  • Nuevo Miembro
  • *
  • Mensajes: 8
    • Ver Perfil
Re: No Me Compila ....
« Respuesta #4 en: Jueves 10 de Mayo de 2007, 23:21 »
0
:devil:  aaaa!!! me falto poner a max2=pg1; los dos :..


 :lol: ahora siiiiii funca carajo VAMOS!!!!!

 :comp: