Algoritma ve Programlama

advertisement
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
Download