Вычислить сумму всех чисел Фибоначчи, которые не превосходят заданного натурального числа М - C (СИ)
Формулировка задачи:
Здравствуйте, в программировании не очень силен. Поэтому прошу помочь найти недочеты в коде.
Программа должна вычислять сумму всех чисел Фибоначчи, которые не превосходят заданного натурального числа М. Через цикл while.
#include <stdio.h> #include <math.h> #include <locale.h> #include <conio.h> int f0; int f1; int f2; int M; int main() { setlocale(LC_ALL,"Russian"); { printf("Вычислите сумму всех чисел Фибоначчи, которые не превосходят заданного натурального числа М. \n"); printf("Введите число M-"); scanf("%d",&M); f0=0; f1=1; while(f2<M) { int f2=f0+f1; f0=f1; f1=f2; } printf("Сумма чисел Фибоначчи, меньше M=%d",f2); } return 0 }
Решение задачи: «Вычислить сумму всех чисел Фибоначчи, которые не превосходят заданного натурального числа М»
textual
Листинг программы
#include <stdio.h> int main(int argc, char *argv[]) { int f0 = 0; int f1 = 1; int sum = 0; int f2,M; printf("Вычислите сумму ...\n"); printf("Введите число М:\n? "); scanf("%d", &M); while (f1 <= M) { sum += f1; f2 = f0 + f1; f0 = f1; f1 = f2; } printf("\nСумма равна: %d\n", sum); return 0; }
Объяснение кода листинга программы
- Подключение стандартной библиотеки для работы с файлами и вывода данных.
- Объявление переменных: — f0 - первое число Фибоначчи, начальное значение равно 0; — f1 - второе число Фибоначчи, начальное значение равно 1; — sum - переменная для хранения суммы чисел Фибоначчи; — f2 - третье число Фибоначчи, в которое будет переходить значение f1; — М - натуральное число, введенное пользователем, ограничивающее сумму чисел Фибоначчи.
- Вывод сообщения с просьбой ввести число М.
- Считывание числа М с помощью функции scanf.
- Организация цикла по вычислению суммы чисел Фибоначчи: — Вычисление текущего значения f1 (f1 = f0 + f1). — Суммирование f1 и сохранение результата в переменной sum. — Обновление значений f0 и f1 для следующей итерации (f0 = f1; f1 = f2). — Проверка условия (f1 <= М) для прекращения цикла.
- Вывод сообщения с результатом вычислений.
- Возврат 0, означающий успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д