lyagaeva87
20.04.2020 07:23

Напишите программу, которая находит все числа в диапазоне от a до b , сумма цифр которых не меняется при умножении на 2, 3, 4, 5, 6, 7, 8 и 9 (например, число 9). используйте функцию для вычисления суммы цифр числа. входные данные входная строка содержит два натуральных числа – границы диапазона a и b . гарантируется, что a ≤ b . выходные данные программа должна вывести все числа, удовлетворяющий условию, в одной строке, разделив их пробелами.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
EleonoraPonich
02.09.2020 22:29

(см. объяснение)

Объяснение:

Решение на Java:

import java.math.BigInteger;

public class Main

{

public static void main(String[] args) {

 System.out.println(BigInteger.valueOf(2).multiply(BigInteger.valueOf(27).pow(7)).add(BigInteger.valueOf(3).pow(10)).subtract(BigInteger.valueOf(9)).toString(3).chars().filter(x->x=='0').count());

}

}

Решение на Python 3:

a = 2*27**7+3**10-9

s = ''

while a>0:

   s = str(a % 3) + s

   a //= 3

print(s.count('0'))

Результат работы программ в обоих случаях одинаковый и равен 13.

Задание выполнено!

0,0(0 оценок)
Ответ:
Nady0208
26.12.2021 06:55

#include <iostream>

#include <set>

#include <sstream>

#include <algorithm>

using namespace std;

int main(){

   int n, num;

   string line;

   cout << "n = "; cin >> n;

   

   set <int> yes;

   set <int> no;

   stringstream ss;

   

   while(1) {

       ss.clear();

       getline(cin, line);

       if(line != "HELP" && line != "YES" && line != "NO") {

           ss << line;

           continue;

       }

       if(line == "HELP") break;

       if(line == "YES") {

           while(ss >> num) {

               yes.insert(num);

           }

           continue;

       }

       if(line == "NO") {

           while(ss >> num) {

               no.insert(num);

           }

           continue;

       }

   }

   set <int> result;

   set_difference(yes.begin(), yes.end(), no.begin(), no.end(), inserter(result, result.begin()));

   for(auto it = result.begin(); it != result.end(); it++) {

       cout << *it << " ";

   }

   return 0;

}

Дайте "лучший ответ" если решение правильное , у меня уже 1000 из но не могу набрать 5 лучших ответов

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота