pascal: ";" expected but "ELSE" found pero no lo entiendo

Iniciado por lolaiza, 27 Abril 2018, 00:19 AM

0 Miembros y 1 Visitante están viendo este tema.

lolaiza

ejercicio2.pas:21 Fatal: Syntax error, ";" expected but "ELSE" found


program procedimientos;  


procedure EliminarRepetidos (var A, B, C, D, E:  pila);
begin
if not pilavacia (A) and not pilavacia (B) then
    while not pilavacia (A) do
      if tope(A )= tope(B) then
       apilar (D, desapilar (A));
      else
       apilar (E, desapilar (A));
     apilar (E, desapilar (B));
   else
    if not pilavacia (A) then
      apilar (C, desapilar (A);
     else
      apilar (C, desapilar(B));

end;

engel lex

#1
Código (Pascal) [Seleccionar]
procedure EliminarRepetidos (var A, B, C, D, E:  pila);
begin
 if not pilavacia (A) and not pilavacia (B) then
   while not pilavacia (A) do
     if tope(A )= tope(B) then
      apilar (D, desapilar (A)) <--------------- Error de sintaxis, se esperaba ";" pero se consiguió "else"
     else
      apilar (E, desapilar (A));
  apilar (E, desapilar (B));
  else
   if not pilavacia (A) then
     apilar (C, desapilar (A);
    else
     apilar (C, desapilar(B));
end;



tema corregido (los codigos deben llevar etiquetas GeSHi) y elimiado el otro tema por ser duplicado
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

lolaiza


Serapis

La sentencia 'while', exige una 'repeat', y no una 'else'

...y por favor, cuando pongas código sea del lenguaje que sea, usa las 'etiqeutas GESHI, que aparece en la ventana de redacción del mensaje... eliges el lenguaje adecuado y pegas el código, dentro así resultará más claro y legible.

(las etiquetas también puedes escribirlas a mano... son las siguientes, he añadido un espacio después de '[' para que resulten visibles).

[ code=pascal]
  Tu código aquí dentro...
[ /code]