C++ Temeli Algoritma

FİREMAN ;

Kullanıcı
Acemi üye 365-Gündür-Beraberiz! Çaylak Üye 5 Yıldır Beraberiz Bronz Üye 10 Yıldır Beraberiz Doğrulanmamış Hesap Silver Üye 15 Yıldır Beraberiz Gold Üye
2
Katılım
5 Ocak 2010
Mesajlar
2,559
Tepkime puanı
1
Yaş
34
Ticaret - 0%
0   0   0


C++ Temeli Algoritma
Bir problemin cozulebilmesi icin adim adim uygulanan kurallar dizisidir.Algoritmalari kullanarak programlari daha kolay bir bicimde olusturabiliriz.Algoritmalarin en onemli ozelligi, her turlu alternatif gidis yolu dusunulerek sonuca ulasildiginin garanti edilmesidir.Buna ek olarak bir algoritmada, girilen verilerin degerlendirilmesi ve buna karsilik olarak sonuclarin elde edilmesi gereklidir.

Algoritmalar olusturulurken ya cesitli sekillerden ya da bir dilden yararlanilir.Eger algoritma olusturulurken bir dil kullanilmissa bu dil, matematiksel ifadelerin de bulundugu ve konusurken kullandigimiz bir dil oldugu gibi, ozel olarak algoritma tasarimi icin hazirlanmis bir dil de olabilir.Eger ki sekillerinden yararlanarak algoritma olusturuyorsak, akis semalarindan yararlanilir.Ancak biz bu bolumde algoritmalari konusma dili yardimiyla basit bir sekilde olusturacagiz.


ALGORITMADA OLMASI GEREKEN OZELLIKLER

*Girdi/Cikti :Her algoritmanin bir giris ve cikis degeri olmalidir.Girdi; algoritmanin uzerinde islem yapmasi icin aldigi veridir; cikti ise algoritmanin girdiye karsi elde ettigi sonucudur.

*Aciklik :Birden fazla anlama gelebilecek yani ikilemde kalinabilecek ifadelere ifadelere sahip adimlar olusturulmamalidir.Bu nedenle her adim acik ve anlasilir bir bicimde ifade edilmelidir.

*Sonluluk :Bir algoritma her ne kosulda olursa olsun sonlu sayida islem icermeli ve bu islemlerin de suresi sonlu olmalidir.

*Etkinlik : Bir algoritma ayni.zamanda gereksiz tekrarlardan kacinmalidir ve gerektigi zaman baska bir algoritma icinde de kullanilabilir.

ÖRNEK:

Girilen bir sayının karesini alıp ekrana yazdıran bir programın algoritmasını oluşturalım.

Girdi: Karesi alınacak sayı (x)
Çıktı: Girilen sayının karesi (sonuç)

Kod:
1. Başla
2. x değerini gir
3. sonuç x*x
4. sonuç değerini ekrana yaz.
5. Bitir
Bu algoritma ile iki sayının karesini almış olduk.

ÖRNEK2:

Girilen iki sayıyı toplayan programın algoritmasını oluşturalım.

Girdi: Birinci sayı (x) , İkinci Sayı (y)
Çıktı: İki sayının toplamı (toplam)


Kod:
1. Başla
2. x değerini gir
3. y değerini gir
4. Eğer x,y'den büyükse adım 6'ya git
5. Eğer y,x'den büyükse adım 7'ye git
6. x değerini ekrana yaz ve adım 8'e git
7. y değerini ekrana yaz ve adım 8'e git
8. Bitir
Bu örnekte ise kullanıcıdan alınan iki sayıyı karşılaştırdık.Büyük olan sayıyı adımlar arasında geçişler yaparak ekrana yazdırmış olduk.

NOT: Yukarıdaki örnekte ilk defa gördüğünüz adımlar arası geçişler,algoritmanın bir özelliğidir. Bu geçişler olmasaydı,algoritma otomatik olarak bir sonraki adıma geçerek devam ederdi.Örneğin; yukarıdaki örnekte adım geçişleri yapmasaydık,büyük olan sayıyı bulurdu.Ancak ekrana hem x değerini hem de y değerini yazardı.

ÖRNEK3:

1'den 100'e kadar olan sayıların toplamını ekrana yazdıran algoritmayı oluşturalım.

Girdi: Sayılar (s)
Çıktı: Toplam (t)

Kod:
1. Başla
2. s değerine ilk değer olarak 1 ve t değerine ilk değer olarak 0 değerini ver
3. s değerini t'ye ekle
4. s değerini 1 arttır
5. Eğer s>100 ise adım 7'ye git
6. Adım 3'e git
7. t değerini ekrana yazdır.
8. Bitir
Bu örnekte s değerine ilk değer olarak 1 değerinden itibaren,s değerini t'ye ekle komutu işletilir ve s değeri 1 arttırılır.Bu işlem s değeri 100'dne büyük oluncaya kadar devam eder. s değeri 100'den büyük olunca t değeri ekrana yazılır.

ÖRNEK4:

0'dan 100'e kadar olan sayıların karesini alıp ekrana yazdıran algoritmayı oluşturalım.

Girdi: Sayılar (s)
Çıktı: Sayının Karesi (k)


Kod:
1. Başla
2. s değerine ilk olarak 1 değerini ver
3. k=s*s yap
4. k değerini ekrana yaz
5. s değerini 1 arttır
6. s>100 ise adım 8'e git
7. Adım 3'e git
8. Bitir
Bu örnekte bir önceki örnekte olduğu gibi s değerine 1 değerini verdik.Daha sonra s değerinin karesini ekrana yazdırdık.Ardından s değeri, 100'den büyük olana kadar 1 arttırılarak aynı işlemi tekrarladık. s değeri 100'den büyük olduğunda ise algoritma sonlandırıldı.

ÖRNEK5:

Bir sınıftaki öğrencilerin bir dersten aldıkları notların ortalamasını ekrana yazan algoritmayı oluşturalım.

Girdi: Öğrencilerin notları (n1,n2,n3....nSon),öğrenci sayısı (x),indis (i),Notların toplamı (toplam)
Çıktı: Ortalama (ort)

Kod:
1. Başla
2. x değerini gir
3. i değerine ilk değer olarak 1 değerini ver
4. öğrencinin notunu (n) gir
5. toplam=toplam+n yap
6. i'yi 1 arttır
7. Eğer i>x ise Adım 9'a git
8. Adım 4'e git
9. ort=toplam/x
10. ort değerini ekrana yaz
11. Bitir
Bu örnekte öncelikle öğrenci sayısını aldık.İlk öğrencinin notu,ikinci öğrencinin notu şeklinde gösterebilmek için i değerini sayaç olarak kullandık. Daha sonra yoplam notlarımıza öğrencinin notunu ekledik ve indisi 1 arttırdık.Yani bir sonraki öğrencinin notuna geçtik. Eğer gelinen öğrenci sayısı toplam öğrenci sayısından büyükse ; adım 9'a geldik ve toplanan notları öğrenci sayısına bölerek ortalamayı bulup ekrana yazdırdık.Eğer gelinen öğrenci sayısı toplam öğrenci sayısından küçükse;adım 4'e gittik ve bu işlemleri indis değeri öğrenci sayısından büyük olana kadar tekrarladık.
 


 

 
Home Register Log In
Üst