Вниз
Скачать: CL | DM;

Алгоритм числа   Найти похожие ветки 

 
Zorik ©   (2003-08-19 14:55) [0]

Игал кто-нибуть на уроках или лекциях в игру числа. Два игрока загадывают 4-х значные числа и по очереди пытаются их угадать. Кто первый угадает - тот и выиграл. Принцып угадывания прост. Противник кажет свой вариант числа а другой кажет две цыфры: первая - сколько цыфр угадано, а вторая - сколько цыфр расположено на своих местах.
Пример
1 загадал 5479
2 угадывает 1260
1 отвечает 0:0
2 угадывает 4576
1 отвечает 3:1
... и т. д. до
2 угадывает 5479
1 отвечает 4:4
Вопрос: как научить комп думатьб может уже есть алгоритмы и я даром все это делаю?


 
Programmer_SC   (2003-08-19 18:39) [1]

Хех. Да веселая игра. Года три назад писал ее на басике. Вроде не плохо работало. Насчет алгоритмов не знаю. Я делал так(кажется)
Сначала спрашиваем числа 1234, 5678, 98
потом анализируем это дело. Ес-но продолжаем до тех пор пока не получим в ответе 4:x а дальше ... можно перебором на основе имеющихся данных


 
Hyboid ©   (2003-08-20 04:57) [2]

Самый простой алгоритм по-моему следующий:
Init:
Множество M состоит из всех возможных четырехзначных чисел
без повторения цифр.

Loop:
Пока (число не угадано) BEGIN
Взять из M случайным образом какое-либо число,
например N, и спросить;
Пусть загадавший число отвечает x:y;
Если x:y = 4:4 - УРА,
Иначе проходя по всему множеству M, оставляем в нем только
те числа, которые на вопрос N будут давать ответ x:y.
END;
Ну а запрограммировать всю эту ерунду по-моему не составит
труда.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
1-6104
Гиричев Руслан
2004-02-20 18:05
2004.03.03
Как запретить работать XPManifest1?


1-6122
Alex_DM
2004-01-23 13:42
2004.03.03
Как программно задать размеры и положение открываемого окна IE?


1-6028
Сережа
2004-02-18 19:32
2004.03.03
Panel перекрывает Image


4-6270
Bless
2003-12-25 15:19
2004.03.03
обработка сообщений в консольном приложении


1-6115
Miwa
2004-02-20 17:18
2004.03.03
Как в TStringList.AddObject вместо объекта integer засунуть?




   Наверх