Witam,
Mam do napisania program, który dla podananych granic przedziałów a i b, tabelaryzuję funkcję f(x) = 1 / (1+x).
Napisałem taki oto kod lecz coś jest źle prosiłbym o wskazanie błędu.
Istnieje również dalsza część zadania za którą nie bardzo wiem jak się zabrać:
Dodatkowo program rysuje wykres słupkowy funkcji, w którym wysokość
słupka (liczba znaków w słupku) jest dopasowana do szerokości 50 znaków
wartością funkcji. Poprawnie działający program wywołany z argumentami
0 i 5 powinien generować następujące wyniki.
0.00 1.00 **************************************************
1.00 0.50 *************************
2.00 0.33 ****************
3.00 0.25 ************
4.00 0.20 **********
5.00 0.17 ********
#include <stdio.h>
#include <math.h>
//Program tabelaryzujący funkcję dla danego przedziału.
double funkcja(double);
int main () {
double x, a, b, krok;
printf("\n");
printf("Podaj poczatek przedzialu: ");
scanf("%lf", &a);
printf("Podaj koniec przedzialu: ");
scanf("%lf", &b);
printf("Podaj krok: ");
scanf("%lf", &krok);
printf("\n");
//rysowanie tabeli.
printf(" x | funkcja \n");
printf("-------+------------------\n");
for (x = a; x < b; x += krok)
printf("%5.3f |%8.3f |%8.3f\n", x, funkcja(x));
printf("%5.3f |%8.3f\n", b, funkcja(b));
printf("-------+------------------\n");
printf("\n");
system("PAUSE");
return 0;
}
double funkcja(double x) {
int y;
y = 1 / (1+x);
return y;
}