Загрузка данных



Задача 1

Найти сумму всех чисел меньше 1000, кратных 3 или 5.

Идея

Перебираем все числа от 1 до 999. Если число делится на 3 или на 5 без остатка, добавляем его к сумме.

Решение на C++

#include <iostream>

int main() {
    int sum = 0;

    for (int i = 1; i < 1000; i++) {
        if (i % 3 == 0 || i % 5 == 0) {
            sum += i;
        }
    }

    std::cout << "Ответ: " << sum << std::endl;

    return 0;
}

Что здесь происходит

% — оператор остатка от деления.

i % 3 == 0 означает, что число кратно 3.

|| означает логическое «ИЛИ».

Переменная sum накапливает сумму подходящих чисел.


Ответ: 233168


---

Задача 2

Найти наименьшее число, которое делится на все числа от 1 до 20.

Идея для начинающих

Будем проверять числа, пока не найдём такое, которое делится на все числа от 1 до 20.

Этот способ понятен, но работает очень медленно для больших диапазонов.

Наивное решение на C++

#include <iostream>

int main() {
    long long number = 20;

    while (true) {
        bool ok = true;

        for (int i = 1; i <= 20; i++) {
            if (number % i != 0) {
                ok = false;
                break;
            }
        }

        if (ok) {
            std::cout << "Ответ: " << number << std::endl;
            break;
        }

        number += 20;
    }

    return 0;
}