Информатика 8 класс. Буду благодарен) Напишите программу и загрузите код программы в качестве ответа.
Дано натуральное число n. Определите, сколько у него различных натуральных делителей, включая число 1 и само число n.
ВХОДНЫЕ ДАННЫЕ
Программа получает на вход одно целое число n, 1⩽n⩽109.
ВЫХОДНЫЕ ДАННЫЕ
Программа должна вывести количество различных натуральных делителей числа n.
ПРИМЕР
ввод вывод
1 1
10 4
24 8
def print_digit_sum(a):
print(f'Сумма цифр числа {a} равна {sum([int(i) for i in str(a)])}')
while True:
try:
print_digit_sum(int(input('Введите целое число:')))
break
except ValueError:
print('Неверный формат входных данных')
sum([int(i) for i in str(a)]) - здесь мы выполняем следующие действия:
1. Преобразуем число в строку с str(a)
2. Пробегаемся по символам строки от первого до последнего и создаём массив, преобразуя каждый строковый символ в число - [int(i) for i in str(a)]
3. Ну и наконец с оператора sum вычисляем сумму всех элементов получившегося массива
class SearchPalin{
public static void main(String args[]){
String palinString = new java.util.Scanner(System.in).nextLine();
System.out.print("\nПалиндром(-ы):\n ");
for(int wordStart = 0, wordEnd = 0; wordEnd<palinString.length(); wordEnd++)
if(wordEnd+1==palinString.length() || palinString.charAt(wordEnd+1)==' '){
String wordBeginning = "", wordEnding = "";
for(int wordBe = wordStart;wordBe<wordEnd+1;wordBe++)wordBeginning+=palinString.charAt(wordBe);
for(int wordEn = wordEnd;wordStart-1<wordEn;wordEn--)wordEnding+=palinString.charAt(wordEn);
if(wordBeginning.equals(wordEnding)){
for(int palinWord = wordStart;palinWord<=wordEnd;palinWord++)System.out.print(palinString.charAt(palinWord));
System.out.print("\n ");
} wordStart = wordEnd+2;
}
}
}