1

Тема: Не можу обчислити добуток елементів послідовності.

Завдання: Ввести 7 дійсних чисел та обчислити добуток елементів цієї  послідовності, значення яких є менше за 6.

Підскажіть, як обчислити добуток елементів тієї послідовності, яку ми ввели з клавіатури.

#include "pch.h"
#include <iostream>

int main()
{
    int i, x, n=7;
     

    setlocale(LC_ALL, "ukr");

    for (i = 1; i <= n; ++i)
    {
        printf("Ввести %i число", i);
        scanf_s("%d", &x);
        if (x < 6)
            x = x * x;
        
    }
        printf("%d", x);
    return 0;

}

2 Востаннє редагувалося wander (16.11.2019 17:15:30)

Re: Не можу обчислити добуток елементів послідовності.

Спочатку потрібно замінити int на float, потім завести додаткову змінну, яка буде рахувати добуток float result, потім ось це x = x * x замінити на це result *= x

Ну і зробити умову хоча б такою: if (x - 6.f < 0.001)

Подякували: Bogaty1

3

Re: Не можу обчислити добуток елементів послідовності.

Але в такому випадку видає цю помилку
Ошибка    C4700    использована неинициализированная локальная переменная "result"   
Код виглядає так:

#include "pch.h"
#include <iostream>

int main()
{

    float result, i, x, n = 7;
     

    setlocale(LC_ALL, "ukr");

    for (i = 1; i <= n; ++i)
    {
        printf("Ввести %f число", i);
        scanf_s("%f", &x);
        if (x - 6.f < 0.001)
            result *= x;
        
    }
        printf("%f", x);
    return 0;

}

Пробема з записом?

4 Востаннє редагувалося wander (16.11.2019 20:11:14)

Re: Не можу обчислити добуток елементів послідовності.

То ініціалізуйте, в чому проблема?
І так змінні і та n мають бути цілими.
і взагалі оголосіть та ініціалізуйте в циклі, а n не дуже то і потрібна.

Подякували: Bogaty1