Programlama Dilleri I

Benzer belgeler
3- ARİTMETİK İFADELERİN YAZILMASI. M.İLKUÇAR - imuammer@yahoo.com

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod)

Bilgisayar II Dersi. Bölüm-2

Örnek bir Algoritma. Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve işyerine girişinde ilk yapacaklarını tanımlamaktadır.

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

Algoritma ve Programlamaya Giriş

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

HSancak Nesne Tabanlı Programlama I Ders Notları

BİLGİSAYAR PROGRAMLAMA MATLAB

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Basit Algoritma Akış Diagramı Örnekleri

Algoritmanın Hazırlanması

BÖLÜM 2: ALGORİTMALAR

4- ALGORİTMA (ALGORITHM)

/*int sayi1, sayi2,toplam=0;

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK

4- ALGORİTMA (ALGORITHM) M.İLKUÇAR - 1


Dr. Musa KILIÇ Öğretim Görevlisi

HÜPP PYTHON I.HAFTA ALGORİTMA MANTIĞI, AKIŞ DİYAGRAMLARI VE PYTHON'A GİRİŞ

Algoritmalar ve Programlama. Algoritma

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Akış Diyagramı)

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

ALGORİTMA (ALGORITHM) M.İLKUÇAR -

ALGORİTMAYA GİRİŞ. Program: Belirli bir işi gerçekleştirmek için gerekli komutlar dizisi olarak tanımlanabilir.

C++ Operatörler (Operators)

C#(Sharp) Programlama Dili

TBP101 (4. Hafta) Alıştırma Soruları ve Cevapları

Nesne Tabanlı Programlama

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Algoritma ve Akış Diyagramları

PROGRAMLAMA DİLLERİ I

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ.

BMT 101 Algoritma ve Programlama I 3. Hafta (Örnekler) Yük. Müh. Köksal GÜNDOĞDU 1

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

ALGORİTMA KAVRAMI. Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir.

BİLGİSAYAR PROGRAMLAMA DERSİ

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Pascal Programlama Dili

ALGORİTMA ÖRNEKLERİ ve YAZILIYA HAZIRLIK SORULARI

BİLGİSAYAR PROGRAMLAMA DERSİ

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

Hafta 5 Algoritma Örnekleri ve Analizi

BLG 1306 Temel Bilgisayar Programlama

Programlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017

Algoritma ve Akış Diyagramları

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

ÖRNEK 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır:

Döngüsel Akış Diagramı Algoritmaları

Veri Tipleri Aşağıdaki programdaki 5 hatayı bulunuz.

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir.

GÖRSEL PROGRALAMA HAFTA 3 ALGORİTMA VE AKIŞ DİYAGRAMLARI

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-2 Değişken Kavramı ve Temel Operatörler

FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal)

Programlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017

Programlama Giriş. 17 Ekim 2015 Cumartesi Yrd. Doç. Dr. Mustafa YANARTAŞ 1

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ.

C++ Dilinde Bazı Temel Algoritmalar

KARAR YAPILARI. Acaba hangi yöne gitmeliyim? Oturduğun yerden kalkıp, kapıya varana kadar kaç kez karar verdiniz biliyor musunuz?

BMT 101 Algoritma ve Programlama I 2. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

ÖRNEK 1:Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır.

ALGORİTMA HAZIRLAMA. Temel tanımlar ve işleyiş. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

PROBLEM ÇÖZME PROGRAMLAMA ve ÖZGÜN ÜRÜN GELİŞTİRME

Hafta 4 Döngü Yapıları

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

Nesne Tabanlı Programlama

8- PROGRAM YAPISAL KOMUTLARI ve. M.ilkucar MAKU MYO 1

Ünite 01 Algoritma Geliştirme

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

C Programlama Dilininin Basit Yapıları

C SHARP UYGULAMA ÇALIŞMASI

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

PROGRAMLAMAYA GİRİŞ DERS 2

BLG 1306 Temel Bilgisayar Programlama

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

Excel' de formüller yazılırken iki farklı uygulama kullanılır. Bunlardan;

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA. Yazılım Nedir Algoritma Akış Seması Örnekler

GÜMÜŞHANE ÜNĐVERSĐTESĐ MÜHENDĐSLĐK VE DOĞA BĐLĐMLERĐ FAKÜLTESĐ ELEKTRĐK-ELEKTRONĐK MÜHENDĐSLĐĞĐ EEM 114 ALGORĐTMA TASARIMI VE PROGRAMLAMA DĐLLERĐ

2.2- DEĞİŞKENLER VE SABİTLER ÇALIŞMA YAPRAĞI

MAK 1005 Bilgisayar Programlamaya Giriş. BİLGİSAYARA GİRİŞ ve ALGORİTMA KAVRAMI

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü

Algoritma kelimesinin kökeni:

İnternet Programcılığı Dersi 2.Dönem Ders Notu

TEMEL BİLGİSAYAR BİLİMLERİ

Transkript:

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