Ödev 2 Çözümleri

Soru 1

0≤ x ≤1 aralığında keyfi 100 değer üretiniz. Elde ettiğiniz bu keyfi değerler için eğer x≥ 0.1 ise Exp[-x] ifadesinden yoksa (x<0.1) "1-x" yaklaşımı kullanarak aldığı değerleri hesaplayınız. Bulduğunuz (x,y) değer çiftlerini  en uygun parabolik (2. dereceden) bir denkleme uyarlayınız.  Veri çiftlerini birer nokta olarak ve denklemi bir eğri olarak üst üste çizdiriniz. Uyarladığınız denklemin verilerden yüzde sapmasını her bir nokta için bulunuz. Buradan ortalama % hatayı bulunuz.

list=Table[Random[Real],{100}];sonuç={};
Do[y=If[x≥0.1,Exp[-x],1-x];AppendTo[sonuç,{x,y}],{x,list}]
pfit=Fit[sonuç,{1,x,x^2},x]
pl=sonuç//ListPlot;
pd=Plot[pfit,{x,0,1},PlotStyle->Red];
Show[pl,pd]
100(((pfit/.x->list)-(Subscript[Transpose[sonuç], [[2]]]))/(Subscript[Transpose[sonuç], [[1]]]))

Soru 2

Bir sayı serisinde herhangi bir sayı kendisinden önceki iki sayının çift ise ikiye bölümü ve tek ise bir fazlası alınarak toplamından elde edilmektedir. Bu seriye 0 ve 1 ile başalayarak aşağıdaki seriyi elde eden bir fonksiyonlu program yazınız.
1 2  3  5  10  11  17  30  33  49  84  92  88  90 89  ...

Sayıserisi[n_]:=(a1=0;a2=1;Do[a3=If[Mod[a1,2]==0,(a1/2),a1+1]+If[Mod[a2,2]==0,(a2/2),a2+1];a1=a2;a2=a3,{i,2,n}];a2)

Table[Sayıserisi[i],{i,15}]

Soru 3

1≤ x ≤100 aralığında keyfi 100 tamsayı değer üretiniz. Elde ettiğiniz bu keyfi değerler için eğer x≥ 10 ise Exp[-x/100] ifadesinden yoksa (x<10) "1-x/100" yaklaşımı kullanarak aldığı değerleri hesaplayınız. Bulduğunuz (x,y) değer çiftlerini  en uygun parabolik (2. dereceden) bir denkleme uyarlayınız.  Veri çiftlerini birer nokta olarak ve denklemi bir eğri olarak üst üste çizdiriniz. Uyarladığınız denklemin verilerden yüzde sapmasını her bir nokta için bulunuz. Buradan ortalama % hatayı bulunuz.

list=Table[Random[Integer,{1,100}],{100}];sonuç={};
Do[y=If[x≥10,Exp[-x/100],1-x/100];AppendTo[sonuç,{x,y}],{x,list}]
pfit=Fit[sonuç,{1,x,x^2},x]
pl=sonuç//ListPlot;
pd=Plot[pfit,{x,0,100},PlotStyle->Red];
Show[pl,pd]
100(((pfit/.x->list)-(Subscript[Transpose[sonuç], [[2]]]))/(Subscript[Transpose[sonuç], [[1]]]))

Soru 4

Bir sayı serisinde herhangi bir sayı kendisinden önceki iki sayının toplamı çift ise ikiye bölümü, yok tek ise iki katı alınarak elde edilmektedir. Bu seriye 0 ve 1 ile başalayarak aşağıdaki seriyi elde eden bir fonksiyonlu program yazınız.
1  2  6  4  5  18  46  32  39  142  362  252  307  1118  2850  ...

Sayıserisi[n_]:=(a1=0;a2=1;Do[a3=If[Mod[a1+a2,2]==0,((a1+a2)/2),2(a1+a2)];a1=a2;a2=a3,{i,2,n}];a2)

Table[Sayıserisi[i],{i,1,15}]