Programowanie z pętlą

0

Mam problem z stworzeniem programu. Ma to polegać na tym, iż komputer pyta się np. "O jakim znaku myślę?" osoba wpisuje znak i jeśli zgadnie to będzie komunikat, że ci się udało a jak nie to ma tak wpisywać różne znaki, aż do odgadnięcia. Znak wpisany przez osobę ma byc porównany ze znakiem, który znajduje się w pamięci komputera. Trzeba tutaj uzyć pętli until bądź while. Osobiście wolałabym tą pierwszą.

0

Znaczy, zlecasz nam napisanie tego programu? Ile płacisz? Czy też może masz kod, który nie działa i prosisz o radę? Jeśli to pierwsze, to temat powinien być w dziale praca, a jeśli drugie, to pokaż kod.

0
USES CRT;
VAR
znak:longint;
BEGIN
REPEAT
clrscr;
writeln('Zgadnij znak.')
read(znak)
UNTIL znak=$
writeln(Gratulacje, odgadles znak!)
readln;
END

myślałam nad czymś takim tylko, że tutaj to ja wybieram znak, który ma byc odgadnięty, nie wiem jak zrobic, żeby skorzystać "z pamięci komputera"

0

losujesz kod ascii w zakresie np. kodów ascii znaków a-z, zamieniasz ten kod ascii na literę i przechowujesz ją w zmiennej typu char, następnie robisz tą pętlę dokładnie jak wyżej tylko zamiast $ wstawiasz nazwe tej zmiennej

0

dziękuję

0

funkcje: Ord,Chr,Random,Randomize mogą okazać się bardzo pomocne :P

0

czy taki program będzie odpowiedni? nie mam wgranego delphi, sprawdzę to dopiero w szkole

uses

Forms;

uses crt;
var znak_komputera:char
znak:char;

begin

znak_komputera:=chr(random(255)+1);
repeat
clrscr;
writeln('Zgadnij o jakim znaku mysli komputer. ');
read(znak);
until znak=znak_komputera;
writeln(‘Gratulacje, odgadles znak! ‘);
readln;

end.

0

znak_komputera:=chr(random(255)+1);
a jak ci wylosuje znak ktorego nie da się zapisać? lepiej np stablicuj znaki ktore da sie wpisac i losuj index z tej tablicy

0

Kolega się starał więc 'lekko' pomogę.

 uses crt;
 var znak,znak_komputera:char;

begin
 randomize;
 repeat
 znak_komputera:=chr(random(256));//FIXED
 until znak_komputera in ['a'..'z'];

 repeat
 clrscr;
 writeln('Zgadnij o jakim znaku mysli komputer. ');
 znak:=readkey;
 until znak=znak_komputera;
 writeln('Gratulacje, odgadles znak! ');
 readln;
end.
0

dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1