sábado 29 de agosto de 2009

Dibujando un cuadrado


{
Dibuja un cuadrado en forma secuencial.

Nuevas funciones:
* gotoxy(x: int, y: int)
ubica el puntero (no flecha) en las coordenadas ingresadas
* delay(ms: int)
retrasa el programa por x milisegundos (1 seg = 1000 ms)
}

program HelloWorldSquare;

uses
crt;

var
y, x, f_x, f_y, t_x, t_y: integer;

{
f_* = desde, from
t_* = hasta, to
}

begin
clrscr;
f_x := 20; f_y := 10;
t_x := f_x + 20; t_y := f_y + 10;
for x := f_x to t_x do
begin
gotoxy(x, f_y);
write('#');
delay(500);
end;
for y := f_y to t_y do
begin
gotoxy(t_x, y);
write('#');
delay(500);
end;
for x := t_x downto f_x do
begin
gotoxy(x, t_y);
write('#');
delay(500);
end;
for y := t_y downto f_y do
begin
gotoxy(f_x, y);
write('#');
delay(500);
end;
writeln;
end.

Presione ESC para salir


program Escape;

uses
crt;

var
i: integer;

begin
writeln('Para salir del programa presione [ESC] cuando el programa diga que tipo de numero ingreso.');
repeat
write('Ingrese numero: ');
readln(i);
if(i >= 0) then
writeln('Positivo!')
else
writeln('Negativo!');
until(ord(readkey) = 27);
end.