Buscando respuestas de expertos en programación (PASCAL)
Todos están simulados
1.
var n,m,k,k1,k2,i,st,en:longint;
a:array[1..500] de booleano;
b0:boolean;
comenzar
readln(n,m);
p>fillchar(a,sizeof(a),1);
si m=1 entonces comienza writeln(n);
k:= 0; ;
k2:=n;
st:=1; en:=n;
repetir
si no es b0 entonces inc (k) else dec(k);
si k>en entonces comienza k:=en-1; b0:=true;
si k si a[k] entonces inc(k1); si k1=m entonces comienza k1:=0; a[k]:=false; writeln(k); si st=k entonces comienza inc(st) ; k:=st-1; b0:=not b0; end; si en=k entonces comienza dec(en); b0:=not b0; p> dec(k2); si k2=1 entonces romper; fin; hasta falso; para i:=1 an hacer si a[i] entonces writeln(i); end. 2. var n:longint res:int64; comenzar readln(n); repetir si n<10 entonces writeln(n) else write(n,' '); si n<10 entonces romper; res:=1; repetir p > res:=res*(n mod 10); n:=n div 10; si n=0 entonces romper; hasta falso; n:=res; hasta falso; fin.