Ayudaaa Urgente _Necesito Hacer un Robot Interactivo En Turbo pascal
Publicado por CaRLOS (3 intervenciones) el 23/05/2016 14:43:54
Quien me puede ayudar hacr um robot interactivo en turbo pascal..!!
Valora esta pregunta


0
{Mira Este pequeño ejemplo de como seria pero empleando archivo tanto para las preguntas como para las respuestas}
program elrobot;
uses
crt;
const
lapregunta : array[1..10] of string[50] = (
('Cuantos Bit Tiene Un Byte'),
(''),(''),(''),(''),(''),(''),(''),(''),(''));
respuestas : array[1..10] of integer = (
(8),(0),(0),(0),(0),(0),(0),(0),(0),(0));
paso1 : array[1..14,1..11] of byte = (
(0,0,0,0,1,1,1,0,0,0,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,1,0,0,0,1,0,1,0,0),
(0,0,1,0,0,0,0,0,1,1,0),
(0,0,1,0,0,1,1,0,1,0,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,0,0,1,1,1,0,0,0,0),
(0,0,0,0,1,0,1,0,0,0,0),
(0,0,0,1,1,0,1,1,0,0,0),
(0,0,1,0,1,0,1,0,1,0,0),
(0,1,0,0,1,1,1,0,0,1,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,0,1,0,0,1,0,0,0,0),
(0,0,0,1,1,0,1,1,0,0,0));
paso2 : array[1..14,1..11] of byte = (
(0,0,0,0,1,1,1,0,0,0,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,1,0,0,0,1,0,1,0,0),
(0,0,1,0,0,0,0,0,1,1,0),
(0,0,1,0,0,1,1,0,1,0,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,0,0,1,1,1,0,0,0,0),
(0,0,0,0,1,0,1,0,0,0,0),
(0,0,0,1,1,0,1,1,0,0,0),
(0,0,1,0,1,0,1,0,1,0,0),
(0,1,0,0,0,1,0,0,0,1,0),
(0,0,0,0,1,0,1,0,0,0,0),
(0,0,0,1,0,1,0,0,0,0,0),
(0,0,0,1,1,1,1,0,0,0,0));
paso3 : array[1..14,1..11] of byte = (
(0,0,0,0,1,1,1,0,0,0,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,1,0,0,0,1,0,1,0,0),
(0,0,1,0,0,0,0,0,1,1,0),
(0,0,1,0,0,1,1,0,1,0,0),
(0,0,0,1,0,0,0,1,0,0,0),
(0,0,0,0,1,1,1,0,0,0,0),
(0,0,0,0,1,0,1,0,0,0,0),
(0,0,0,1,1,0,1,1,0,0,0),
(0,0,1,0,1,0,1,0,1,0,0),
(0,1,0,0,0,1,0,0,0,1,0),
(0,0,0,0,1,1,0,0,0,0,0),
(0,0,0,0,1,0,1,0,0,0,0),
(0,0,0,0,1,1,1,1,0,0,0));
tex : string[13] = ' La Respuesta';
var
resp, abx, aby, modoinicio : integer;
n, g, x, y, h, l : integer;
procedure anulapasos(ax, ay : integer);
begin
for h := 1 to 14 do
for l := 1 to 11 do
begin
gotoxy(ax + l,ay + h);write(' ');
end;
end;
procedure presenta1(px, py : integer);
begin
for h := 1 to 14 do
for l := 1 to 11 do
begin
if paso1[h,l] = 1 then
begin
gotoxy(px + l,py + h);write('#');
end;
end;
delay(160);
end;
procedure presenta2(px, py : integer);
begin
for h := 1 to 14 do
for l := 1 to 11 do
begin
if paso2[h,l] = 1 then
begin
gotoxy(px + l,py + h);write('#');
end;
end;
delay(160);
end;
procedure presenta3(px, py : integer);
begin
for h := 1 to 14 do
for l := 1 to 11 do
begin
if paso3[h,l] = 1 then
begin
gotoxy(px + l,py + h);write('#');
end;
end;
delay(160);
end;
begin
modoinicio := lastmode;
textmode(c80 + font8x8);
clrscr;
abx := 2;
aby := 2;
n := 1;
gotoxy(2,40);write('Pregunta = ',lapregunta[n]);
repeat
anulapasos(abx,aby);
presenta1(abx,aby);
if abx > 50 then
begin
anulapasos(abx,aby);
for g := 1 to length(tex) do
begin
gotoxy((abx + 11) + g,aby + 5);write(' ');
end;
abx := 2;
end
else
inc(abx,1);
anulapasos(abx,aby);
presenta2(abx,aby);
anulapasos(abx,aby);
inc(abx,1);
presenta3(abx,aby);
anulapasos(abx,aby);
for g := 1 to length(tex) do
begin
gotoxy((abx + 11) + g,aby + 5);write(tex[g]);
end;
until keypressed;
resp := ord(readkey) - 48;
if resp = respuestas[1] then
begin
gotoxy(2,45);write('La Respuesta Es Cierta Se Compone De ',
respuestas[1]);
end
else
begin
gotoxy(2,45);write('La Respuesta Es Incierta Se Compone De ',
respuestas[1],' Y No De ',resp);
end;
readkey;
textmode(modoinicio);
end.