Odpowiedź :
Odpowiedź:
Zapomniałaś o znakach * potrzebnych, aby kompilator mógł to zinterpretować jako mnożenie.
Tutaj poprawiony kodzik:
#include <iostream>
#include <cmath>
#include <math.h>
using namespace std;
int main()
{
float a,b,c,p,Pole;
cout << "podaj a: "; cin >> a;
cout << "podaj b: "; cin >> b;
cout << "podaj c: "; cin >> c;
if (a<b+c && b<a+c && c<a+b)
{
p=(a+b+c)/2;
Pole=sqrt(p*(p-a)*(p-b)*(p-c));
cout << "pole trojkata wynosi: " << Pole;
}
else {
cout << "z podanych dlugosci bokow nie da sie zbudowac trojkata";
}
return 0;
}
Odpowiedź:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
float a, b, c, p, Pole;
cout << "podaj a: ";
cin >> a;
cout << "podaj b: ";
cin >> b;
cout << "podaj c: ";
cin >> c;
if (a < b + c && b < a + c && c < a + b)
{
p = (a + b + c) / 2;
Pole = sqrt(p * (p - a) * (p - b) * (p - c)); // tutaj był błąd, bo musisz dać znaki mnożenia, a zostawiłeś puste tak jak jest we wzorze
cout << "pole trojkata wynosi: " << Pole;
}
else
{
cout << "z podanych dlugosci bokow nie da sie zbudowac trojkata";
}
return 0;
}
Wyjaśnienie:
Wcześniej faktycznie miałem błąd, ale poprawiłem żeby nie wprowadzać w błąd
Jak coś to pytaj :)