Автомат получает на вход трехзначное число. По полученному числу строится новое десятичное число по следующему правилу:
1. Вычисляются 2 числа - произведение всех цифр числа, а также сумма остатков от деления всех цифр числа на два. 2.Полученные числа записываются друг за другом в порядке невозрастания. (например число 231, результат 62). Какие числа могут получится в результате работы автомата: 31 32 43 52 132 190 813 7293.
Могут: – 31: для числа 111 сумма остатков равна 1+1+1=3, произведение цифр 1*1*1=1 – 813: для числа 339 произведение цифр 3*3*9=81, сумма остатков 1+1+1=3 – 7293: для числа 999 проивзедение цифр 9*9*9=729, сумма остатков 1+1+1=3
Остальные не могут. – 32: если сумма остатков 3, то все цифры нечетные, их произведение не может быть равно 2. Если сумма остатков 2, то одна из цифр четная, произведение не может быть равно 3. – 43: Сумма остатков не превышает 3, значит, 3 – сумма остатков (поэтому все цифры нечетные), тогда произведение не будет четному числу 4. – 52: сумма остатков 2, одна из цифр четная, но тогда произведение не будет равно нечетному числу 5 – 132: аналогично, сумма остатков 2, произведение должно быть четным (а оно 13) – 190: аналогично, сумма остатков 0, тогда все цифры четные, но произведение 19
Приведу часть программы. n-любое число ........................... a: array[1..n] of integer; ................................ K:=0; for i:=1 to n do if a[i]=1958 then inc(k); {или K:=k+1} writeln(k); end.