@Chory Kot "Masz tam napisane, że masz zaznaczyć kwadrat, w którym się funkcja mieści." Tam nie jest tak napisane, radzę wytrzeźwieć lub nauczyć się czytać.
Wiem jak działa ten program, ale nie potrafię go napisać.
To jest program który napisałem, do obliczania miejsc zerowych:
Kopiuj
#include "winbgi2.h"
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <time.h>
void rownanie(double a, double b, double c, double*p, double *q, double *k, double *n){
if (b*b-4*a*c>0){
*p = (-b-sqrt(b*b-4*a*c))/(2*a);
*q = (-b+sqrt(b*b-4*a*c))/(2*a);
*n = 2;
}
else if(b*b-4*a*c==0){
*k = (-b)/(2*a);
*n = 1;
}
else *n=0;
}
void main(){
double a,b,c,x1,x2,x0,opcje;
printf("Prosze podac wspolczynnik a \n");
scanf("%lf",&a);
printf("Prosze podac wspolczynnik b \n");
scanf("%lf",&b);
printf("Prosze podac wspolczynnik c \n");
scanf("%lf",&c);
rownanie(a,b,c,&x1,&x2,&x0,&opcje);
if (opcje==0){
printf("Rownanie nie ma pierwiastkow \n");
}
else if(opcje==1){
printf("Pierwiastek podwojny rownania to %lf \n",x0);
}
else if(opcje==2){
printf("Pierwiastek X1 = %lf \t Pierwiastek X2 = %lf",x1,x2);
}
wait();
}
W tym programie skanowałem a,b,c robiłem obliczenia na tych parametrach i to mi wystarczyło. Teraz potrzebuje zeskanować od użytkownika całą funkcję, a nie tylko parametr czyli de facto liczbę.
np.(cos(x+5))/(4+x^3) , a później podstawię liczbę pod x i obliczę f(a) i f(b) i będę już mógł z tego wyliczyć pole prostokąta, a później wylosuje liczby z przedziały <a,b> i sprawdzę czy funkcja przyjmuję większe czy mniejsze wartości dla tych wylosowanych liczb i będę miał ułamek.
Teraz jest zrozumiale?