Witam, piszę funkcję liczącą pole pod wykresem, natomiast napotkałem na problem, ponieważ kod wygląda tak:
#include <bits/stdc++.h>
using namespace std;
long long f(long long x)
{
return x*x;
}
int main()
{
long long a, b, n, P;
cout<<"Podaj przedzial: "<<endl;
cout<<"Od: "; cin>>a;
cout<<"Do: "; cin>>b;
cout<<"Podaj dokladnosc (ile prostokatow): "; cin>>n;
long long bok1 = (b-a)/n;
cout<<"bok1: "<<bok1<<endl;
for(int i=0; i<n; i++)
{
P += bok1 * f(a+bok1*i);
}
cout<<"Pole: "<<P<<endl;
return 0;
}
natomiast zmienna bok1
long long bok1 = (b-a)/n;
przy przypisaniu wartości takiej, że z dzielenia jest liczba mniejsza od 1, jest ustawiana na 0. O co chodzi? Przecież ustawiłem typ zmiennej long long, więc powinno się wyświetlać po przecinku.