Разработать алгоритм и написать программу игры "Угадай число" |
Разработать алгоритм и написать программу игры "Угадай число" |
Kot8 |
24.05.2010 21:32
Сообщение
#1
|
Группа: Пользователи Сообщений: 1 Пол: Мужской Репутация: 0 |
Правила игры.
Играют двое - вы и комп. комп загадывает число, , а вы его отгадываете. когда делаете попытки отгадать число - комп выдаёт, какие сколько цифр в числе правильно и сколкьо из них стоят на своих местах. числа 4-х значные. Также программа должна считать за сколько попыток вы отгадали число. Прошу помочь написать. Есть некий код, но очень неправильный, верно, скажите где-чё переменить, чтоб работало правильно. var a:array[1..4]of integer; b:array[1..4]of integer; i,kol,kol1,n,j:integer; begin randomize; repeat a[1]:=random(9)+1; a[2]:=random(9)+1; a[3]:=random(9)+1; a[4]:=random(9)+1; until (a[1]>0); writeln('chislo kompa=',a[1],a[2],a[3],a[4]) repeat kol:=0; kol1:=0; writeln('vvedite chislo'); writeln('dlya okonchaniya vvedite enter'); readln(n); for i:=1 to 4 do begin b[5-i]:=n mod 10; n:=n div 10; end; for i:=1 to 4 do for j:=1 to 4 do begin if a[i]=b[j] then inc(kol); if (a[i]=b[j])and(i=j)then inc(kol1); end; writeln('vernyh chisel=',kol); writeln('na meste=',kol1); writeln; until (kol1=4)or(b[1]=0); if kol1=4 then write('vy ugadali!'); readln; end. Тут нету счетчика количества угадываний и, когда комп загадывает например 8794, а ты вводишь 8888 или 7777 там, то выдает что 4 числа угадал, а на самом деле одно ведь. |
Текстовая версия | 22.09.2024 17:03 |