Ну что, вернемся к нашим
баранам программистам?
Вспоминаем задачу:
Дано целое трехзначное число. Если переставить первую и последнюю цифру местами, то оно уменьшится на 20%. Найти число.
Ошибка ИИ находится в первом же предложении:
Обозначим трехзначное число как ( abc ), где ( a ) — сотни, ( b ) — десятки, ( c ) — единицы. Это число можно представить как ( 100a + 10b + c ).
Если бы ИИ был разумным, то он самостоятельно проанализировал бы каждое слово в задаче, выяснил возможности и ограничения всех компонентов и на основе имеющихся данных проступил к решению задачи. Это сделаем мы. Целые числа - это натуральные числа, противоположные им отрицательные числа + ноль. Ноль не может быть трехзначным числом, поэтому остается два варианта - число в задаче может быть положительным или отрицательным. В связи с этим задачу можно переформулировать следующим образом:
Дано положительное или отрицательное трехзначное число. Если переставить первую и последнюю цифру местами, то оно уменьшится на 20%. Найти число.
Если взять первый вариант, что число положительное и попытаться решить его согласно этому предположению, то решение, конечно же, отсутствует, что ИИ с радостью и сообщает, успокаиваясь на этом. Настоящая же ИИ, не получив ответа с положительным числом, приступила бы к решению задачи второго варианта - с отрицательным числом. И, естественно, нашла бы решение, потому алгоритм решения был бы другой, так как отрицательное число, уменьшаясь, увеличивается по модулю. Если в исходном числе -495 переставить две крайние цифры и получить число -594, второе число уменьшилось бы на -99, что является 20% от -495. Вот и всё.
Кто ограничил ИИ в вариантах? Он сам себя ограничил? "Терпеть не могу отрицательные числа, бесят, даже не буду их рассматривать в качестве варианта, sue me"? Да-да.