Pomoc przy programie

0

Witam, pisałam już wcześniej odnośnie zadań ale jakoś sobie radzę póki co :P

Jednak potrzebuje pomocy, napisałam program ale nie chce mi się skompilować :/
co może być źle?

#include <iostream.h>
#include <math.h>

using namespace std;

main()
{
   
   double a=4.5, b=-3, c=12.3, d=5.427, x=11.2, Pi=3.141592653589793238462643383, y;
   int p=9100, k=2;
   
   y=sqrt(fabs((sin(b*b*b)+2*tg(d*d)) / (ln(c*c*c) - 3 * (x*x*x)))) +  ((binomial(p, k))/(a*sqrt(p)*pi())*e*a;
   
   cout << y;
   
   system("PAUSE");
   return 0;
   
}
0

nie chce mi się skompilować

a co się dzieje? ZAWSZE podajemy treść błędów.

tak na oko patrząc, powinno być <iostream> zamiast <iostream.h>. dalej nie czytałem.

0

Jak "nie chce się skompilować"?
Może za mało prosisz?

0

Po pierwsze trzeba formatować kod, ale jesteś nowa to się nie bd czepiał.
Dużo ładniej wygląda, nie prawdasz?

#include <iostream.h>
#include <math.h>

using namespace std;

main()
{
   
   double a=4.5, 
          b=-3,
          c=12.3, 
          d=5.427, 
          x=11.2, 
          Pi=3.14, 
          y;
   int    p=9100, 
          k=2;
   
   y=sqrt(fabs((sin(b*b*b)+2*tg(d*d)) / (ln(c*c*c) - 3 * (x*x*x)))) +  ((binomial(p, k))/(a*sqrt(p)*pi())*e*a;
   
   cout << y;
   
   system("PAUSE");
   return 0;
   
}
0

Patrząc już na sformatowany kod przez Toma (dzięki, bo z tamtego bym się nie odczytał):

  1. tak jak wspomniał Azarien powinno być <iostream> a nie <iostream.h> (zmieniło się to już dawno, więc czytasz stare źródła informacji)
  2. Co to jest binomial? Mój kompilator uznaje to za niezdefiniowaną funkcję, podobnie jak tg i ln. (tan, to jest bodajże tangens)
  3. sqrt ma deklarację sqrt(double), sqrt(float) lub sqrt(long double), więc nie możesz przesyłać tam zmiennej typu int, bo jest zbyt wiele możliwości, dlatego albo wywołasz to sqrt(double(p)) albo sqrt(float(p)), albo sqrt((long double)p)
  4. co to jest za funkcja pi()?
  5. a co to jest za zmienna e?
0
  1. <iostream>
  2. nie ma czegoś takiego jak tg, dla tangesa jest "tan"
  3. nie wiem co to ln, ale błąd pewnie w stylu powyższego
  4. zamiast pi() powinno być po prostu "Pi"
  5. e nie zostało zadeklarowane

Podaj wzór, jaki ma realizować ten program

0

Dodatkowo jeszcze zamiast math.h to cmath
ln to jest logarytm naturalny - funkcja w cmath to log http://www.cplusplus.com/reference/clibrary/cmath/log/

0
Hell4Ge napisał(a)
  1. nie wiem co to ln, ale błąd pewnie w stylu powyższego

Logarytm naturalny, a od tego w C jest zdaje się log.

MJay napisał(a)
  1. Co to jest binomial?

Po polsku to symbol Newtona. Taką funkcję trzeba sobie napisać, nie ma jej w standardzie.

0
long int binomial( int n, int k)
{
    long int result=1;
    for( int i=1;i<= k;i++)
    {
        result=result*( n - i + 1)/i;
    }
    return result;
}
 

Akurat miałem na wierzchu implementację symbolu Newtona, proszę.

1 użytkowników online, w tym zalogowanych: 0, gości: 1