
[DUDA] Ciclo while, condicion adentro.
Publicado por Juan Martin (8 intervenciones) el 02/09/2014 17:54:42
Buenas compañero, estoy con un problema en este codigo, planteo el problemas mas abajo, codigo:
WHILE (sum_Dados <> 7) AND (sum_Dados <> punto) DO
BEGIN
writeln('':5,'Tirada [',apuesta_Inicial,'] --> ',dado1,' ',dado2);
IF (sum_Dados = punto) THEN
BEGIN
writeln('Gana');
writeln;
capital := capital + apuesta_Inicial;
cont_Jugadas := cont_Jugadas + 1;
writeln('Capital: ', capital);
writeln
END
ELSE IF (sum_Dados = 7) THEN
BEGIN
writeln('Pierde');
writeln;
capital := capital - apuesta_Inicial;
cont_Jugadas := cont_Jugadas + 1;
writeln('Capital: ', capital);
writeln
END;
ELSE
BEGIN
apuesta_Inicial := apuesta_Inicial + 5;
dado1 := random(6) + 1;
dado2 := random(6) + 1;
sum_Dados := dado1 + dado2;
END;
END;
Se trata de una fragmento de codigo de un juego, mi problema es que los condicionales if como que no funcionan, no procesas lo que necesito saber, es como que realiza el ciclo las veces expuestas en el while y no me ejecuta las condiciones. Desde ya, muchas gracias.
WHILE (sum_Dados <> 7) AND (sum_Dados <> punto) DO
BEGIN
writeln('':5,'Tirada [',apuesta_Inicial,'] --> ',dado1,' ',dado2);
IF (sum_Dados = punto) THEN
BEGIN
writeln('Gana');
writeln;
capital := capital + apuesta_Inicial;
cont_Jugadas := cont_Jugadas + 1;
writeln('Capital: ', capital);
writeln
END
ELSE IF (sum_Dados = 7) THEN
BEGIN
writeln('Pierde');
writeln;
capital := capital - apuesta_Inicial;
cont_Jugadas := cont_Jugadas + 1;
writeln('Capital: ', capital);
writeln
END;
ELSE
BEGIN
apuesta_Inicial := apuesta_Inicial + 5;
dado1 := random(6) + 1;
dado2 := random(6) + 1;
sum_Dados := dado1 + dado2;
END;
END;
Se trata de una fragmento de codigo de un juego, mi problema es que los condicionales if como que no funcionan, no procesas lo que necesito saber, es como que realiza el ciclo las veces expuestas en el while y no me ejecuta las condiciones. Desde ya, muchas gracias.
Valora esta pregunta


0