asdadasda

mail@pastecode.io avatar
unknown
c_cpp
2 years ago
1.3 kB
2
Indexable
Never
double bisectionMethod(polinom p1[],int elemanSayisi){
    double hata,gercekDeger,hesaplananDeger,b,a,hataKesinlik;
    int n=0,hataTuru;
    double c;
    printf("Eger gercek degeri girecekseniz 1 girmeyecekseniz 0 a basiniz:");
    scanf("%d",&hataTuru);
    printf("Lutfen hata kesinligini giriniz");
    scanf("%lf",&hataKesinlik);
    
    if(hataTuru==1){
        printf("Lutfen gercek degeri giriniz");
        scanf("%lf",&gercekDeger);

    }
    printf("Araligin baslangic degeriniz giriniz");
    scanf("%lf",&a);
    printf("Araligin bitis degeriniz giriniz");
    scanf("%lf",&b);
    if((degerHesapla(p1,a,elemanSayisi) * degerHesapla(p1,b,elemanSayisi))>0){
        printf("Bu aralikta kok yoktur");

    }
    else {
        do{
            n=n+1;
            if(hataTuru==1){
                hata=mutlakDeger(gercekDeger-hesaplananDeger);
            }
            else if(hataTuru==0){
                hata=(b-a)/(ust(2,n));

            c=(a+b)/2;
            if((degerHesapla(p1,a,elemanSayisi) * degerHesapla(p1,c,elemanSayisi))<0){
                b=c;
            }
            else{
                a=c;
            }
            
                        
        }
    }while (hata>hataKesinlik);

    return c; 

    }
}