Ребус: VOLVO+FIAT=MOTOR, используя тип "Множество" - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Ребус: VOLVO+FIAT=MOTOR. Каждая буква – это цифра, разным буквам соответствуют разные цифры. Необходимо заменить буквы цифрами так, чтобы получилось верное равенство. Найти все решения (если есть несколько ). ИСПОЛЬЗОВАТЬ ТИП «МНОЖЕСТВО». помогите, пожалуйста отыскать ошибку в коде (или предложите свой вариант решения). Моя программа ошибки не выдает, но и решения тоже (а их должно быть 10 шт.).

Решение задачи: «Ребус: VOLVO+FIAT=MOTOR, используя тип "Множество"»

textual
Листинг программы
type
  mn = 0..9;
 
const
  d: set of mn = [0..9];
 
var
  v, o, l, f, i, a, t, m, r: mn;
 
begin
  writeln('VOLVO+FIAT=MOTOR');
  for v in d - [0] do
    for o in d - [v] do
      for l in d - [v, o] do
        for f in d - [0, v, o, l] do
          for i in d - [v, o, l, f] do
            for a in d - [v, o, l, f, i] do
              for t in d - [v, o, l, f, i, a] do
                for m in d - [0, v, o, l, f, i, a, t] do
                  for r in d - [v, o, l, f, i, a, t, m] do
                    if ((((v*10+o+f)*10+l+i)*10+v+a)*10+o+t = (((m*10+o)*10+t)*10+o)*10+r)
                      then writeln(v, o, l, v, o, '+', f, i, a, t, '=', m, o, t, o, r);
  readln
end.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.583 из 5
Похожие ответы