Programlama Dilleri I
Kaynaklar Seçkin Yayınevi Fahri VATANSEVER KODLAB Kadir ÇAMOĞLU KODLAB H.Burak TUNGUT
Kaynaklar Seçkin Yayınevi Erhan ARI PUSULA Fahrettin ERDİNÇ
ALGORİTMA NEDİR?
Bu adam ağaçlara nasıl ulaşabilir?
Siz makarnayı nasıl pişirirsiniz?
1. Evde makarna yapmak için malzemeleri kontrol et. 2. Eğer evde malzemeler yok ise 18. adıma git. 3. Makarna paketinin ağzını aç. 4. Tencereye su koy. 5. Tencereyi ocağın üstüne koy. 6. Ocağı Yak. 7. Suyu kaynaması için 5 dk bekle 8. Eğer Su kaynamadı ise 7. adıma git. 9. Eğer Su kaynadı ise tuzu,yağı suya dök. 10. Suyu karıştır. 11. 1'dk. Bekle. 12. Makarnayı kaynayan suya koy. 13. 5'dk. bekle. 14. Makarna pişmiş mi kontrol et. 15. Eğer Makarna Pişmedi ise 13. adıma git. 16.Ocağı kapat. 17. Servis yap. 18. Dur.
Algoritma: Bir PROBLEMİN çözümünün, günlük konuşma diliyle adım adım yazılmasıdır. Algoritma: Bir işlemin veya işlemlerin gerçekleştirilmesinde izlenecek adımlara denir. Algoritmanın özellikleri ü Başlangıcı olmalı ü Basit ve anlaşılır olmalı ü Mümkün olduğunca az adımlı olmalı ü Sonu olmalı.
Yazılım Programlama Dilleri 1970 - Pascal 1972 - C 1972 - Smalltalk 1972 - Prolog 1973 - ML 1978 SQL 1983 - Ada 1983 - C++ 1985 Eiffel 1987 - Perl 1989 - FL (Function Level) 1990 - Haskell 1990 - Python 1991 - Java 1993 - Ruby 1995 PHP 1995 - Delphi 2000 - C# 2001 RPG IV 2002 Gosu 2003 Falcon 2004 Little b 2005 F# 2006 Cobra 2007 Ada2005 2008 Genie 2009 Go 2010 Rust 2011 C++11 2012 Julia 2014 Swift
En popüler 10 dil hangileridir? Java C C++ PHP VB Python C# JavaScript Perl Ruby
Peki siz bir yazılım geliştirici olabilirmisiniz? Lütfen İzleyelim
Bilgisayarda Yapılan İşlemler Bilgisayar programı ile yapılan işlemler; 1. Aritmetiksel İşlemler 2. Karşılaştırma İşlemleri 3. Mantıksal İşlemler
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI 3.1- Aritmetiksel operatörler İşlemleri belirten simgelere, bilgisayar dilinde operatör denir. Operatör Anlamı + toplama - Çıkarma * Çarpma / Bölme % Kalanlı Bölme ^ Üs alma ( ) Parantez
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI Aritmetik operatörlerde işlem öncelik sırası kuralları İşlem Sırası Açıklama Matematik Bilgisayar 1 Parantezler ( ( ) ) ( ( ) ) 2 Üs Almak a n a^n 3 Çarpma ve Bölme 4 Toplama ve Çıkarma ab, a/b a*b, a/b a+b, a- a+b, b a-b 9 ( 4 / ( ( 2*6 *(4/2) ) / 6) ) (4*2)
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI y = 5x + 3x 2-7 denklemi program olarak nasıl yazılmalıdır? y = 5 * x + 3 * x ^2-7 2 1 3 4 5
y = 8 / 4-2 * 2 / 4 3 + 6 / 3-1? ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI işleminin sonucu kaçtır y = 8 / 4-2 * 2 / 4 3 + 6 / 3-1 1 2 4 3 5 6 7 8 Sonuç = - 1
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI Faiz formülü : Süre gün (t) Faiz oranı (N) Faiz (F) = Anapara (A) 365 100 F = A * ( t / 365) * ( N / 100)
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI Bileşik Faiz - Gelecek Değer Belirli zaman aralıklarında kazanılan faizin de anaparaya eklenmesi ile elde edilen faizdir. G = B ( 1 + r ) n G: Gelecekteki Değer, B: Bugünkü Değer, r : Dönemlik Faiz Oranı, n: Dönem Sayısı G = B * ( 1 + r ) ^ n
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI Araba sıfırdan 100 KM ye çıkarmak için sürekli gaz pedalına basılırsa hızlanarak gidecektir. Yada Hızlıyken fren pedalına basılırsa yavaşlayarak duracaktır. Bu sürelerde ne kadar yol alındığını aşağıdaki formül ile bulabiliriz? x = V + a t 2 V: İlk Hız, x: Alınan Mesafe, a: Yerçekimi ivmesi, t: geçen Süre x = V + a * t ^ 2
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI y = 2 x 2 + 4 Aritmetiksel ifadesi programlama dilinde nasıl yazılmalıdır? y = 2 * ( ( x ^ 2 + 4 ) ^ ( 1 / 2 ) )
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI X1 = B + B 2 4AC 2A Aritmetiksel ifadesini programlama dilinde nasıl yazılmalıdır? X1 = ( B + ( ( B ^ 2-4 * A* C) ^ ( 0.5 ) ) ) / (2*A) Soru : İşlem adımlarını çiziniz?
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI 1 y = 3x + 5 + 4 2x + x 2 Aritmetiksel ifadesini programlama dilinde nasıl yazılmalıdır? y = ( 1 / ( 3 * x + 5 ) ) + ( 4 / ( 2 * x + x * x ) )
ARİTMETİK İFADELERİN PROGRAM OLARAK YAZILMASI Örnek: Bir işçinin maaşı, mesai saati, bir saatlik mesai ücreti, eş yardımı, 2 çocuk yardımı, toplamından %20 kesinti yapılıyor. Ay sonunda işçinin eline geçecek net miktarı hesaplayan formülü yazınız? Tutar= (maaş + mesai saati * mesai ücreti + eş yardımı + 2 * çocuk yardımı ) * 0.8 Soru : İşlem adımlarını çiziniz?
Matematiksel İşlemler a Matematik gösterim Programda gösterim (kodlama) a + b c + 2abc - 7 a + b c + 2 * a * b * c -7 a + b 2 c 3 a + b ^ 2 c ^ 3 b 2 a + 2ac c a + b a + b a + b - c 2 a + b 3 + b 3 2 2 b 2ab 2 4ac 2(ab + ac + bc) 9 + a + abc b b c 3 a a b / c + 2 * a * c 2 / (a + b) (a + b) ^ (1 / 2) 2 * a * b / (b ^ 2 4 * a * c) (a + b - c) / (a ^ 2 + b ^ 3) ^ (1 / 2) 2 * (a * b + a * c + b * c) / 9 (a ^ 2 + b ^ 2) ^ (1 / 3) + a * b * c / (a + b / (c b / a ^ 3)^(1 / 2)) 3 4 5 a b a + b c ab + 1 + 1 1 1 + 1 abc ((a - b) ^ (1 / 5)/(a + b c / (a * b)) ^ (1 / 4)) ^ 1 / 3) +1 / (1 + 1/ (1 + 1 / (a * b * c)) ^ (1 / 2)) ^ (1 / 2)
Algoritmada kullanılacak gösterimler: Algoritmada kullanılacak gösterimler: Aritmetiksel İlişkisel Mantıksal Atama + topla - çıkar * çarp / böl % Mod ^ üs al > büyük >= büyük veya eşit < küçük <= küçük veya eşit <> farklı = eşit VE (AND) VEYA (OR) DEĞİL (NOT) = Örneğin : x 5 x = 5 x e 5 atanmıştır
Algoritma Algoritma örneği 1. Başla 2. Birinci sayıyı gir (sayi1) 3. İkinci sayıyı gir(sayi2) 4. Toplama işlemini yap(toplam=sayi1+sayi2) 5. Sonucu ekrana yaz (toplam) 6. Dur
Algoritma - Değişken Programın her çalıştırılmasında farklı değerler alabilen veya farklı değerler aktarabilen bilgi alanlarına değişken denir. Değişkenleri isimlendirme, tamamen programcının isteğine bağlıdır. Değişken adının yerine aldığı ifadeye çağrışım yapacak şekilde olması, programın anlaşırlığı açısından önemlidir.
Algoritma - Değişken Değişken isimleri verilirken uyulması gereken kurallar; İngiliz alfabesindeki A-Z veya a-z arasındaki harfler kullanılabilir, 0-9 arasındaki rakamlar kullanılabilir, Simgelerden sadece alt çizgi _ kullanılabilir, Harf veya alt çizgi ile başlayabilir, Rakamla başlayamaz ve bütün karakterler rakamlardan oluşamaz, Programla dilinin komutları veya anahtar kelimeleri olamaz.
Algoritma - Değişken Ad soyad _sayi1 1.Sayi +(sayi2 merhaba
Algoritma - Değişken VERİ SAYISAL ALFASAYISAL TAM SAYI ONDALIKLI KARAKTER KARAKTER DİZİSİ
Algoritma Veri Tipleri C# Açıklama Max ve Min aralık yada değeri sbyte 8 bit işaretli tamsayı -128 : 127 short 16 bit işaretli tamsayı -32.768 : 32.767 int 32 bit işaretli tamsayı -2.147.483.648 : 2.147.483.647 long 64 bit işaretli tamsayı -9.223.372.036.854.775.808 : -9.223.372.036.854.775.807 byte 8 bit işaretsiz tamsayı 0 : 255 ushort 16 bit işaretsiz tamsayı 0 : 65.535 uint 32 bit işaretsiz tamsayı 0 : 4.294.967.295 ulong 64 bit işaretsiz tamsayı 0 : 18.446.744.073.709.551.615 float 32 bit tek kayan sayı +yada - 1,5*10-45 : + ya da - 3,4*10 38 double 64 bit çift kayan sayı +yada - 5*10-324 : + ya da - 1,7*10 308 decimal 128 bit ondalıklı sayı +yada - 1,5*10-28 : + ya da - 7,9*10 28 bool Doğru-Yanlış 8 bit trueya da false char Karakterleri temsil eder 16 Unicode karakterleri string Sözel ifadeleri temsil eder Unicode karakterleri
Algoritma Değişken int tamsayi1; int tamsayi2=456; decimal sayi1; decimal sayi2=23987650.789m; float ondalikli1; float ondalikli2=12.6f; string sozel= Merhaba Millet ; char karakter= A ;
Algoritma - Değişken int tamsayi1; int tamsayi2=456; decimal sayi1; decimal sayi2=23987650.789m; 4byte 4byte 16byte RAM tamsayi1 tamsayi2 sayi2 float ondalikli1; float ondalikli2=12.6f; string sozel= Merhaba Millet ; char karakter= A ; 4byte 2byte 20byte + ondalikli1 karakter sozel
Akış Diyagramları Algoritmaların, özel geometrik şekillerle çizilmiş haline akış diyagramı denir. Şekil Anlamı Başla-Dur Bilgi-Veri Girişi İşlem Bilgi-Veri Yazma
Akış Diyagramları Şekil Anlamı Karşılaştırma Döngü Bağlantı İşlem akış yönü
Akış Diyagramları 1. Başla 2. Birinci sayıyı gir (A) 3. İkinci sayıyı gir (B) 4. Toplama işlemini yap (C=A+B) 5. Sonucu ekrana yaz (C) 6. Dur Örnek Akış Diyagramı Başla A,B C=A+B C Dur
Algoritma Hazırlama Hatırlatma: Algoritma Özellikleri: ü Başlangıcı olmalı ü Basit ve anlaşılır olmalı ü Mümkün olduğunca az adımlı olmalı ü Sonu olmalı.
Algoritma Hazırlama Algoritma Hazırlanırken Uyulması Gereken Kurallar; 1. Problem analiz edilir. Ne yapılması isteniyor? Olasılıklar varmı? Hangi durumda ne yapılacak? Program çalışırken kullanıcıdan ne bilgileri istenilecek? Hesaplama işlemleri yapılacakmı? vb. 2. Mümkün olduğunca az adımlı, tekrarlamayan işlemlerle doğru sonuca ulaştıracak çözüm yolu belirlenir. 3. Verilerin ve hesaplama sonuçlarının geçici olarak saklanmasında kullanılacak Değişken isimleri belirlenir. 4. Algoritmada her işlem adımına bir numara verilir. 5. Problemin çözümü için gerekli olan verilerin girişi yapılır. 6. Yapılacak işlemler açık bir şekilde yazılır. 7. Bulunan sonuçlar görüntülenir.
Algoritma Hazırlama Algoritma hazırlama adımları: I. Problem analiz edilir, II. Değişken isimleri belirlenir, 1. Veri girişlerinin her biri 2. İşlem adımlarında matematiksel denklemlerin sonucu III. Veri girişi yapılır, IV. Hesaplamalar ve diğer işlemler yapılır, V. Sonuçlar kullanıcıya gösterilir.
Algoritma Hazırlama Dikkatli olunması gereken ve zamanla kazanılacak beceriler: ü Algoritma, bilgisayarın gerçekleştireceği işlemleri tam olarak anlatmalıdır. ü Basit ve anlaşılır olmalı ü Mümkün olduğunca az adımlı olmalı
Algoritma Algoritma adımlarını 3 kategoride geliştirebiliriz; 1. Sıralı işlem adımları 2. Koşullu işlem adımları 3. Döngüsel işlem adımları
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. Algoritma hazırlama adımları: I. Problem analiz edilir, II. Değişken isimleri belirlenir, 1. Veri girişlerinin her biri 2. İşlem adımlarında matematiksel denklemlerin sonucu III. Veri girişi yapılır, IV. Hesaplamalar ve diğer işlemler yapılır, V. Sonuçlar kullanıcıya gösterilir.
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. Algoritma hazırlama adımları: I. Problem analiz edilir: Ne yapılması isteniyor? Olasılıklar varmı? Hangi durumda ne yapılacak? Program çalışırken kullanıcıdan ne bilgileri istenilecek? Hesaplama işlemleri yapılacakmı? Kullanıcıdan 2 adet sayı nın veri girişi yapılması isteniyor, bu veri girişi yapılan sayılar kullanılıp toplama ve çarpma işlemi yapılacaktır.
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. Algoritma hazırlama adımları: II. Değişken isimleri belirlenir, 1. Veri girişlerinin her biri 2. İşlem adımlarında matematiksel denklemlerin sonucu 2 adet sayı 2 adet matematiksel işlem sonucu
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. Algoritma hazırlama adımları: III. Veri girişi yapılır, 1. sayının 2. sayının kullanıcı tarafından girilmesi
İşlem Veri Girişi
Veri Girişi İşlem
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. Algoritma hazırlama adımları: IV. Hesaplamalar ve diğer işlemler yapılır, Toplam=1.sayı +2.sayı Çarpım=1.sayı*2.sayı
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. Algoritma hazırlama adımları: V. Sonuçlar kullanıcıya gösterilir. Toplam ve Çarpım sonucunun kullanıcıya gösterilmesi.
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. 1. Başla 2. 1.Sayıyı gir (A) 3. 2.Sayıyı gir (B) 4. Toplama işlemini yap T=A+B 5. Ekrana sonucu yaz (T) 6. Çarpma işlemini yap C=A*B 7. Ekrana sonucu yaz (C) 8. Dur
Algoritma Geliştirme Örnek: Klavyeden veri girişi yapılacak iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız.
Algoritma Geliştirme Örnek: Bir öğrencinin klavyeden girilen iki notunun aritmetik ortalamasını hesaplayan algoritmayı yazınız. 1. Başla 2. 1.Sınavı gir (s1) 3. 2.Sınavı gir (s2) 4. Not ortalamasını hesapla ORT=(s1+s2)/2 5. Ekrana ortalamayı yaz (ORT) 6. Dur
Algoritma Geliştirme Örnek: Bir öğrencinin klavyeden girilen vize notunun %40 nı ve final notunun %60 nı alarak ortalamasını hesaplayan algoritmayı yazınız. 1. Başla 2. Vize Sınavı gir (V) 3. Final Sınavı gir (F) 4. Not ortalamasını hesapla ORT=(V*0.4+F*0.6) 5. Ekrana ortalamayı yaz (ORT) 6. Dur
Algoritma Geliştirme Örnek: Klavyeden bir kenar uzunluğu ve o kenara ait yüksekliği girilen üçgenin alanını hesaplayan programın algoritmasını yazınız. A=a.h a / 2 1. Başla 2. Kenarı gir (a) 3. Yüksekliği gir (h) 4. Alanı hesapla A=a*h/2 5. Ekrana alanı yaz (A) 6. Dur
Algoritma Geliştirme Örnek: Klavyeden iki dik kenarı girilen üçgenin hipotenüsünü hesaplayan programın algoritmasını yazınız. b c = c a 2 2 a + b Math.Sqrt 1. Başla 2. Birinci Dik Kenarı gir (a) 3. İkinci Dik Kenarı gir (b) 4. Hipotenüsünü hesapla c=(a^2+b^2)^(1/2) 5. Ekrana Hipotenüsünü yaz (c) 6. Dur
Algoritma Geliştirme Örnek: Klavyeden yarıçapı girilen kürenin alanını ve hacmini hesaplayan programın algoritmasını yazınız. 2 Alan = 4. π. r 4 Hacim =. π. r 3 3 1. Başla 2. Yarıçapı gir (r) 3. PI=3,14 4. Alanı hesapla A=4*PI*r^2 5. Hacmi hesapla H=(4*PI*r^3)/3 6. Ekrana Alanı ve Hacmi yaz (A,H) 7. Dur
Akış Diyagramları Algoritmaların, özel geometrik şekillerle çizilmiş haline akış diyagramı denir. Şekil Anlamı Başla-Dur Bilgi-Veri Girişi İşlem Bilgi-Veri Yazma
Akış Diyagramları Şekil Anlamı Karşılaştırma Döngü Bağlantı İşlem akış yönü
Algoritma Geliştirme Örnek: Girilen iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. 1. Başla 2. 1.Sayıyı gir (A) 3. 2.Sayıyı gir (B) 4. Toplama işlemini yap T=A+B 5. Ekrana sonucu yaz (T) 6. Çarpma işlemini yap C=A*B 7. Ekrana sonucu yaz (C) 8. Dur Başla A B T=A+B T C=A*B C Dur
Algoritma Geliştirme Örnek: Girilen iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. 1. Başla 2. 1.Sayıyı gir (A) 3. 2.Sayıyı gir (B) 4. Toplama işlemini yap T=A+B 5. Ekrana sonucu yaz (T) 6. Çarpma işlemini yap C=A*B 7. Ekrana sonucu yaz (C) 8. Dur Başla A,B T=A+B T C=A*B C Dur
Örnek 2 Ekmeği 50 kuruş, poğaçayı 45 kuruş, simidi 35 kuruştan satan bir fırıncı kazancının %18 i vergi vermektedir. Fırıncının sattığı ürün sayısı ürün çeşitlerine göre klavyeden girildikten sonra fırıncının kazancı ve ödemesi gereken vergi hesaplayıp bu bilgileri ekrana yazdıran programın algoritmasını geliştiriniz.
Örnek 3 Klavyeden bir kenar uzunluğu girilen karenin alanını hesaplayan ve ekrana yazdıran programın algoritmasını geliştiriniz.
Algoritma Geliştirme Koşullu İşlemler; Eğer Koşul Doğru ise yapılacak işlem Eğer Koşul Doğru ise yapılacak işlem1 değilse yapılacak işlem2
Algoritma Geliştirme Koşullar nasıl yazılır? Operatör Karşılaştırma-İlişkisel Operatörler Anlamı > büyüktür < küçüktür >= büyüktür veya eşittir <= küçüktür veya eşittir = eşittir <> eşit değildir
Algoritma Geliştirme Koşullar nasıl yazılır? Karşılaştırma-İlişkisel Operatörler Operatör Anlamı Sonuç 10 > 20 10 büyüktür 20 doğrumu? Hayır-Yanlış- 0-False 10 < 20 10 küçüktür 20 doğrumu? Evet-Doğru- 1-True 6 >= 5 6 büyüktür veya eşittir 5 doğrumu? Evet-Doğru- 1-True 3 <= 2 3 küçüktür veya eşittir 2 doğrumu? Hayır-Yanlış- 0-False 20 = 21 20 eşittir 21 doğrumu? Hayır-Yanlış-0-False 8 <> 9 8 eşit değildir 9 doğrumu? Evet-Doğru- 1-True
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? 1.Koşul Sonucu Mantıksal Operatörler VE-VEYA-DEĞİL VE A>B VE C<=D 2.Koşul Sonucu Sonuç Yanlış. Yanlış Yanlış Yanlış. Doğru Yanlış Doğru. Yanlış Yanlış Doğru. Doğru Doğru
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? 1.Koşul Sonucu Mantıksal Operatörler VE-VEYA-DEĞİL VE A>B VE C<=D 2.Koşul Sonucu Sonuç 0. 0 0 0. 1 0 1. 0 0 1. 1 1
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? 1.Koşul Sonucu Mantıksal Operatörler VE-VEYA-DEĞİL A>B VEYA C<=D VEYA 2.Koşul Sonucu Sonuç Yanlış + Yanlış Yanlış Yanlış + Doğru Doğru Doğru + Yanlış Doğru Doğru + Doğru Doğru
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? 1.Koşul Sonucu Mantıksal Operatörler VE-VEYA-DEĞİL A>B VEYA C<=D VEYA 2.Koşul Sonucu Sonuç 0 + 0 0 0 + 1 1 1 + 0 1 1 + 1 1
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? Mantıksal Operatörler VE-VEYA-DEĞİL Koşul Sonucu Yanlış Doğru DEĞİL(A<B) DEĞİL DEĞİL(Yanlış ) DEĞİL(Doğru ) Sonuç Doğru Yanlış
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? Koşul Sonucu Mantıksal Operatörler VE-VEYA-DEĞİL DEĞİL(A<B) DEĞİL Sonuç 0 DEĞİL(0) 1 1 DEĞİL(1) 0
Mantıksal operatörlerde işlem öncelik sırası kuralları İşlem Sırası Açıklama 1 Parantezler ( ( ) ) ( ( ) ) 2 Değil DEĞİL(..) NOT( ) 3 Ve A VE B A AND B 4 Veya A VEYA B A OR B SONUC= DEĞİL(5>10) VE (50<=60 VEYA 10>10)
Algoritma Geliştirme Birden fazla koşul nasıl yazılır? A=doğru, B=yanlış, C=doğru ise 1 D = A VE B İşlem 2 E = A VEYA B 3 F = A VEYA ( B VEYA C) 4 G = A VE ( B VEYA C) Sonuç
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen bir tam sayının pozitif, negatif veya sıfıra eşit olduğunu ekrana yazdıran programın algoritması yazınız. Bir sayının POZİTİF, NEGATİF veya SIFIRA eşit olduğunu nasıl belirleriz? Kaç tane koşul var? Koşullar nelerdir? 1.Sayı > 0 ise Sayı POZİTİF 2.Sayı < 0 ise Sayı NEGATİF 3.Sayı = 0 ise SIFIR
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen sayının pozitif, negatif veya sıfıra eşit olduğunu ekrana yazdıran programın algoritması yazınız. 1. Başla 2. Sayıyı giriniz (Sayı) 3. Eğer Sayı > 0 ise Ekrana POZİTİF yaz 4. Eğer Sayı < 0 ise Ekrana NEGATİF yaz 5. Eğer Sayı = 0 ise Ekrana SIFIR yaz 6. Dur
Algoritma Geliştirme Bir öğrencinin klavyeden girilen vize notunun %40 nı ve final notunun %60 nı alınıp ortalamasını hesaplayan, ortalamasını ekrana yazdıran ve eğer ortalaması 70 ve üzerinde ise ekrana BAŞARILI eğer ortalaması 70 den küçük ise BAŞARISIZ yazan programın algoritmasını yazınız. Kaç tane koşul var? Koşullar nelerdir?
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen iki tam sayıdan büyük olanını ekrana yazdıran programın algoritması ve akış diyagramını çiziniz.(not: Girilen iki sayının birbirinden farklı olduğunu varsayınız.) Kaç tane koşul var? Koşullar nelerdir?
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen iki tam sayıdan büyük olanını ekrana yazdıran programın algoritması ve akış diyagramını çiziniz.(not: Girilen iki sayının birbirinden farklı olduğunu varsayınız.) 1.YÖNTEM 1. Başla 2. 1.Sayıyı giriniz (Sayı1) 3. 2.Sayıyı giriniz (Sayı2) 4. Eğer Sayı1 > Sayı2 ise ekrana Sayı1 değerini yaz 5. Eğer Sayı2 > Sayı1 ise ekrana Sayı2 değerini yaz 6. Dur
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen iki tam sayıdan büyük olanını ekrana yazdıran programın algoritması ve akış diyagramını çiziniz.(not: Girilen iki sayının birbirinden farklı olduğunu varsayınız.) 2.YÖNTEM 1. Başla 2. 1.Sayıyı giriniz (Sayı1) 3. 2.Sayıyı giriniz (Sayı2) 4. Eğer Sayı1 > Sayı2 ise ekrana Sayı1 değerini yaz değilse ekrana Sayı2 değerini yaz 5. Dur
Algoritma Geliştirme Klavyeden girilen a sayısının tek mi çift mi olduğunu ekrana yazan programın algoritmasını ve akış diyagramını yazınız.
Algoritma Geliştirme Klavyeden girilen a sayısının, yine klavyeden girilen b sayısına tam bölünüp bölünemeyeceğini ekrana yazan programın algoritmasını ve akış diyagramını yazınız.
Algoritma Geliştirme Klavyeden girilen 3 adet tam sayıdan büyüğünü bulan programın algoritmasını ve akış diyagramını yazınız.
Algoritma Geliştirme Klavyeden iki direnç değeri ve bu iki direncin bağlantı tipi bilgisi girildikten sonra eşdeğer direnci hesaplayıp ekrana yazdıran programın algoritmasını yazınız. (Direnç değerlerinin ohm cinsinden girildiğini varsayın. Seri bağlantı için s paralel bağlantı için p bilgisinin girildiğini varsayın)
Algoritma Geliştirme Bir öğrencinin klavyeden girilen 100 lük notunu harfe çeviren programın algoritmasını yazınız. 0<=notu<25 è F 25<=notu<45 è E 45<=notu<55 è D 55<=notu<70 è C 70<=notu<85 è B 85<=notu<=100 è A
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen sayının pozitif, negatif veya sıfıra eşit olduğunu ekrana yazdıran programın algoritması ve akış diyagramını çiziniz. 1. Başla 2. Sayıyı giriniz (Sayı) 3. Eğer Sayı > 0 ise ekrana POZİTİF yaz 4. Eğer Sayı < 0 ise ekrana NEGATİF yaz 5. Eğer Sayı = 0 ise ekrana SIFIR yaz 6. Dur H Başla Sayı Sayi>0 Sayi<0 E E POZİTİF NEGATİF H Sayi=0 E SIFIR H Dur
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen sayının pozitif, negatif veya sıfıra eşit olduğunu ekrana yazdıran programın algoritması ve akış diyagramını çiziniz. 1. Başla 2. Sayıyı giriniz (Sayı) 3. Eğer Sayı > 0 ise ekrana POZİTİF yaz,6.adıma git 4. Eğer Sayı < 0 ise ekrana NEGATİF yaz,6.adıma git 5. Eğer Sayı = 0 ise ekrana SIFIR yaz,6.adıma git 6. Dur H Başla Sayı Sayi>0 Sayi<0 E E POZİTİF NEGATİF H Sayi=0 E SIFIR H Dur
Algoritma Geliştirme Koşullu İşlemler; Klavyeden girilen iki tam sayıdan büyük olanını ekrana yazdıran programın algoritması ve akış diyagramını çiziniz.(not: Girilen iki sayının birbirinden farklı olduğunu varsayınız.) Başla 1. Başla 2. 1.Sayıyı giriniz (Sayı1) 3. 2.Sayıyı giriniz (Sayı2) 4. Eğer Sayı1 > Sayı2 ise ekrana Sayı1 değerini yaz değilse ekrana Sayı2 değerini yaz 5. Dur Sayı1,Sayı2 Sayi1>Sayı2 H Sayı2 E Sayı1 Dur
Algoritma Ödev1: Klavyeden girilen 3 basamaklı sayıyı basamak değerlerini ayıran programın algoritmasını ve akış diyagramını yazınız. Ödev2: Klavyeden girilen 3 basamaklı sayıyı tersten ekrana yazdıran programın algoritmasını ve akış diyagramını yazınız.
Algoritma Geliştirme Bilmemiz gerekenler; Klavyeden programımıza nasıl değer alacağız? string girilen_deger= ; girilen_deger=console.readline(); Klavyeden girilen her şey STRING olarak alınır. Yapılacak işleme göre, klavyeden girilen değer uygun veri tipine dönüştürülmelidir. Tanımladığımız değişkenlere başlangıç değeri aktarmalıyız. Sayısal veriler için 0, sözellere boşluk atanabilinir.
Algoritma Geliştirme Bilmemiz gerekenler; Klavyeden programımıza nasıl değer alacağız? Veri tiplerini birbirlerine dönüştürürken Convert Sınıfı kullanılır. Float=Convert.ToSingle(donusturulecek_veri); Double=Convert.ToDouble(donusturulecek_veri); int=convert.toint16(donusturulecek_veri); int=convert.toint32(donusturulecek_veri); int=convert.toint64(donusturulecek_veri); string=convert.tostring(donusturulecek_veri);
Algoritma Geliştirme Örnek: Girilen iki sayının toplamını ve çarpımını hesaplayan algoritmayı hazırlayınız. 1. Başla 2. 1.Sayıyı gir (A) 3. 2.Sayıyı gir (B) 4. Toplama işlemini yap T=A+B 5. Ekrana sonucu yaz (T) 6. Çarpma işlemini yap C=A*B 7. Ekrana sonucu yaz (C) 8. Dur string klavye= ; int sayi1=0; int sayi2=0; int toplam=0; int carpim=0; Console.Write( 1.Sayısı Gir: ); klavye=console.readline(); sayi1=convert.toint16(klavye); Console.Write( 2.Sayısı Gir: ); klavye=console.readline(); sayi2=convert.toint16(klavye); toplam=sayi1+sayi2; Console.Write( Toplama Sonucu: ); Console.WriteLine(toplam); carpim=sayi1*sayi2; Console.Write( Çarpım Sonucu: ); Console.WriteLine(carpim);
Algoritma Geliştirme Örnek: Bir öğrencinin girilen iki notunun aritmetik ortalamasını hesaplayan algoritmayı yazınız. 1. Başla 2. 1.Sınavı gir (s1) 3. 2.Sınavı gir (s2) 4. Not ortalamasını hesapla ORT=(s1+s2)/2 5. Ekrana ortalamayı yaz (ORT) 6. Dur float sinav1=0; float sinav2=0; float ortalama=0; string klavye= ; Console.Write( 1.Sınavı Gir: ); klavye=console.readline(); sinav1=convert.tosingle(klavye); Console.Write( 2.Sınava Gir: ); klavye=console.readline(); sinav2=convert.tosingle(klavye); ortalama=(sinav1+sinav2)/2; Console.Write( Ortalama Sonucu: ); Console.WriteLine(ortalama);
Bug : Logical Error diyebileceğimiz Mantıksal hatalara verilen adlar bug yani böcek diye de tanımlanmış olabilir. Bu tip hatalar eğer çok net değil ve zamanla ortaya çıkabiliyor ise veya nedeni çok net olarak anlaşılamamışsa bug diye adlandırılır. Gerek serbest yazılım gerek ticari yazılımların tümünde bug dediğimiz mantıksal hatalar bulunur. Çünkü hatasız program yazabilmek çok zordur. İlk seferde yazılan bir programın tamamen hatasız olmasını beklemek son derece hatalıdır. Günümüzde en meşhur yazılım firmaları bile yazılımlarında bug olduğunu kabul eder ve zaman zaman bu bugları giderebilmek için ya yazılımlarına yama yazılımı üretirler yada o yazılımın yeni bir versiyonunu piyasaya sürerler. Debug : Mantıksal hataları giderebilmek ve yazılımdaki bug'ları bulabilmek için yapılan işlemin adıdır. Genellikle yazılan programın adım adım ve denetim altında çalıştırılmasıdır. Programın her adımında ilgili değişkenlerin hangi değere sahip olduğunu görmeyi sağlar. ve anormal bir durumu daha kolay izleyip bulmanızı sağlar. Bu işlemi gerçekleştirebilmek için bazı IDE ortamlarında debugger dediğimiz yardımcı komut veya yaz