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


#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>   // Подключение ввода-вывода (printf, scanf)
#include <stdlib.h>  // Подключение системных функций (system)
#include <locale.h>  // Подключение русской локализации

int main()
{
    // Предусловие: ввод целого k >= 1 (точка m = 4 пропускается)
    // Постусловие: расчет и вывод значения произведения P

    setlocale(LC_ALL, "Russian"); // Включение русского языка в консоли

    int k;          // Верхняя граница произведения
    double P = 1.0; // Накопитель произведения

    printf("Введите значение k: "); // Приглашение ко вводу k
    scanf("%d", &k);                // Считывание числа k

    // Цикл произведения по m от 1 до k + 2
    for (int m = 1; m <= k + 2; m++)
    {
        // Пропускаем точку разрыва (деление на ноль при m = 4)
        if (m != 4)
        {
            double term = (double)(m * m * m - 8) / (double)(m - 4); // Вычисление сомножителя
            P *= term;                                              // Умножение на накопитель
        }
        else
        {
            printf("Точка m = 4 пропущена (деление на ноль)\n"); // Предупреждение о пропуске
        }
    }

    printf("\nИтоговое значение произведения P = %.4lf\n", P); // Вывод результата

    system("pause"); // Задержка экрана консоли
    return 0;        // Успешное завершение
}