Programación General > Pascal

 Ejercicio Con While

(1/1)

lau82:
Escribir un programa en Pascal que realice un bucle con While y muestre
en pantalla del 1 al 10.

PROGRAM EJER;
        USES CRT;
        VAR x:INTEGER;
BEGIN
     x:=0;

     ClrScr;

     WHILE X <= 10 DO
     BEGIN
          WRITELN (x);
          x:=x+1;

     END;
END.

Dudas:
¿Porque se usa un begin despues del while?
¿Que vendria a significar esta sentencia, como se veria en pantalla?
WHILE X <= 10 DO
     BEGIN
          WRITELN (x);
          x:=x+1;

     END;    

y el x:=x+1 porque se pone?
Perdonen si son tontas las preguntas, pero empezamos a ver while y encontre un ejercicio y los trate de entender, pero no logro entender  como se arman ni lo que significan.

LAURA

Perrero:
Mmmmmmmmm, vamos a ver si te puedo ayudar aunque sea un poquito.


--- Código: Text --- X:= 1; WHILE (X &#60;= 10) DO   {Mientras X es menor o igual a 10 hacer...   BEGIN     WRITELN (x);  {Imprimimos en pantalla x}     x:=x+1;         {ahora al valor de x le aumentamos en uno, puede ser tbm inc(X)}                             {Es decir si X antes valia 1 ahora va a valer 2}   END;  
1.El Begin despues del While se pone por que va a leer mas de una instruccion y/o linea, pero como en este caso va a ejecutar dos instrucciones (va a leer dos lineas) tenemos que "encerrarlos" con el begin y el end, ya que todo lo que vaya hay, sera ejecutado mientras se cumpla la condicion del While.

2. Lo de la salida en pantalla, supongo que ya lo debiste a ver visto por tus propios ojos, te imprimiria esto:

0
1
2
3
4
5
6
7
8
9
10

OJO: no te imprime desde 1, sino desde sero, ya que inizializaste el valor de X en cero. Para que se inizialize en uno dejando que se inizialize en cero, en While tienes que poner antes del Writeln X:= X+1.

3. El X:= X+1 o tbm Inc(X), se pone xq quieres incrementar de uno en uno el valor de X, si no pusieras esa condicion el programa nunca terminaria, se iria al infinito, ya que solo se detendria cuando X sea mayor a 10 y eso nunca va a suceder ya que el valor de X siempre va a ser cero.

Webo, espero a ver ayudado en algo y si quizas me equivoque en algo, pues les agradeceria que me corrijan....bye  :hola:

lau82:
Y es lo mismo  usar For encambio de While o cambia? Significa lo mismo? Lo muestra igual por pantalla?
por ejemplo:

PROGRAM EJER44;
        USES CRT;

        VAR x:INTEGER;
BEGIN

     ClrScr;

     FOR x:=0 TO 10 DO
              WRITELN (x);

END.

gracias.
sldos

LAURA

Perrero:
Sip, seria lo mismo, en este caso no tienes que incrementar el valor de X, ya que el mismo for se encarga de hacerlo, en ese caso te imprimiria numeros del 0 al 10. En el caso del While las instrucciones se ejecutan, hasta que la condicion sea FALSE, y no sabes cuantas veces se va a ejecutar (para este ejemplo si lo sabes, pero en otros problemas no), solo sabes que lo va hacer mientras sea TRUE.

juancpalmajr:

--- Cita de: "lau82" --- Escribir un programa en Pascal que realice un bucle con While y muestre
en pantalla del 1 al 10.
--- Fin de la cita ---
es asi:

--- Código: Text ---   i:=0;   While (i&#60;&#62;10) Do Begin     i:=i+1;     Writeln (i);  End;  Writeln ('i es igual a 10, salio del ciclo');  

Navegación

[0] Índice de Mensajes

Ir a la versión completa