Tablero en pascal !
Publicado por Sabrina (9 intervenciones) el 09/07/2016 08:38:16
Hola! Hice este programa pero no puedo hacer que se dibuje el recorrido en el tablero.
Si alguien me puede ayudar seria genial.
necesito que la primera vez me marque la posicion inicial del robot con una 'X' y despues con una 'x' por cada casilla que pase hasta la posicion final, que tiene que marcar una 'X'.
No tengo idea de como ingresar el caracter en la casilla .
Si alguien me puede ayudar seria genial.
necesito que la primera vez me marque la posicion inicial del robot con una 'X' y despues con una 'x' por cada casilla que pase hasta la posicion final, que tiene que marcar una 'X'.
No tengo idea de como ingresar el caracter en la casilla .
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
Program Robot(output,input);
Uses crt;
Const filas=20;
columnas=20;
simbolo: array [0..2] of char = (' ', 'x', 'X');
Var H:integer;
tablero:array[1..filas,1..columnas] of integer;
Procedure IndiquePOS;
VAR J,I:INTEGER;
Begin
WRITE('Ingrese la fila: ');
READLN(i);
write('Ingrese la columna: ');
readln(j);
END;
Procedure Baston;
var J,I,D,W:integer;
secuencia:string[25];
mando:array[1..25] of char;
Begin
writeln('');
writeln(' (Arriba)');
writeln(' N ');
writeln(' (Izquierda) O E (Derecha)');
writeln(' S ');
writeln(' (Abajo)');writeln('');
writeln('Ingrese en MAYUSCULAS, la secuencia de movimiento: ');
read(secuencia);
mando:=secuencia;
for D:= 1 to 20 do
begin
if mando[D]='E' then
i:=i+1
else
if mando[D]='O' then
i:=i-1;
end;
for W:= 1 to 20 do
begin
if mando[W]='N' then
j:=j+1
else
if mando[W]='S' then
j:=j-1
end;
write('Fila: ',i);
writeln(' Columna: ',j);
end;
Procedure DibujarTablero;
var
F, C: integer;
begin
WriteLn;
WriteLn('-------------------------------------------------------------');
for F := 1 to 20 do
begin
Write('|');
for C := 1 to 20 do
Write(' '+simbolo[tablero[F,C]]+'|');
WriteLn;
WriteLn('-------------------------------------------------------------');
end
end;
Begin
Repeat
Begin
H:=H+1;
IndiquePOS;
DibujarTablero;
Baston;
DibujarTablero;
end;
until H=5 ;
readkey;
end.
Valora esta pregunta


0