Mam taki problem, mam do napisania prace zaliczeniową w pascalu, mianowicie mam napisać program wyświetlający test z 8 pytaniami i 3 odpowiedziami które będą wyświetlane losowo i zapisujący ten test w pliku. program jako taki już mam ale niestety pytania się powtarzają nie wiem jak zrobić by uniknąć powtórzeń, niżej zamieściłem kod, proszę o pomoc
Kod proszę umieszczać w znacznikach code - krzychoocpp
program test;
uses crt;
type
pytanie=record
pytanie,a,b,c:string;
oznaczono:boolean;
end;
var
pytania:array[1..8] of pytanie;
i,j,x:integer;
plik: text;
begin
pytania[1].pytanie:='Jaki jest wynik działania 2+2:';
pytania[1].a:='3';
pytania[1].b:='4';
pytania[1].c:='5';
pytania[2].pytanie:='Jaki jest wynik działania 2+2*2:';
pytania[2].a:='6';
pytania[2].b:='8';
pytania[2].c:='10';
pytania[3].pytanie:='Co to jest if:';
pytania[3].a:='zwrot';
pytania[3].b:='jesli';
pytania[3].c:='petla';
pytania[4].pytanie:='Co to jest Pascal:';
pytania[4].a:='program';
pytania[4].b:='kucharz';
pytania[4].c:='kompilator';
pytania[5].pytanie:='Co oznacza slowo Begin?:';
pytania[5].a:='poczatek';
pytania[5].b:='srodek';
pytania[5].c:='start';
pytania[6].pytanie:='Slowo konczace program to:';
pytania[6].a:='end';
pytania[6].b:='exit';
pytania[6].c:='koniec';
pytania[7].pytanie:='Co oznacza OR w Pascalu?:';
pytania[7].a:='znak';
pytania[7].b:='lub';
pytania[7].c:='moze';
pytania[8].pytanie:='Co oznacza AND w Pascalu?:';
pytania[8].a:='i';
pytania[8].b:='byc';
pytania[8].c:='plus';
for i:=1 to 8 do
pytania[i].oznaczono:=False;
j:=1;
randomize;
while (j<>8) do
begin
x:=random(8)+1;
if not pytania[x].oznaczono then
begin
pytania[j]:=pytania[x];
pytania[x].oznaczono:=True;
j:=j+1;
end;
end;
begin
clrscr;
assign(plik, 'test.txt');
rewrite(plik);
for i:=1 to 8 do
begin
writeln(plik,'Pytanie ',i,':');
writeln(plik,pytania[i].pytanie);
writeln(plik,'a: ',pytania[i].a);
writeln(plik,'b: ',pytania[i].b);
writeln(plik,'c: ',pytania[i].c);
end;
close(plik);
end;
for i:=1 to 8 do
begin
writeln('Pytanie ',i,':');
writeln(pytania[i].pytanie);
writeln('a: ',pytania[i].a);
writeln('b: ',pytania[i].b);
writeln('c: ',pytania[i].c);
end;
readln;
end.Kod proszę umieszczać w znacznikach code - krzychoocpp