#include #include #include void main(void) { double x, fx, xkezdo, xveg, deltax, argum, nevezo; int lepeskoz, i; clrscr(); printf(" Függvénytáblázat\n\n"); printf("A függvény: ch(abs(x)-2*gyök(x))/kettesalapúlogaritmus(x*(cos(x) emelve 1.2-re))"); printf("\n Az intervallum kezdőértéke, xkezdo= "); scanf("%lf", &xkezdo); printf("\n Az intervallum végértéke, xveg= "); scanf("%lf", &xveg); printf("\n Lépésközök száma, lepeskoz= "); scanf("%d", &lepeskoz); deltax= (xveg-xkezdo)/lepeskoz; printf("\n\n x f(x)"); printf("\n--------------------------------"); for(i=0; i<=lepeskoz; i++) { x= xkezdo+i*deltax; printf("\n%10.3lf ", x); if (x < 0.0) printf(" Negatív a gyök alatt!"); else { if ( cos(x) <= 0.0 ) printf(" A logaritmus nem értelmezett az 1.2-re emeléshez!"); else { argum= x* pow(cos(x),1.2); if ( argum <= 0.0) printf(" A 2-es alapú logaritmus nem számítható!"); else { nevezo= log(argum) / log(2); if ( nevezo == 0.0 ) printf(" Nullával osztás kísérlete!"); /* jobb lenne: if ( fabs(nevezo) < 1e-15 ) ... */ else { fx= cosh( fabs( x ) - 2*sqrt(x) ) / nevezo; printf("%10.3lf", fx); } } } } } getch(); } /* Próba: -100;100;10 */