Максимальное число, составленное из утроенного произведения цифр будет 9*3*N - не может быть больше 54, т.е. N может быть только 1 или 2. По условию х>=10 -> N=2 (N -порядок числа). Поэтому искать нужно среди чисел от 11 до 54. Решение - число 15.
var n,m: integer; begin write('n = '); readln(n); if n=2 then begin m:=11; repeat if (m mod 10)*(m div 10)*3=m then begin writeln('число: ',m); m:=55; end; m:=m+1; until m>54; end else writeln('нет решения'); end.
Возможный вариант в C++ #include <iostream> int main() { using namespace std; int N; cout << "Enter N: "; cin >> N; int num; int max = 1; int i; for (i = 0; i < N; ++i) { cout << "Enter #" << i + 1 << " number: "; cin >> num; if ((num - 9) % 10 != 0 && num % 3 == 0) { max = num; break; } } for (int j = i + 1; j < N; ++j) { cout << "Enter #" << j + 1 << " number: "; cin >> num; if ((num - 9) % 10 != 0 && num % 3 == 0) if (num > max) max = num; } if (max != 1) cout << "Max number div by 3 and don't end 9: " << max << endl; else cout << "No numbers div by 3 and don't end 9" << endl; return 0; }
9*3*N - не может быть больше 54, т.е.
N может быть только 1 или 2. По условию х>=10 -> N=2 (N -порядок числа).
Поэтому искать нужно среди чисел от 11 до 54. Решение - число 15.
var n,m: integer;
begin
write('n = '); readln(n);
if n=2 then
begin m:=11;
repeat
if (m mod 10)*(m div 10)*3=m then
begin
writeln('число: ',m);
m:=55;
end;
m:=m+1;
until m>54;
end
else writeln('нет решения');
end.
#include <iostream>
int main()
{
using namespace std;
int N;
cout << "Enter N: ";
cin >> N;
int num;
int max = 1;
int i;
for (i = 0; i < N; ++i)
{
cout << "Enter #" << i + 1 << " number: ";
cin >> num;
if ((num - 9) % 10 != 0 && num % 3 == 0)
{
max = num;
break;
}
}
for (int j = i + 1; j < N; ++j)
{
cout << "Enter #" << j + 1 << " number: ";
cin >> num;
if ((num - 9) % 10 != 0 && num % 3 == 0)
if (num > max)
max = num;
}
if (max != 1)
cout << "Max number div by 3 and don't end 9: " << max << endl;
else
cout << "No numbers div by 3 and don't end 9" << endl;
return 0;
}