Algoritma ve Programlama Bilgisayar ve Programlama • Bilgisayar nasıl çalışır? Nasıl Çalışır? Program Geliştirme Basamakları TASARIM Gereksinimlerin Toplanması ve Analizi BAKIM GELİŞTİRME ve ONARIM TEST Algoritma Nedir? • Al-Harezmi… • Belli bir problemi çözmek veya belirli bir amaca ulaşmak için çizilen yola algoritma denir. Değişkenler • Değişkenler (variables) bir program içinde kullanılan temel nesnelerdir. • İçlerinde veri depolayabilir ve depolanan veriler programı kullanırken değiştirilebilir. Bu nedenle değişken diye adlandırılırlar. Doğrusal Akış Şemaları • Örnek: Klavyeden girilen İki sayının toplamını hesaplayıp yazan algoritma ve akış şemasını hazırlayınız. (X: Birinci sayı, Y: İkinci sayı, Z: toplam) A1 : Başla A2 : Klavyeden oku X A3 : Klavyeden oku Y A4 : Hesapla Z = X + Y A5 : Yaz Z A6 : Dur Akış Çizelgeleri (Flow Diagrams) Algoritmanın başladığını ya da sona erdiğini belirtmek için kullanılır. Araç belirtemeden giriş ya da çıkış yapılacağını gösterir. Klavye aracılığı ile giriş ya da okuma yapılacağını gösterir. Hesaplama ya da değerlerin değişkenlere aktarımını gösterir. Yapılacak işler birden fazla sayıda yinelenecek İse, diğer bir deyişle iş akışında çevrim (döngü) var ise bu sembol kullanılır. Aritmetik ve mantıksal ifadeler için karar verme ya da karşılaştırma durumunu gösterir. Oklar işin akış yönünü gösterir. Örnek – Akış Şeması BAŞLA OKU X OKU Y Z=X+Y YAZ Z DUR Çay içer misiniz? • Demleyelim o zaman… Ring’e binme, Telefon etme, Yemek yapma… • Gündelik hayatınızdan… bir algoritma adımlarla ve akış diyagramları ile yazınız. Döngüsel Akış Şemaları • Klavyeden girilen bir yazıyı 5 kez yazdıran algoritma ve akış şemasını oluşturunuz. ( Y : Yazı, S : Sayaç ) A1 : Başla A2 : Oku Y A3 : Yaz Y A4 : S = S + 1 A5 : Eğer S < 5 ise A3 e git A6 : Dur Örnek – Döngüsel Akış Şemaları BAŞLA OKU Y S = 0 , 5, 1 Sayısı bilinen döngülerde; başlangıç değeri, son değer, artış sayısı YAZ Y S Döngünün çalıştığı bölüm DUR En Büyüğü Bulma Algoritması largest ← L0 for each item in the list (Length(L)≥1), do if the item > largest, then largest ← the item return largest Neler Yaptık? • Minion Soundbox • Magic 8 Ball Nasıl Yaptık? Peki ya Geleneksel metin tabanlı programlama • C++ • Java • C# • Phyton • Ruby •… Hello World in C++ #include<iostream> using namespace std; // main() is where program execution begins. int main() { cout <<"Hello World";// prints Hello World return0; } C++ Toplama #include<iostream> using namespace std; int main() { int toplam=0; int a=0; İnt b=0; cin>>a>>b; toplam=a+b; cout << toplam;// toplamı yazdırır return0; } App Inventor’da Toplama If…Else #include <iostream> using namespace std; int main() { int age; // Most important part of the program! // Need a variable... cout<<"Please input your age: "; // Asks for age cin>> age; // The input is put in age If…Else if ( age < 100 ) { // If the age is less than 100 cout<<"You are pretty young!\n"; } else if ( age == 100 ) cout<<"You are old\n"; } else { cout<<"You are really old\n"; } } // Executed if no other statement is Android Ekranı Koordinat Düzlemi X Y