Algoritma ve Programlamaya Giriş II JAVA İLE PROGRAMLAMA. Muhammet BAYKARA

Benzer belgeler
DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

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

MAT213 Bilgisayar Programlama I

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

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

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

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

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

Java da İşleçler, Ders #3 (4 Kasım 2009)

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

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Karşılaştırma İşlemleri ve Koşullu İfadeler

KONTROL YAPILARI JAVADA UC TURLU KONTROL YAPISI VARDIR BUNLAR İF ELSE İF ELSE İF SWİTCH YAPILARIDIR. IF ELSE YAPISI if (deger) { }else {

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

Ders - 7 while döngüsü

BBS515 Nesneye Yönelik Programlama. Ders 3 Zümra Kavafoğlu

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

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

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ Published by Juan Soulié

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

JAVADA DİZİ İŞLEMLERİ

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

HSancak Nesne Tabanlı Programlama I Ders Notları

Program AkıĢ Kontrol Yapıları

Java String İşlemleri

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

BİL-142 Bilgisayar Programlama II

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu

HSancak Nesne Tabanlı Programlama I Ders Notları

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 5. Bölüm Karar ve Çevrim Kontrol Yapıları

Programlama Dillerinde Kullanılan Veri Tipleri

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Java da Program Denetimi ve Operatörler

Temel Veri Türü İşlemleri

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

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

Nesne Yönelimli Programlama

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

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

Döngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

Java da Program Denetimi ve Operatörler. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 2 1

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

Döngüler - Loops 4/13/2011. ENF-102 Jeoloji Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

Programlama Dili Prensipleri. Lab Notları 4

Java dili, aşağıdakiler de dahil olmak üzere çok çeşitli denetleyici türlerine sahiptir.

Pascal Programlama Dili

EMT2226 Nesne Yönelimli Programlamaya Giriş

DATA STRUCTURES. Part I C# Programlama Dili Temelleri

Nesne Tabanlı Programlama

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 2 DERSİ LAB. ÖDEVİ

Temel Bilgisayar Bilimleri Ders Notu #4-1. kısım

/*int sayi1, sayi2,toplam=0;

Klavyeden Basit Giriş/Çıkış İşlemleri

YZM 2105 Nesneye Yönelik Programlama

BASİT VERİ TÜRLERİ, STRİNGLER, VE KONSOL GİRİŞ/ÇIKIŞ

JAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN

Bölüm 4 C de Program Kontrolü

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

C# Çalışma Örnekleri

Görsel Programlama 1

HSancak Nesne Tabanlı Programlama I Ders Notları

M.ilkucar MAKU MYO 1

ALGORİTMA VE PROGRAMLAMA I

PROGRAMLAMAYA GİRİŞ DERS 2

Program Akış Kontrol Yapıları

GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

3.Hafta. . Kontrol Deyimleri/İfadeler

JAVA DEĞİŞKEN VE OPERATÖRLER. M.İLKUÇAR - 1

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

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

Güz Yarıyılı Balıkesir Üniversitesi Bilgisayar Mühendisliği Bölümü

Güz Yarıyılı Balıkesir Üniversitesi Bilgisayar Mühendisliği Bölümü

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

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Programlama Dilleri III 1

Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar çalıştırılabilir.

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

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

Nesne Tabanlı Programlama


Nesne Yönelimli Programlama

Hafta 9 C Dilinde Kontrol ve Döngü Yapıları

D İ Z İ L E R A R R A Y S

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

Dr. Fatih AY Tel: fatihay@fatihay.net

PHP, nesne-yönelimli (object-oriented) bir dil olduğu için, nesne oluşturma imkânına ve bunların kullanılmasını sağlayan metodlara da sahiptir.

Android Ders Notları

C Konsol Giriş Çıkış Fonksiyonları

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

Transkript:

Algoritma ve Programlamaya Giriş II JAVA İLE PROGRAMLAMA Muhammet BAYKARA 1

İlkel Veri Türleri Type Name Kind of Value Memory Used Size Range byte integer 1 byte -128 to 127 short integer 2 bytes -32768 to 32767 int integer 4 bytes -2,147,483,648 to 2,147,483,647 long integer 8 bytes -9,223,372,036,854,775,808 to 9,223,374,036,854,775,808 float floating point 4 bytes +/- 3.4028 x 10 +38 to +/- 1.4023 x 0-45 double floating point 8 bytes +/- 1.767 x 10 +308 to +/- 4.940 x 0-324 char single character (Unicode) 2 bytes all Unicode characters boolean true or false 1 bit not applicable 2

İlkel Veri Türleri int Tam sayilar + veya - olabilir Ondalik kismi yok char Tek karakter Tek tirnak kullanilir mesela char not = `A`; double Gercek sayilar, pozitif ve negatif Ondalik kismi vardir İki şekilde Ondalikli gosterim, 514.061 e (or bilimsel, veya kayan nokta) gosterimi, mesela 5.14061 e2 yani 5.14061 x 10 2 3

İlk Java Programı public class Merhaba{ public static void main(string[] args) { System.out.println( Merhaba Dunya"); } } 4

Java ve Javac komutları C:\Program Files\Java\jdk1.6.0_02\bin javac.exe, java compiler, derleme işlemi java.exe, programi calistirir Windows PATH, JDK/bin klasorunu icermelidir Javac Test.java, programı derler ve Test.class adında byte code dosyası oluşturur. java Test komutu bu class dosyasını çalıştırır 5

Değişkenler double maas; int ogrencisayisi; long dunyaninnufusu; boolean bittimi; int a,b=5; a=3; System.out.println("a= " + a + "\nb= " + b); 6

Escape (kaçış) Karakterleri \b Backspace \t Tab \n Yeni Satir \r Satirin basina git \ Cift Tirnak \ Tek tirnak \\ Ters slash 7

public class Lab2_4 { public static void main(string[] args) { System.out.println( " *\n" + " * *\n" + " * *\n" + " * *\n" + " * *\n" + " * *\n" + " *\n"); } } 8

Kısayol Operatörleri Bazı yaygın işlemler için kısayollar tanımlanmıştır i = i + 1; i += 1; i++; d = d - 1.0; d -= 1.0; d--; f = f / 2.0; f /= 2.0; 9

String Class 10

String class String karakterler dizisidir String kus = mavi kanatli kus ; String değişkeni tanımlanması String isim; Değişkene değer atanması isim = Şerafettin"; Stringler metodlarda argüman olarak kullanılır System.out.println(isim); 11

Stringlerin eklenmesi Stringler birbirine + operatorü ile eklenir: String ad = Ali"; String soyad= Demir"; System.out.println( Calıskan ogrenci + ad + soyad); Çıktısı : > Calıskan ogrencialidemir Boşlukları unutmayalım: System.out.println( Calıskan ogrenci + ad + + soyad); Çıktısı: > Calıskan ogrenci Ali Demir 12

String karakterleri Bir string içindeki bir karakterin indeksi ilk karakter için 0 olmak üzere bir tam sayıdır. charat(index)metodu verilen indeksteki karakteri döndürür substring(ilk, son)metodu ilk ve son indeksleri arasındaki stringi döndürür. Mesela: String cumle = Sali gunu odev gunu"; cumle.charat(0)-> S cumle.charat(5)-> g cumle.substring(5,8)-> gun S a l i g u n u 0 1 2 3 4 5 6 7 8 13

String İşlemleri String cumle = kelimeler kifayet etmez ; int uzunluk = cumle.length(); String buyukharflerle = cumle.touppercase(); String kucukharflerle = cumle.tolowercase(); String altcumle = cumle.substring(0,8); Kelimeler boolean ilkharftest = cumle.startswith("a") ; boolean sonharftest = cumle. endswith("z") ; 14

AKIŞ KONTROLÜ Dallanma Çoklu Dallanma Döngüler 15

Akış Kontrolü Akış kontrolü komutların bir programdaki komutların işletilmesi sırasıdır. Programlar üç tip akış kontrolü ile yazılabilir: 1. Sırayla- sonraki komutu çalıştır 2. Dallanma veya Seçme - en azından iki seçenek gerekir Ya sonraki komutu işlet Veya başka bir komuta atla 3. Döngü veya Tekrar - döngü (bir blok kodu tekrar çalıştır) döngünün sonunda Ya geri git ve kod bloğunu tekrar et Veya bloktan sonraki komutu çalıştır 16

Javada Akış Kontrolü Sırayla the default Java otomatik olarak sonraki komutu çalıştırır Dallanma if if-else if-else if-else if- - else switch Döngü while do-while for 17

Javada if Yapısı Basit seçimler için Eğer test doğru ise komutu işlet, yanlışsa işletmeden atla Syntax: if (Boolean_Test) komut; //yalnızca test doğruysa işlet Sonraki komut; //her zaman işletilir 18

if Örnek if(ogrencisayısı > 3) //if blogu başlangıcı System.out.println( Ders islemek icin sayı yeterli ); //if blogu sonu islenenderssayisi = islenenderssayisi + 1; System.out.println( İsledigimiz ders sayisi = + derssayisi); if bloğu ancak şartlı olarak yürütülür if bloğundan sonraki komutlar her zaman yürütülür 19

Çoklu seçim: if-else İki seçenekten birisini seç Testin sonucuna bağlı olarak ya işlem1 ya da işlem2 Syntax: if (Boolean_Test) { İşlem1 //Sadece test doğruysa işlet } else { İşlem2//sadece test yanlışsa işlet } İşlem3//her zaman yürütülür 20

if-else if(toplamparaniz > kitapfiyati) System.out.println( Kitabi alabilirsin. ); else System.out.println( Biraz daha para bul. ); Çoklu komutlar if(toplamparaniz > kitapfiyati) { System.out.println( Kitabi alabilirsin. ); toplamparaniz = toplamparaniz - kitapfiyati; } else { System.out.println( Biraz daha para bul. ); gereklipara = toplamparaniz + eksikmiktar; } 21

Boolean değerler Doğru veya yanlış değerleri alan değişken veya ifadelere boolean değişkenler denir. boolean değişkenin değeri true veya false olabilir Örnek: A sayısı B sayısından büyük mü A sayısı B sayısına eşit mi vb 22

Java Karşılaştırma sembolleri Matematiksel Notasyon Ad Java Notasyon Java Örnekleri = eşittir == sayac == 0 cevap == 'y' eşit değil!= gelir!= gider cevap!= 'y' > büyüktür > gelir > gider büyük veya eşit >= puan >= 60 < daha küçük < basınç < max küçük veya eşit <= gelir <= gider 23

Birleşik Boolean İfadeler Birden fazla şartı VE ile test etmek için && kullanılır İfade eğer her iki kısım da doğruysa doğru olur. A && B ancak hem A hem de B doğruysa doğru olur Birden fazla şartı VEYA testine tabi tutmak için kullanılır İfade ya şartlardan biri veya her ikisi de doğruysa doğru olur. A B ifadesi A veya B nin doğru olduğu veya her ikisinin de doğru olduğu durumlarda doğru olur 24

Birleşik Boolean İfadeler Örnek: B nin değerinin 0 veya A ile C arasında olup olmadığını test eden bir ifade yazınız (B == 0) (A <= B && B < C) A 3 veya 6 ya eşitse (A == 3) (A == 6) A 3 e ve B 6 ya eşitse (A == 3) && (B == 6) 25

Çoklu dallanma seçimi: switch switch(kontrol ifadesi) { case case_etiketi: komutlar break; case case_etiketi : komutlar break; } default: komutlar break; Çoklu dallanmaları programlamak için diğer bir yol. Kontrol ifadesi kullanılarak hangi ifadenin işletileceğine karar verilir. Kontrol ifadesi char, int, short veya byte türlerinden biri olmalıdır. Kontrol ifadesi vecase_etiketi aynı türden olmalıdır. 26

Çoklu dallanma seçimi: switch switch(kontrol ifadesi) { case case_etiketi: komutlar break; case case_etiketi : komutlar break; } default: komutlar break; break ile karşılaşınca blogun dışına çıkar. break ihmal edilebilir. Sınırsız sayıda case olabilir. default case kullanılması zorunlu değildir. 27

switch Örnek switch(filmgunu) { case 1: System.out.println( Pazartesi ); biletfiyati = 10; break; case 2: System.out.println( Sali ); biletfiyati = 7; break; case 3: System.out.println( Carsamba ); biletfiyati = 15; break; default: System.out.println( Gosterim olmayan bir gun seçtiniz ); break; } 28

Tekrarlama: Döngüler (Loops) Yapı: Genelde başlangıç şartları öncelikle tanımlanır loop gövdesi loop sonlandırma şartları Çeşitli mantıksal türleri vardır sayan döngüler Gözcü kontrollü döngüler sonsuz döngüler minimum sıfır veya bir defa çalışma Çeşitli şekillerde programlanırlar while do-while for 29

while döngüsü Syntax: while(boolean_ifade) { //döngü gövdesi birinci komut;... son komut; } Döngü gövdesindeki herhangi bir şey mantıksal ifadenin mutlaka yanlış olmasına sebep olmalıdır. Başlangıç ifadeleri genelde döngüden önce yazılır. boolean _ifade döngü sonlandırma şartıdır. Döngü boolean _ifade doğru olduğu sürece çalışır. Sayan veya gözcü döngüleri olabilir 30

while döngüsü while (Boolean_ifade) gövde Başla Boolean_ifadeyi Değerlendir true false Gövdeyi işlet döngüyü sonlandır 31

while : Sayan döngü örneği Kullanıcı tarafından girilen 10 sayıyı toplayan program int sonraki; //döngü başlangıcı int sayac = 1; int toplam =0; while(sayac <= 10) //döngü sonlandırma koşulu { //döngü gövdesi sonraki = giris.nextint(); toplam = toplam + sonraki; sayac++; // döngü sonlandırma sayacı } 32

while: Gözcü kontrollü döngü örneği sonraki gözcüdür döngü negatif bir sayı girilince sona erer //Başlangıç int sonraki = 0; int toplam = 0; while(sonraki >= 0) //sonlandırma şartı { //gövde toplam = toplam + sonraki; sonraki = giris.nextint(); } 33

while: Minimum sıfır tekrar birinci giriş değeri döngüden önce okunup test edildiği için while döngüsünün gövdesi hiç çalıştırılmayabilir int sonraki; int toplam= 0; sonraki = giris.nextint(); while(sonraki >= 0)//sonlandırma şartı { //Body toplam = toplam + sonraki; sonraki = giris.nextint(); } Eğer kullanıcının girdiği ilk numara negatif ise döngüye girilmez 34

do-while döngüsü Syntax do { //döngü gövdesi ilk komut;... son komut; } while(boolean_ifade); döngü gövdesinde bir ifade mutlaka Boolean_ifadenin yanlış olmasını sağlamalıdır Başlangıç kodu döngüden önce olabilir Döngü testi gövdeden sonra olduğu için gövde en az bir kere işletilir (minimum bir döngü) 35

do-while döngüsü do gövde while (Boolean_ifade); Başla gövdeyi işlet Boolean_ifadeyi değerlendir true gövdeyi işlet false döngüyü sonlandır 36

do-while örnek int sayac = 1; int sayi = 5; do //1 den 5 e kadar sayıları bir satırda göster { System.out.print(sayac + " "); sayac++; } while(sayac <= sayi); Çıktı: 1 2 3 4 5 37

for döngüsü Sayan döngüler için iyi bir tercih Başlangıç kodu, döngü testi ve döngü sayacı döngünün parçasıdır Syntax: for(başlangıç; Boolean_Ifade; güncelleme) döngü gövdesi; 38

for Döngüsü for(başlangıç; Boolean_Ifade; güncelleme) döngü gövdesi; Başla Çalıştır başlangıç Test Boolean_Ifade true Çalıştır Gövde false döngüyü sonlandır Çalıştır Güncelleme 39

for örnek 3den 1e kadar say for(int sayac = 3; sayac >= 1; sayac--) { } System.out.print("T = " + sayac); System.out.println( ve sayiyor"); System.out.println( Son!"); Çıktı: T = 3 ve sayiyor T = 2 ve sayiyor T = 1 ve sayiyor Son! 40

exit Metodu Programın çalışmasına artık gerek olmadığı durumlarda, döngüden çıkmak veya programı durdurmak için exit(n) metodu kullanılır. n programın normal veya anormal yollardan sonlandırıldığını tanımlamak için kullanılır. n normal sonlandırmalar için genelde 0dır. 41

İç içe döngüler Bir döngü gövdesinde başka bir döngü de olmak üzere her çeşit komut olabilir. for (satir = 0; satir < 4; satir++) for (yildiz = 0; yildiz < 5; yildiz ++) System.out.print('*'); System.out.println(); İç döngü gövdesi Dış döngünün bir defa yürütülmesine karşılık, iç döngü 5 defa çalıştırılır. Dış döngü gövdesi Çıktı: ***** ***** ***** ***** 42

43

44

45

46

Kaynaklar Dr. Galip Aydın,F.Ü. Algoritma ve Programlamaya Giriş,2009, Murathan Yayıncılık, Ebubekir Yaşar. 47