Typy rzeczywiste

0

Proszę o pomoc. Nie wiem co robię źle, napisałem program do zadania 2 z załącznika, ale program nie chce działać.

#include<stdio.h>
#include<conio.h>
#include<math.h>
int main (int argc, char* argv[]) {
    double x,y;
    double p1,p2,p3,p4;
    double q1,q2,q3;
    double licznik, mianownik;
    int k;
    do {
        printf("\nx=");
        k=scanf("%lf", &x);
        fflush(stdin);
        if(k==0) printf("\nNiewlasciwy format liczby");
        else if(x<=1 || x==(M_PI)/2 || x==M_PI || x>3.7 || fabs(sin(x))<0) printf("\nx nie nalezy do dziedziny");
        }
        while(k==0 || x<=1 || x==(M_PI)/2 || x==M_PI || x>3.7 || fabs(sin(x))<0);
        p1=log(x-1)/log(2);
        p2=1/tan(x);
        p2=cbrt(p2);
        p3=ceil(pow(3,x));
        p4=pow(3,x);
        p4=exp(p4);
        licznik=p1+p2+p3+p4;
        q1=tan(x);
        q2=log(sin(x));
        q3=pow(M_PI,x);
        mianownik=q1+q2+q3;
        if(mianownik!=0) {
                         y=licznik/mianownik;
                         printf("\ny=%lf", y);
                         }
                         else {
                              printf("\nDzielenie przez 0");
                              getch ();}
                              return 0;
                              }
0

co to ma być to cbrt?
może sqrt?

0
p3=ceil(pow(3,x));
p4=pow(3,x);
p4=exp(p4);

Liczysz 3x dwa razy, a w zadaniu masz najpierw sufit z 3x , ale potem e do potęgi x^3 ;-) Kolejność chyba trzeba zmienić.

Dobrze myślę?

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