Предмет: Информатика,
автор: gevgeniy2500
Напишите программу: С клавиатуры вводится трёхзначное число (число десятков и число единиц не равна 0), проверить делится ли оно на каждую из своих цифр.
SergeySerg2002:
яп?
Ответы
Автор ответа:
1
Так как язык не указан, приведу пример на SWI-Prolog.
Код:
- read_int(Int) :- read(Int), integer(Int).
- split_int_by_numbers(0, []) :- !.
- split_int_by_numbers(N, [Number|Ints]) :- Number is mod(N, 10), RestN is div(N, 10), split_int_by_numbers(RestN, Ints).
- test_to_div(_, []).
- test_to_div(N, [Number|Ints]) :- mod(N, Number) =:= 0, test_to_div(N, Ints).
- test(Int) :- split_int_by_numbers(Int, Numbers), test_to_div(Int, Numbers), write(Int), write(" - Yes!"), nl.
- test(Int) :- write(Int), write(" - No!"), nl.
- ?- read_int(Int), test(Int).
Приложения:


Автор ответа:
1
Ответ:
ЯП: C++
#include <iostream>
int main() {
int number;
std::cout << "Введите трехзначное число: "<< std::endl;
std::cin >> number;
int first_part = number / 100;
int second_part = (number / 10) % 10;
int third_part = number % 10;
if ((first_part) && (second_part) && (third_part))
{
std::cout << "Вы ввели число: " << number << std::endl;
if ((!(number % first_part)) && (!(number % second_part)) && (!(number % third_part)))
std::cout << "Число делится нацело!" << std::endl;
else
std::cout << "Число не делится нацело!" << std::endl;
}
else
{
std::cout<< "Число НЕ должно содержать нулей!";
}
return 0;
}
Объяснение:
Похожие вопросы
Предмет: Русский язык,
автор: varuyhinakatya
Предмет: Другие предметы,
автор: krutskihn1
Предмет: Другие предметы,
автор: Аноним
Предмет: Геометрия,
автор: Slavik223idi
Предмет: География,
автор: Катерина23948