B.29.ln(1+x)=x-x2/2+x3/3-x4/4+x5/5-… olduğuna göre kullanıcının belirliyeceği terim adeti kadar girilen sayı kadar hesaplama yapar.

Program: ln(1+x)=x-x2/2+x3/3-x4/4+x5/5-… olduğuna göre  kullanıcının belirliyeceği  terim adeti kadar girilen sayı kadar hesaplama yapar.

 

a-1) C çözümü

 

/* ln(1+x)=x-(x^2)/2+(x^3)/3-(x^4)/4+(x^5)/5-.. olduguna gore  kullanicinin

belirliyecegi terim adeti kadar girilen sayi kadar hesaplama

yapar. while solution in C by Kamil Bala */

#include<stdio.h>

#include<math.h>

float x,Terim,Carp,Sayac,Sonuc,Cift;

main()

{

printf(“ln(1+x) denkleminde “);

printf(“x sarti -1<x ve x<=1 olmalidir.\n\n x:”); scanf(“%f”,&x);

 

printf(“\nDenklemi kac terimle hesapliyacaksiniz:”);scanf(“%f”,&Terim);

 

Sayac=0;

Sonuc=0;

 

while(Sayac<Terim)

{

Sayac++;

Cift=2*floor(Sayac / 2);

/* Sayi cift ise -1 ile tek ise 1 ile carp */

if (Cift==Sayac) Carp=-1; else Carp=1;

/* Denklem */

Sonuc=Sonuc+Carp* pow(x,Sayac)/Sayac;

/* Her bir adimda sonucun gorulmesi icin */

printf(“Sonuc:%f\n”,Sonuc);

}

 

return 0;

}

 

 

a-2) C++ çözümü

 

/* ln(1+x)=x-(x^2)/2+(x^3)/3-(x^4)/4+(x^5)/5-.. olduguna gore  kullanicinin

belirliyecegi terim adeti kadar girilen sayi kadar hesaplama

yapar. while solution in C++ by Kamil Bala */

#include<iostream.h>

#include<math.h>

float x,Terim,Carp,Sayac,Sonuc,Cift;

main()

{

cout<<“ln(1+x) denkleminde “;

cout<<“x sarti -1<x ve x<=1 olmalidir.\n\n x:”;cin>>x;

 

cout<<“\nDenklemi kac terimle hesapliyacaksiniz:”;cin>>Terim;

 

Sayac=0;

Sonuc=0;

 

while(Sayac<Terim)

{

Sayac++;

Cift=2*floor(Sayac / 2);

/* Sayi cift ise -1 ile tek ise 1 ile carp */

if (Cift==Sayac) Carp=-1; else Carp=1;

/* Denklem */

Sonuc=Sonuc+Carp* pow(x,Sayac)/Sayac;

/* Her bir adimda sonucun gorulmesi icin */

cout<<“\nSonuc:”<<Sonuc;

}

cout<<“\n\n”;

return 0;

}

B.28.ex sayısını Taylor serisi ile açılımı ex =1+x+x2/2!+x3/3!+… olduğuna göre kullanıcının belirliyeceği terim adeti kadar girilen sayı kadar hesaplama yapar.

Program: ex sayısını Taylor serisi ile  açılımı ex =1+x+x2/2!+x3/3!+… olduğuna göre  kullanıcının belirliyeceği  terim adeti kadar girilen sayı kadar hesaplama yapar.

 

a-1) C çözümü

 

/* Program e ussu x degerini Taylor serisi

yardimi ile istenen adet terimle hesaplar

while solution in C by Kamil Bala */

#include<stdio.h>

float X,X_Kuvvet,Fakt,Adet;

float Sayac,e,y;

main()

{

Sayac=0;

X_Kuvvet=1;Fakt=1; e=1;

printf(“e ussu kac hesaplayacaksiniz:”);scanf(“%f”,&X);

printf(“Kac terimle hesaplamak istersiniz:”);scanf(“%f”,&Adet);

 

for(int OnSayac=1;OnSayac<=Adet;OnSayac++)

{

Sayac++;

X_Kuvvet=X_Kuvvet*X;

Fakt=Fakt*Sayac;

e=e+X_Kuvvet/Fakt;

/* Her adim sonunda ki islem gorunmesi icin

asagida ki satir hazirlanmistir */

printf(“Sayac:%0.f X_Kuvvet:%0.f Fakt:%f e ussu x:%f\n”,Sayac, X_Kuvvet,Fakt,e);

}

 

/* Sonuc */

printf(“\n\n%0.f terimle e ussu %0.f = %f\n\n”,Adet, X,e);

 

/* Sonucun dogrulugu terimi sayisini arttirdikca artacaktir. */

return 0;

}

 

 

a-2) C++ çözümü

 

/* Program e ussu x degerini Taylor serisi

yardimi ile istenen adet terimle hesaplar

while solution in C by Kamil Bala */

#include<iostream.h>

float X,X_Kuvvet,Fakt,Adet;

float Sayac,e,y;

main()

{

Sayac=0;

X_Kuvvet=1;Fakt=1; e=1;

cout<<“e ussu kac hesaplayacaksiniz:”;cin>>X;

cout<<“Kac terimle hesaplamak istersiniz:”;cin>>Adet;

 

//OnSayac yalnizca for dongusu icindir

for(int OnSayac=1;OnSayac<=Adet;OnSayac++)

{

// Sayac float islemlere katilmasi icin ayri sayac olarak dusunulmustur

Sayac++;

X_Kuvvet=X_Kuvvet*X;

Fakt=Fakt*Sayac;

e=e+X_Kuvvet/Fakt;

/* Her adim sonunda ki islem gorunmesi icin

asagida ki satir hazirlanmistir */

cout<<“Sayac:”<<Sayac<<” X_Kuvvet:”<<X_Kuvvet;

cout<<” Fakt:”<<Fakt<<” e ussu x:”<<e<<“\n”;

}

 

/* Sonuc */

cout<<“\n”<<Adet<<” terimle e ussu “<<X<<“=”<<e<<“\n\n”;

 

/* Sonucun dogrulugu terimi sayisini arttirdikca artacaktir. */

return 0;

}

B.27.ln2=1-1/2+1/3-1/4+1/5-… şeklindedir. Bu sayının ilk 10 terimini alarak bu sayıyı hesaplayan programı yazın.

Program: ln2=1-1/2+1/3-1/4+1/5-…  şeklindedir. Bu sayının ilk 10 terimini alarak bu sayıyı hesaplayan programı yazın.

 

a-1) C çözümü

 

/* ln2’nin taylor serisine acilimi ln2=1-1/2+1/3-1/4+1/5-..

seklindedir. Bu sayinin istenen terim kadar hesaplayan

program. for solution by Kamil Bala */

#include<stdio.h>

int Sinir,Cift,Carp;

float ln2,Terim,Sayac;

main()

{

printf(“\nln2 sayisini kacinci terime kadar hesaplamak istersiniz:”);

scanf(“%d”,&Sinir);

ln2=1; Sayac=2;

for(int Sira=2;Sira<=Sinir;Sira++)

{

Cift=Sira%2;

if (Cift==0) Carp=-1;

else Carp=1;

Terim=(Carp*(1/Sayac));

ln2=ln2+Terim;

printf(“\n%d . terim:%f sonunda ln2:%f\n”,Sira,Terim,ln2);

Sayac++;

}

printf(“\n\nln2 degeri %d terim ile ln2=%f\n\n”,Sinir,ln2);

return 0;

}

 

 

a-2) C++ çözümü

 

/* ln2’nin taylor serisine acilimi ln2=1-1/2+1/3-1/4+1/5-..

seklindedir. Bu sayinin istenen terim kadar hesaplayan

program. for solution by Kamil Bala */

#include<iostream.h>

int Sinir,Cift,Carp;

float ln2,Terim,Sayac;

main()

{

cout<<“\nln2 sayisini kacinci terime kadar hesaplamak istersiniz:”;

cin>>Sinir;

ln2=1; Sayac=2;

for(int Sira=2;Sira<=Sinir;Sira++)

{

Cift=Sira%2;

if (Cift==0) Carp=-1;

else Carp=1;

Terim=(Carp*(1/Sayac));

ln2=ln2+Terim;

cout<<“\n”<<Sira<<“. terim:”<<” sonunda ln2:”<< ln2;

Sayac++;

}

cout<<“\n\nln2 degeri “<<Sinir<<” terim ile ln2=”<<ln2<<“\n\n”;

return 0;

}

B.26. Başlangıç olarak ilk iki elemanı verilen Fibonacci dizisinin istenen elemanına kadar yazdıran program.

Program: Başlangıç olarak ilk iki elemanı verilen Fibonacci  dizisinin istenen elemanına kadar yazdıran program.

 

 

a-1) C çözümü

 

/* Baslangic olarak ilk iki elemani verilen Fibonacci

dizisinin istenen elemanina kadar yazdiran program.

if solution in C by Kamil Bala */

#include<stdio.h>

int Birinci,Ikinci,Yeni,Sayi,Sayac;

main()

{

printf(“Birinci elemani girin:”);scanf(“%d”,&Birinci);

printf(“\nIkinci elemani girin:”);scanf(“%d”,&Ikinci);

Sayac=3;

printf(“\nFiboncci dizisinin kacinci elemanina\n”);

printf(“kadar hesaplamak istersiniz:”);scanf(“%d”,&Sayi);

printf(“\n\n”);

printf(“%d  %d”,Birinci,Ikinci);

Artim:

Yeni=Birinci+Ikinci;

printf(” %d”,Yeni);

Birinci=Ikinci;

Ikinci=Yeni;

if (Sayi!=Sayac)

{

Sayac++;

goto Artim;

}

printf(“\n\n”);

return 0;

}

 

 

 

a-2) C++ çözümü

 

/* Baslangic olarak ilk iki elemani verilen Fibonacci

dizisinin istenen elemanina kadar yazdiran program.

if solution in C++ by Kamil Bala */

#include<iostream.h>

int Birinci,Ikinci,Yeni,Sayi,Sayac;

main()

{

cout<<“Birinci elemani girin:”;cin>>Birinci;

cout<<“\nIkinci elemani girin:”;cin>>Ikinci;

Sayac=3;

cout<<“\nFiboncci dizisinin kacinci elemanina\n”;

cout<<“kadar hesaplamak istersiniz:”;cin>>Sayi;

cout<<“\n\n”;

cout<<Birinci<<” “<<Ikinci<<” “;

Artim:

Yeni=Birinci+Ikinci;

cout<<Yeni<<” “;

Birinci=Ikinci;

Ikinci=Yeni;

if (Sayi!=Sayac)

{

Sayac++;

goto Artim;

}

cout<<“\n\n”;

return 0;

}

B.25. Fibonacci dizisi ‘1 1’ ile başlayan ve ardında ki dizi elemanlarını önceki iki sayının toplamı ile ‘1+1=2, 1+2=3, 2+3=5 vb.’ elde edilen dizidir. Fibonacci dizinin ilk oniki elemanını bulan programı yazınız.

Program: Fibonacci dizisi ‘1 1’ ile başlayan ve ardında ki dizi elemanlarını önceki iki sayının toplamı ile ‘1+1=2, 1+2=3, 2+3=5 vb.’ elde edilen dizidir. Fibonacci dizinin ilk oniki elemanını bulan programı yazınız.

 

a-1) C çözümü

 

/* Fibonacci dizisi ‘1 1’ ile baslayan ve ardinda ki dizi elemanlarini

onceki iki sayinin toplami ile ‘1+1=2, 1+2=3, 2+3=5 vb.’ elde edilen

dizidir. Fibonacci dizinin istenen elemanina kadar yazdiran program.

(if solution) do-while in C by Kamil Bala */

#include<stdio.h>

int Birinci,Ikinci,Yeni,Sayi,Sayac;

main()

{

Birinci=0;Ikinci=1;Sayac=1;

printf(“Fiboncci dizisinin kacinci elemanina\n”);

printf(“kadar hesaplamak istersiniz:”);scanf(“%d”,&Sayi);

printf(“\n\n”);

Artim:

printf(” %d”,Ikinci);

Yeni=Birinci+Ikinci;

Birinci=Ikinci;

Ikinci=Yeni;

if (Sayi!=Sayac)

{

Sayac++;

goto Artim;

}

printf(“\n\n”);

return 0;

}

 

 

 

a-2) C++ çözümü

 

/* Fibonacci dizisi ‘1 1’ ile baslayan ve ardinda ki dizi elemanlarini

onceki iki sayinin toplami ile ‘1+1=2, 1+2=3, 2+3=5 vb.’ elde edilen

dizidir. Fibonacci dizinin istenen elemanina kadar yazdiran program.

(if solution) do-while in C by Kamil Bala */

#include<iostream.h>

int Birinci,Ikinci,Yeni,Sayi,Sayac;

main()

{

Birinci=0;Ikinci=1;Sayac=1;

cout<<“Fiboncci dizisinin kacinci elemanina\n”;

cout<<“kadar hesaplamak istersiniz:”;cin>>Sayi;

cout<<“\n\n”;

Artim:

cout<<Ikinci<<” “;

Yeni=Birinci+Ikinci;

Birinci=Ikinci;

Ikinci=Yeni;

if (Sayi!=Sayac)

{

Sayac++;

goto Artim;

}

cout<<“\n\n”;

return 0;

}

B.24.Tutulan sayının tahmini bulmak için sayıdan küçük yada büyük olduğunu yazdırarıp, sayıyı bulduğunda tebrik yazısı ile birlikte kaç tahminde bulduğunu yazdıran program.

Program: Tutulan sayının tahmini bulmak için sayıdan küçük yada büyük olduğunu yazdırarıp, sayıyı bulduğunda tebrik yazısı ile birlikte kaç tahminde bulduğunu yazdıran program.

 

a-1) C çözümü

 

/* Onceden bir sayi giriliyor.Diger kullanici bu sayiyi

bulmak icin tahminde bulunuyor. Eger kucuk sayi girmisse

kucuk  yada buyuk girmisse buyuku yazdirip, sayiyi buldugunda

tebrik yazisi ile birlikte kac tahminde buldugunu

yazdiran program.while solution in C by Kamil Bala */

#include<stdio.h>

int Tahmin,Sayi,Adet;

main()

{

printf(“1. kullanici.\n\n”);

printf(“Tutmak istediginiz sayi:”);scanf(“%d”,&Sayi);

Adet=1;

printf(“\n\n2.kullanici.”);

printf(“Tahmininiz:”);scanf(“%d”,&Tahmin);

while (Tahmin!=Sayi)

{

if (Tahmin<Sayi) printf(“\nDaha buyuk sayi giriniz.\n”);

else printf(“\nDaha kucuk sayi giriniz.\n”);

Adet++;

printf(“\nTahmininiz:”);scanf(“%d”,&Tahmin);

}

printf(“\nTebrikler! %d”,Adet);printf(” tahminde bildiniz.\n\n”);

}

 

a-2) C++ çözümü

 

/* Onceden bir sayi giriliyor.Diger kullanici bu sayiyi

bulmak icin tahminde bulunuyor. Eger kucuk sayi girmisse

kucuk  yada buyuk girmisse buyuku yazdirip, sayiyi buldugunda

tebrik yazisi ile birlikte kac tahminde buldugunu

yazdiran program.while solution in C by Kamil Bala */

#include<iostream.h>

int Tahmin,Sayi,Adet;

main()

{

cout<<“1. kullanici.\n\n”;

cout<<“Tutmak istediginiz sayi:”;cin>>Sayi;

Adet=1;

cout<<“\n\n2.kullanici.”;

cout<<“Tahmininiz:”;cin>>Tahmin;

while (Tahmin!=Sayi)

{

if (Tahmin<Sayi)  cout<<“\nDaha buyuk sayi giriniz.\n”;

else  cout<<“\nDaha kucuk sayi giriniz.\n”;

Adet++;

cout<<“\nTahmininiz:”;cin>>Tahmin;

}

cout<<“\nTebrikler! “<<Adet<<” tahminde bildiniz.\n\n”;

}