Ребус: 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.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д