Mmmmmmmmm, vamos a ver si te puedo ayudar aunque sea un poquito.
X:= 1;
WHILE (X <= 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