Напишите программу: С клавиатуры вводится трёхзначное число (число десятков и число единиц не равна 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).
Приложения:
Первый предикат read_int(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;
}
Объяснение:
Вас заинтересует
2 года назад
2 года назад
2 года назад
7 лет назад
7 лет назад
9 лет назад
9 лет назад