[właśnie chciałem poprawić text, ale trafił do kosza :/, sformatowałem kod z użyciem dołączonego programu, tagów goto nie chce na razie usuwać bo boje się że coś mi się pomiesza :D, mam nadzieję że teraz jest dobrze, jak nie to poprawię]
Wraz z kolegą, piszemy program, którego celem jest wypisywanie tekstu w losowych miejscach na ekranie, problem jest w tym, że tekst pojawia się tylko w jednym miejscu i od czasu do czasu mignie. Wiem jest błąd że i nie jest inkrementowane a pętla for zamiast sprawdzać jednocześnie x i y sprawdza tylko x, ale poprawa tego nic nie dała ^^. Gdzie popełniliśmy błąd?
program losowytekst;
uses
Crt;
var
x, y, i, k, f : integer;
var
x_bylo : array [1..250] of integer;
var
y_bylo : array [1..250] of integer;
label
1, 2, 3, 4;
begin
WriteLn('TEXT IN RANDOM PLACE');
WriteLn('Authors: Robert Niemiec & Bartosz Hnat');
WriteLn('Press [ENTER] to start...');
ReadLn;
i := 0;
Randomize;
repeat
clrscr;
1:
begin
{Losuj X}
x := Random(480);
x_bylo[i] := x;
if (i <> 0) then
goto 3;
end;
2:
begin
{Losuj Y}
y := Random(680);
y_bylo[i] := y;
if (i <> 0) then
goto 3;
end;
3:
begin
for k := 1 to 480 do
if (x = x_bylo[k]) then
goto 1
else
goto 4;
for f := 1 to 680 do
if (y = y_bylo[k]) then
goto 2
else
goto 4;
end;
4:
begin
gotoxy(x, y);
textcolor(Random(16) + 1);
Write('Fuck you world');
gotoxy(x, y);
delay(100);
if (keypressed = True) then
begin
break;
end;
end;
until keypressed;
ReadLn;
end.