• Предмет: Информатика
  • Автор: pavelnaumets0
  • Вопрос задан 8 лет назад

Хорошая задача
В настоящее время известно множество разных чисел: простые, составные, числа Фибоначчи и многие другие. Школьник Василий решил придумать свои числа, чтобы остаться на страницах истории. Как говорится, своё всегда является лучшим, поэтому Василий, недолго думая, назвал свои числа хорошими. Под его определение хорошего числа подходят все числа, большие девяти, для которых выполняются следующие условия:
1. Если пронумеровать позиции цифр в числе справа налево, начиная с 1 (то есть в числа 42 двойка будет на первой позиции, а четвёрка на второй), то суммы цифр на чётных и нечётных позициях будут отличны от нуля.
2. Сумма цифр, стоящих на чётных позициях, делится на сумму цифр, стоящих на нечётных позициях.
Теперь Василий хочет проверить, является ли некоторое число N хорошим.
Входные данные
Первая строка входного файла содержит одно целое число N (1 ≤ N ≤ 10100) – число, интересующее Василия. Гарантируется, что для всех чисел, поступающих на вход, выполнено условие 1.
Выходные данные
Если введённое число хорошее, то выведите "Yes" без кавычек и (через одиночный пробел) частное от деления суммы цифр, стоящих на чётных позициях, на сумму цифр, стоящих на нечётных позициях, в противном случае выведите "No" (также без кавычек) и остаток от деления.


Подскажите, хотябы сам ход решения, без всякий begin, program и т.д

Ответы

Ответ дал: keshacer
0
Самый простой вариант - подсчитать сумму четных и нечётных через цикл, в котором берём остатки от деления. Можно начать с конца и соответственно начать подсчитывать сумму только от первого числа с конца не равного 0. Подсчитываем через целочисленное деление на круглое число и нахождение остатка при деление на один. Данные, чередуя, прибавляем к разным переменным(пусть будут x1 и x2). Затем проверяем остаток от деления одной переменной на другую. Если 0 - "Yes", иначе - "No" For i=5 downto 1 do If i Mod 2 = 1 then a:= a+n div (10^(i-1)) mod 10 Else B=B+ div (10^(i-1)) mod 10;
Ответ дал: keshacer
0
Так найдём сумму чётных и нечётных.
Ответ дал: pavelnaumets0
0
Ну, а как тогда проверить что число хорошее или нет
Ответ дал: pavelnaumets0
0
Как проверить остаток от деления?
Ответ дал: pavelnaumets0
0
Короче, ладно, не сделаю это, слишком сложно для меня
Ответ дал: keshacer
0
Остаток от деления суммы чётных на нечётных a mod B в хорошем числе равен 0
Вас заинтересует