Вопрос задан 17.12.2025 в 20:07.
Предмет Информатика.
Спрашивает Шукало Верка.
Дано целое число N (больше 0). Найти сумму 1 + 1/2 + 1/3 + ... + 1/N (вещественное число). Входные данные: ввести целое число N (1 <= N <= 20). Выходные данные: вывести сумму 1 + 1/2 + 1/3 + ... + 1/N с точностью до 4 цифр в дробной части. (в Паскале)
Ответы на вопрос
Отвечает Фраёнов Миша.
Задача — посчитать гармоническую сумму
при целом .
Идея решения
Идём по целым от 1 до , накапливая сумму в переменной вещественного типа. Деление делаем как вещественное, чтобы не было целочисленного усечения.
Сложность: по времени и по памяти.
Точность: используйте double/float64. Для очень больших сумма растёт примерно как (где ), но для задачи достаточно прямого суммирования.
Псевдокод
Пример
Для N = 5:
S = 1 + 0.5 + 0.333333... + 0.25 + 0.2 = 2.2833333333...
Реализация (Python)
Реализация (C++)
Примечание: если нужно повысить численную стабильность при очень больших N, можно суммировать с конца (от N к 1) или использовать тип повышенной точности (long double).
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

