1

Тема: Допоможіть знайти помилку

Підкажіть в чому помилка?І взагалі чи правильно я зрозумів умову.

https://replace.org.ua/uploads/images/9488/6f9fface8b087c471256c189435cfa42.png

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

int main()
{
    float n,s;
    
    printf("n=");
    scanf_s("%li", &n);
    for (int i = 1;i <= n;i++)
    {
        if (i % 2 == 0)
            s += -1 / (2 * n + 1);
        if (i % 2 == 1)
            s += 1 / (2 * n + 1);
    }
    printf("s=%f", s);
    getchar();
    return 0;
}

2

Re: Допоможіть знайти помилку

На майбутнє було б непогано, якби ви користувалися тегами code і писали, що саме вас не влаштовує у роботі програми.
А так - в C/C++ ділення для цілих чисел дає цілий результат, тобто 1/3==0. Додайте у вираз дійсне, наприклад -1.0/(2*n+1
Ну от бачите, я витратив зайвий час, бо ви не написали, що саме вас непокоїть. n же float, тобто проблема не в діленні. А в тому, що ви його вводите як "%li", тобто long int. А мало б бути "%f". Або ще краще - викидайте stdio і користуйтеся cin/cout з iostream, там таких помилок не буде.

3

Re: Допоможіть знайти помилку

Я зробив деякі зміни
https://replace.org.ua/uploads/images/9488/bc69193b6800abe55a02baa11d7b8262.png
Помилок компілятор не видає, але на консоль нічого не виводить,після введеняя n

4

Re: Допоможіть знайти помилку

І ви гадаєте, що хтось псуватиме собі зір оцим, щоб допомогти вам?