Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся…
Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 6. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся
на 6.
Количество чисел не превышает 1000. Введённые числа не превышают
30 000.
Программа должна вывести одно число − минимальное число, оканчивающееся на 6.
паскаль . с while

















#include <iostream>
#include <string>
using namespace std;
// Функция для преобразования целого числа в строку в заданной системе счисления
string itoa(int num, int base) {
string result = «»;
char digits[] = «0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ»;
while (num > 0) {
result = digits[num % base] + result;
num /= base;
}
return result;
}
// Функция для проверки, является ли число простым или его степенью
bool isPrimeOrPower(int num) {
if (num <= 1) return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
int power = i;
while (power < num) {
power *= i;
}
return power == num;
}
}
return true;
}
int main() {
int n, k; // основание системы счисления и количество автоморфных чисел
cout << «Введите основание системы счисления: «;
cin >> n;
cout << «Введите количество автоморфных чисел: «;
cin >> k;
// Проверяем, что n не является простым числом или его степенью
if (isPrimeOrPower(n)) {
cout << «Основание системы счисления должно быть составным числом, не являющимся степенью другого числа.n»;
return 0;
}
int count = 0; // счетчик найденных автоморфных чисел
int num = 1; // текущее число
cout << «Первые » << k << » автоморфных чисел в системе счисления с основанием » << n << «:n»;
while (count < k) {
int square = num * num; // квадрат текущего числа
string num_str = itoa(num, n); // строковое представление текущего числа
string square_str = itoa(square, n); // строковое представление квадрата
// Сравниваем последние символы строк num_str и square_str
bool isAutomorphic = true;
for (int i = 0; i < num_str.length(); i++) {
if (num_str[num_str.length() — i — 1] != square_str[square_str.length() — i — 1]) {
isAutomorphic = false;
break;
}
}
// Если текущее число является автоморфным, выводим его на экран и увеличиваем счетчик
if (isAutomorphic) {
cout << num_str << «n»;
count++;
}
// Увеличиваем текущее число на 1
num++;
}
return 0;
}