selam Uluslararası Kıbrıs Univ. 4. sınıf bil. müh. öğrencisiyim. Algoritma çıkarmak yeni başlayanlar için acıdır
Şöyle bu işe başlamak için önce pseducode nedir onu bilmek lazım daha sonra yavaş yavaş ilerlemek lazım. ne mi diyorum ben? :utan
öncelikle programı normal dilimizdeki haliyle yazmak lazım. sonra bunları pseducode'a çevirmek lazım yada flowchart. daha sonra bunlar koda dökülmeli.
örnek: Bi öğrencinin notlarını girip ortalamasını ekrana yazdıran bir program yazınız. Sonuç harf şeklinde olacak ne not aralıkları
0-50 F
50-60 D
60-70 C
70-80 B
80-100 A
olsun.
Ağırlıklarda vize1 %30, vize2 %30, final %40
şimdi böyle bi iş için ne gerekli onları bi düşünelim.
bana öğrencinin 1. vizesini tutan bi değişken lazım buna vize1 desek
öğrencinin 2. vizesini tutan bi değişken lazım buna vize2 desek
öğrencinin finalini tutan bi değişken lazım buna final desek.
birde sonucu tutan bir değişken lazım onada sonuc diyelim.
pseducode u şöyledir bu programın.
Kullanıcıdan öğrencinin 1. vizesinin notunu al
Kullanıcıdan öğrencinin 2. vizesinin notunu al
Kullanıcıdan öğrencinin final sonucunu al
Sonra vize ve final sonuçlarını ağırlıklara böl
çıkan sonuçları topla
eğer çıkan sonuç 0 ile 50 arasında ise
ekrana F yaz
eğer çıkan sonuc 50-60 arasında ise
ekrana D yaz
eğer çıkan sonuç 60-70 arsında ise
ekrana C yaz
eğer çıkan sonuç 70-80 arasında ise
ekrana B yaz
eğer çıkan sonuç 80-100 arasında ise
ekrana A yaz
programı bitir.
pseducode bu şekilde. artık bundan sonra sadece bu cümlelere bakarak programı yazması oldukça basit. Algoritmasınıda çıkarmış olduk. pseducode zaten algoritmayı verir.
şimdi bunu koda dökersek
Kod:
#include <stdio.h>
int main(void){
int vize1, vize2;
double sonuc;
printf ("1. Vize sonucu: ");
scanf ("%d",&vize1);
printf ("2. Vize sonucu: ");
scanf ("%d",&vize2);
printf ("Final sonucu: ");
scanf ("%d", &final);
sonuc = ((vize1/30*100) + (vize2/30*100) + (final/40*100));
// sonucu hesaplattık şimdi notu harf olarak yazdırmakta
if (sonuc < 50)
printf ("F");
if (sonuc < 60 && sonuc >50)
printf ("D");
if (sonuc <70 && sonuc > 60)
printf ("C");
if (sonuc <80 && sonuc > 70)
printf ("B");
if (sonuc > 80)
printf ("A");
return 0;
}
Önemli olan yazacağınız programı önce kafanızdan cümle cümle yazabilmektir. Eğer bunu yapabilirseniz program akışınızda doğru olur algoritmanızda. :biggrin