BİLGİSAYAR NEDİR Dr. Mustafa T. Babagil 1

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "BİLGİSAYAR NEDİR. 20.10.2009 Dr. Mustafa T. Babagil 1"

Transkript

1 BİLGİSAYAR NEDİR Bilgisayar elektronik-digital bir alet olup, kendisine verilen ham bilgileri işlemcisi ve bellek yardımı ile işleyip (temelde 4 işlem yaptığını söyleyebiliriz), sonucunda kullanıcıya anlaşılır bilgi üreten bir makinedir. Bilgisayar, kullanıcıdan aldığı verilerle mantıksal ve aritmetiksel işlemleri yapan, yaptıgı işlemlerin sonucunu saklayabilen, sakladığı bilgilere istenildiğinde ulaşılabilen elektronik bir makinedir.bilgisayarlar temel yapı itibariyle donanım ve yazılım olmak üzere iki kısımdan oluşmaktadır. Bilgisayar sistemi, fiziksel tüm parçalar (iç/dış donanım) ve programları ile uyumlu çalışabilen ve işlem yapabilen birimin tümüne bilgisayar sistemi denir Dr. Mustafa T. Babagil 1

2 Bilgisayarlar temel olarak 2 kısımdan oluşmaktadır. DONANIM Bilgisayarların elle tutulur gözle görülür fiziksel olan kısımına donanım denilmektedir. Ör. Ekran, klavye, Sabit disk (harddisk), fare, yazıcı, bellek, mikroislemci, tarayıcı,... Bir bilgisayarın donanımı genel olarak dört ana bölümde incelenebilir. Bunlar, veri giriş birimleri, sonuç çıkış birimleri, hafızalar (bellekler) ve merkezi işlem birimi(cpu) olarak sayılabilir Dr. Mustafa T. Babagil 2

3 Bilgisayarlar 2 kısımdan oluşmaktadır. YAZILIM Bir problemin bilgisayar yardımıyla çözümünü sağlayan, çizim yapan, yazı yazan, Internet te gezinme işlemini gerçekleştiren her türlü programa, bu programları hazırlayan programlara ve bunların ürettikleri veri veya belgelere, hepsine birden yazılım denir Dr. Mustafa T. Babagil 3

4 DONANIM 1-)Veri giriş birimleri Belli kurallara göre düzenlenmiş verilerin ve komutların merkezi işlem birimine aktarılmasını sağlayan donanımlardır. En çok kullanılan giriş birimleri olarak klavye (key board), fare (mouse, optik okuyucu (optical reader), tarayıcı (scanner), kamera, barkod okuyucu, ses kayıt cihazı, ağa bağlı diğer bilgisayarlar ve yardımcı bellekler (sabit disk, disket ve kompakt disk) sayılabilir Dr. Mustafa T. Babagil 4

5 DONANIM 2-)Sonuç çıkış birimleri Bilgisayar ortamında mevcut olan bilgileri belirtilen dış ortama aktarılması için kullanılan cihazlardır. Bu birimlerden bazıları aynı zamanda giriş birimi olarak da görev yaparlar. Çıkış birimlerinden en çok kullanılanları ekran, yazıcı ve çizici olarak sayılabilir. Sabit disk, disket, kompakt disk, hoparlör, bilgisayar ağına bağlı diğer bilgisayarlar, faks-modem gibi cihazlar giriş birimi olduğu kadar aynı zamanda birer çıkış birimi olarak da görev yaparlar Dr. Mustafa T. Babagil 5

6 DONANIM 3-)Bellek (hafıza / memory), Bilgisayarlarda bulunan bütün verilerin, bilgilerin ve programların geçici ya da uzun vadeli olarak saklandığı birimlere denir. Bilgisayar bellekleri dış bellek (yardımcı bellek) ve iç bellek (ana bellek) olmak üzere ikiye ayrılabilir. Dış bellekler, bilgisayarda bulunan bütün programların ve bilgilerin uzun üseli olarak depolandığı birimdir. İşletim sistemi programları ve uygulama programları bu birime kayıt edilerek kalıcı hale getirilir. Hart disk (sabit disk), disket (floppy disk), CD-ROM (compact disc read only memory) en yaygın kullanılan dış belleklerdir. İç bellekler, komutların, verilerin ve sonuçların bilgisayarın içinde aktif olarak bulunduğu yerlerdir. Herhangi bir veri ve o veriyi işleyecek olan program mutlaka belleğe yerleştirilmiş olması gerekir. Bilgisayarın çalışması sırasında programlar kullanılan ve üretilen bilgiler bu bellekte yer alır. Fakat bu bellekte bulunma işlemi geçicidir. Bilgisayarın kapatılması veya enerjinin kesilmesi durumunda bellekte kayıtlı olan bilgiler silinir. Ana bellekler yapılarına göre RAM (Random Access Memory) ve ROM (Read Only Memory) olmak üzere ikiye ayrılabilir Dr. Mustafa T. Babagil 6

7 DONANIM RAM, geçici bellek, ana bellek, direkt erişimli bellek olarak da anılır. Programların çalışmasını sağlar ve direkt olarak Merkezi İşlem Birimi ile bilgi alışverişi yapar. Sadece RAM de bulunan program çalışıp işlem yapar, sadece RAM de bulunan veri işlenir. Programı yüklemek, dosya açmak, aslında onu RAM e yüklemek demektir. CD sürücü Kasa Disket Sürücü Monitör Tarayıcı Hoparlör Klavye Kumanda Fare Dr. Mustafa T. Babagil 7

8 DONANIM ROM ise üzerine kayıtlı bilgilerin bir daha değişmesine izin verilmeyen bellektir. Bilgisayar imalatçıları tarafından içlerine bilgi yazılan bu bellek bilgisayar her açıldığında çalışma esaslarının yer aldığı komutların devreye girmesini ve işletim sisteminin de temel program parçalarının RAM belleğe aktarılmasını sağlar Dr. Mustafa T. Babagil 8

9 DONANIM 4-)Merkez İşlemci Birimi (CPU), bilgisayarın en önemli yapısını oluşturur. Verilerin işlendiği, önceliklerin belirlendiği, bütün birimlere görevlerinin hatırlatıldığı bölümdür. Mikroişlemci veya microprocessor olarak da adlandırılır. MİB nin yaptığı görevler şu şekilde sıralanabilir: Önceden verilen komutları veriliş sırasına göre yapılan işlemleri denetler. Aritmetik ve mantıksal işlemleri gerçekleştirir. Giriş biriminden gelen komutların ve verilerin alınarak bellek bölümüne aktarılmasını sağlar. Sonuçların bellek ortamına veya istenen dış ortama aktarılır Dr. Mustafa T. Babagil 9

10 YAZILIM Yazılım temel olarak iki ana başlık altında incelenebilir. 1-Sistem yazılımları (İşletim Sistemi) İşletim Sistemleri (Operating System - OS), bilgisayar donanımının kullanımına ve düzenlenmesine imkân sağlayan, bilgisayar işlevlerini görecek şekilde kullanmaya hazır hale getiren, açık durduğu sürece kullanıcı ile bilgisayarın arasındaki iletişimi sağlayan programlar topluluğudur. Kişisel ve orta boy bilgisayarlarda kullanılan pek çok işletim sistemi vardır. OS-2, DOS, MOS (Machintosh Operating System), UNIX, XENIX, Windows 9X, Windows 2000, NT, Windows XP örnek olarak Dr. Mustafa T. Babagil 10 sayılabilir.

11 YAZILIM 2-Uygulama Programları Bilgisayarı kullanarak günlük hayattaki bir işin görülmesini sağlayan her türülü yazılıma uygulama programı denir. Aslında sistem yazılımları, programlama dilleri ve belgelerin dışında kalan bütün yazılımlara uygulama programı denir. Bilgisayarda yazı yazmak (Word), resim yapmak (Paint), çizim yapmak (CorelDraw), internette dolaşmak (Explorer), oyun oynamak (Chess), müzik dinlemek (Media Player) gibi her işi yapan çok sayıda uygulama programı vardır. Aslında bilgisayarın maksadı da kullanıcılara uygulama programları vasıtasıyla yardımcı olmaktır Dr. Mustafa T. Babagil 11

12 PROGRAMLAMA DİLİ Bilgisayardaki her türlü yazılımın hazırlanmasını sağlayan programlara programlama dili denir. Kullanılan her türlü program mutlaka herhangi bir programlama dili ile hazırlanmıştır. Programlama dilleri kendilerine özgü kodlar kullanarak hazırlanan uygulama programlarının çalışmasını, dolayısıyla kullanıcının istediği amaçlar doğrultusunda program hazırlamasını sağlarlar. Basic, Cobol, Fortran, C++, Delpi programlama dillerine örnek verilebilir. Meselâ bir kullanıcı bilgisayarda bir mektup yazmak isterse önce bilgisayara bir yazı yazma programı yüklemelidir Dr. Mustafa T. Babagil 12

13 PROGRAMLAMA DİLİ Yazı yazma programı ise başkaları tarafından hazırlanmış bir yazılımdır. Fakat bunu yapmak için programlama dili kullanmışlardır. Tabi ki, programlama dillerini hazırlamak için de yine programlama dilleri gerekmiştir. Programlama dilleriyle yazılan programlar derlenerek.exe dosyaları haline dönüştürülürler. Böylece bir programın dosya ismi yazılarak program çalıştırılabilir. Programlama dilleri ile yazılmış bu yazılımlara programın source (kaynak) kodu dosyası denir Dr. Mustafa T. Babagil 13

14 PROGRAMLAMA DİLİ Bir programlama dilinde aranan başlıca özellikler: (1) Kullanım kolaylığı, (2) Tasarım kolaylığı, (3) Farklı donanımlara uyum, (4) Program hatalarını takip edebilirlik ve (5) Belgeleme kolaylığı olarak sayılabilir (Banger, 1995) Dr. Mustafa T. Babagil 14

15 PROGRAMLAMA DİLİ Programlama dilleri pek çok özelliğine göre sınıflandırılabilir. Günümüzde aslında dilleri birbirinden farklı kılan özellikler azalmakta, programlama dilleri gittikçe birdirine yaklaşmaktadır. Buna rağmen programlama dilleri kabaca dört grupta toplanabilir Dr. Mustafa T. Babagil 15

16 PROGRAMLAMA DİLİ Makine Dili : Her işlemi, ikili sayı sistemindeki kod numarası ile ifade ederek program yazılmasını sağlayan dildir. Dolayısıyla komutlar doğrudan bilgisayarın anlayacağı şekildedir. Ayrıca bir yorumlayıcı veya çeviriciye gerek yoktur. Aslında bilgisayarlar zaten makine kodlarına göre çalışmaktadır. Ancak makine dilinde programlamayı öğrenmek ve uygulamak çok zor ve zaman alıcıdır. Alt Düzey Diller : Makine diline en yakın dillerdir. Sembolik kodlar ve isimler kullanılır. Kendilerine ait birleştirici ve derleyici programları yardımıyla hazırlanan uygulama programlarını makine diline çevirerek çalıştırırlar. Öğrenmesi ve uygulaması oldukça zor dillerdir. Assebler bu grubun en tipik örneğidir Dr. Mustafa T. Babagil 16

17 PROGRAMLAMA DİLİ Üst Düzey Diller : Makine dili komutlarıyla şeklen hiçbir benzerliği bulunmayan, değim, komut ve ifadeler kullanarak işlem yapılmasını sağlayan dillerdir. Öğrenmesi ve uygulaması Alt Düzey dillerine göre daha kolaydır. Hazırlanan uygulama programları derleyici (compiler), yorumlayıcı (intepretater) veya çevirici (assebler) yardımıyla makine diline dönüştürülerek çalıştırılırlar. Fortran, Cobol, PL/1, RPG ve C bu gruba dahil edilebilir. Etkileşimli Diller : Programcının bir bilgisayar ile karşılıklı etkileşim içinde program geliştirmesini sağlayan dillerdir. Programcı editör vasıtasıyla komutlar yazarak bilgisayara iletir. Bilgisayar komutu hemen işleme sokarak makine diline çevirerek (yorumlayarak) gereken işlemi yapar. Basic ve APL bu grup programlama diline örnek verilebilir Dr. Mustafa T. Babagil 17

18 PROGRAM-YAZILIM İnsanla bilgisayar arasındaki iletişim aracı Programlama dili, programcı ile bilgisayar arasındaki iletişimi sağlayan bir araç olup programların yazılımında kullanılan bir notasyondur Dr. Mustafa T. Babagil 18

19 Bilgisayarda problem çözme aşamaları: Problemin tanımı Çözüm yolunun tespiti Algoritmanın hazırlanması Akışı diyagramının çizilmesi Programın hazırlanması Hazırlanan programın test edilmesi Uygulama Dr. Mustafa T. Babagil 19

20 1. DESİN SONU HAFTAYA HAZIRLANMASI GEREKENLER. GELECEK HAFTA İÇİN; ALGORİTMA NEDİR? AKIŞ DİAGRAMI NEDİR? AKIŞ DİAGRAMINDA KULLANILAN SEMBOLLER Dr. Mustafa T. Babagil 20

21 ALGORİTMA VE AKIŞ DİAGRAMLARI Dr. Mustafa T. Babagil 21

22 ALGORİTMA NEDİR Algoritma,herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir. Algoritma verilerin bilgisayara hangi çevre biriminden girileceğinin,problemin nasıl çözüleceğinin,hangi basamaklardan geçirilerek sonuç alınacağının,sonucun nasıl ve nereye yazılacağının sözel olarak ifade edilmesi biçiminde tanımlanabilir Dr. Mustafa T. Babagil 22

23 BASİT bir örnek: Verilen iki sayının toplamının bulunmasının Algoritma Adım 1-Başla Adım 2-Birinci sayıyı oku Adım 3-İkinci sayıyı oku Adım 4-İki sayıyı topla Adım 5-Dur Dr. Mustafa T. Babagil 23

24 DİKKAT!.. Algoritma yazımı, sorunun çözümünün başladığını gösteren "BAŞLA" ifadesi ile başlamakta ve işlemlerin bittiğini belirten "DUR" ifadesi ile sona ermektedir Dr. Mustafa T. Babagil 24

25 Algoritmada kullanılan terimler Tanımlayıcı (programdaki değişkenleri, sabitleri, kayıt alanlarını, özel bilgi tiplerinin adlandırılması veya belirlenmesi) Değişken (x, ad, tel_no, sayi1 vs. ) Aktarma (değişken = ifade) Sayaç (sayac = sayac + 1, x = x+3, s=s-5) Döngüde Döngü değişkeninin başlangıç ve bitiş değeri, Artma ya da azalma miktarı belirlenir. Ardışık toplama ve çarpma top_degis= top_degis+sayi carp_degis= carp_degis*sayi NOT: bu değişkenleri kullanmanız gerekli değildir. Bunlar, sizlere kolaylık olması için örneklendirme için verilmiştir Dr. Mustafa T. Babagil 25

26 Örnek 1: Bir öğrencinin numarası, adı ve soyadı, vize notu ve final notu girilmektedir. Verilere göre vize notunun %30'ü ile final notunun %70'i alınarak ortalaması hesaplanmak isteniyor. Algoritmayı maddeler halinde yazınız Dr. Mustafa T. Babagil 26

27 Çözüm 1: Dr. Mustafa T. Babagil 27

28 Örnek 2: Klavyeden girilen herhangi 5 sayının ortalamasını bulan programın algoritmasını ve çalışmasını inceleyelim Dr. Mustafa T. Babagil 28

29 Çözüm 2: Dr. Mustafa T. Babagil 29

30 AKIŞ ŞEMALARI Yaygın olarak FLOWCHART olarak da türkçede isimlendirilmektedir. Herhangi bir sorunun çözümü için izlenmesi gerekli olan aritmetik ve mantıksal adımların söz veya yazı ile anlatıldığı algoritmanın, görsel olarak simge ya da sembollerle ifade edilmiş şekline denir. Algoritmadan farkı,adımların simgeler şeklinde kutular içine yazılmış olması ve adımlar arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir. Dr. Mustafa T. Babagil 30

31 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. Yazıcı aracılığı ile çıkış yapılacağını gösterir. Aritmetik ve mantıksal ifadeler için karar verme ya da karşılaştırma durumunu gösterir Kart okuyucu aracılığıyla giriş yapılacağını gösterir. Diskten okuma veya diskete yazmayı gösterir. Dr. Mustafa T. Babagil 31

32 Disketten okuma veya diskete yazmayı gösterir. Oklar işin akış yönünü gösterir. Teyp kütüğünü gösterir. Yapılacak işler birden fazla sayıda yinelecek İse, diğer bir deyişle iş akışında çevrim (döngü) var ise bu sembol kullanılır Dr. Mustafa T. Babagil 32

33 Akış şemaları içerik ve biçimlerine göre genel olarak üç grupta sınıflandırılabilirler. >Doğrusal Akış Şemaları > Mantıksal Akış Şemaları > Döngüsel (iteratif, çevrimli, yineli) Akış Şemaları Dr. Mustafa T. Babagil 33

34 Doğrusal Akış Şemaları İş akışları giriş, hesaplama, çıkış biçiminde olan akış şemaları bu grup kapsamına girer. Örnek 1: İki sayının çarpımının bulunmasıyla ilgili algoritma aşağıdaki gibidir. Değişkenler: A: Birinci sayıyı B: İkinci sayıyı C: İki sayının çarpımını (A*B) göstersin Algoritma: Adım 1 Başla Adım 2 A yı oku Adım 3 B yi oku Adım 4 C=A*B yi hesapla Adım 5 C yi yaz Adım 6 - Dur Dr. Mustafa T. Babagil 34

35 Doğrusal Akış Şemaları Örnek 2: 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 Dr. Mustafa T. Babagil 35

36 Örnek 2 Akış Şeması BAŞLA OKU X OKU Y Z=X+Y YAZ Z DUR Dr. Mustafa T. Babagil 36

37 ÖRNEK: KLAVYEDEN İKİ DEĞİŞKEN GİRİLİP BUNLARIN ÇARPIMININ BAŞKA BİR DEĞİŞKENE ATANMASI VE SONUCUN HESAPLANMASI Dr. Mustafa T. Babagil 37

38 Mantıksal Akış Şemaları Geniş ölçüde mantıksal kararları içeren akış şemalarıdır. Hesap düzenleri genellikle basittir. Örnek 3: Klavyeden girilen bir sayının pozitif, negatif veya sıfıra eşit olma durumunu hesaplayıp yazdıran algoritma ve akış şemasını hazırlayınız. (S : Sayı) A1 : Başla A2 : Oku S A3 : Eğer S > 0 ise Pozitif yaz, A4 : Eğer S < 0 ise Negatif yaz, A5 : Eğer S = 0 ise Sıfıra eşit yaz, A6 : Dur Dr. Mustafa T. Babagil 38

39 Örnek 3 Mantıksal Akış Şemaları (klavyeden girilen sayının 0 ile kıyaslanması) BAŞLA OKU S S > 0 S < 0 YAZ Pozitif S : 0 YAZ Negatif S = 0 YAZ Sıfıra eşit DUR Dr. Mustafa T. Babagil 39

40 Döngüsel Akış Şemaları Sorunun çözümü için, çözümde yer alan herhangi bir adım ya da aşamanın birden fazla kullanıldığı akış şemalarına denir. İş akışları genel olarak giriş ya da başlangıç değeri verme, hesaplama, kontrol biçiminde olmaktadır Dr. Mustafa T. Babagil 40

41 Döngüsel Akış Şemaları Örnek 4: 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 Dr. Mustafa T. Babagil 41

42 Örnek 4 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 Dr. Mustafa T. Babagil 42

43 ÇALIŞMA SORULARI -1: ALIŞTIRMALAR Girilen 2 sayının toplamını, çarpımını ve farkını hesaplayan bir algoritma ve akış diagramı hazırlayınız. Girilen 2 sayınında 10 dan büyük olup olmadığını veya 10 a eşit olduğunu hesaplayan bir algoritma ve akış diagramı hazırlayınız. Girilen 2 sayının ikisinin de 10 dan büyük girilene kadar girişin devam edileceği bir algoritma ve akış diagramı hazırlayınız Dr. Mustafa T. Babagil 43

44 ÇALIŞMA1: Girilen 2 sayının toplamını, çarpımını ve farkını hesaplayan bir algoritma ve akış diagramı hazırlayınız. Başla Sayı1 ve Sayı2 gir. Toplam= Sayı1+Sayı2 Çarpım= Sayı1*Sayı2 Fark=Sayı1-Sayı2 Dur. Başla Oku Sayı1, Sayı2 Toplam= sayı1+sayı2 Çarpım=sayı1*sayı2 Fark=sayı1-sayı2 Dur Yaz Sayı1, Sayı2, Toplam, Çarpım, Fark İstenirse, Dur dan önce eklenebilir!.. Dr. Mustafa T. Babagil 44

45 Adım adım algoritmaların Çalışmasını inceleyelim. İleride aynı adım adım çalıştırma işini programlar ve program parçaları için de yapacağız. Çalıştır Sayı 1 Sayı 2 Toplam Çarpım Fark 1. Kez Kez Yukarıdaki Tablo, Çalışma 1 in 2 kere çalıştırılmış durumudur. Unutmayın Sayı1 ve Sayı 2 bizim tarafımızdan girilen sayılardır Dr. Mustafa T. Babagil 45

46 ÇALIŞMA 2: Girilen 2 sayınında 10 dan büyük olup olmadığını veya 10 a eşit olduğunu hesaplayan bir algoritma ve akış diagramı hazırlayınız. Adım 1: Başla Adım 2: Sayı1 ve Sayı2 gir. Adım 3: Eğer (Sayı1>10 ve Sayı2>10) ise Adım 6 e git, Sayı1 ve Sayı2 10 a eşit ise Adım 5 e git Adım 4: Yaz, Sayı1 ve Sayı2 aynı anda 10 dan büyük değil. Git Adım 7. Adım 5: Yaz, Sayı1 ve Sayı2 10 a eşit! Git Adım 7. Adım 6: Yaz, Sayı1 ve Sayı2 10 dan büyüktür Adım 7: Dur. İki sayı da 10 dan büyük Sayı1 ve sayı2 10 dan büyük Başla Oku Sayı1, Sayı2 Sayı1 >10 Sayı2>10 Sayı1 ve sayı2 10 a eşit. Dur İki sayı da 10 a eşit En az bir sayı 10 dan küçük Sayı1 ve sayı2 10 dan büyük değil Dr. Mustafa T. Babagil 46

47 Adım adım algoritmaların Çalışmasını inceleyelim. İleride aynı adım adım çalıştırma işini programlar ve program parçaları için de yapacağız. Çalıştır Sayı 1 Sayı 2 İkisi de Büyük Biri 10 dan büyük Birbirlerine Eşit 1. Kez Evet - 2. Kez Evet - 3. Kez Evet Kez Evet Yukarıdaki Tablo, Çalışma 2 in 4 kez çalıştırılmış durumudur. Unutmayın Sayı1 ve Sayı 2 bizim tarafımızdan girilen sayılardır Dr. Mustafa T. Babagil 47

48 Versiyon1-ÇALIŞMA 3: Girilen 2 sayının ikisinin de 10 dan büyük girilene kadar girişin devam edileceği bir algoritma ve akış diagramı hazırlayınız. Adım 1: Başla Adım 2: S1 gir. Adım 3: S1 < 10 Adım 2 ye git. Adım 4: S2 gir. Adım 5: S2 < 10 Adım 4 e git. Adım 6: Dur. S1 10 dan küçük Başla Oku S1 S1>10 S1 10 dan büyük Oku S2 NOT: TABİİ Kİ FARKLI ALGORİTMALAR VE AKIŞ DİAGRAMLARI HAZIRLANABİLİR. S2 10 dan küçük S2>10 Yaz Sı1, Sı2 İstenirse, Dur dan önce eklenebilir!.. S2 10 dan büyük Dur Dr. Mustafa T. Babagil 48

49 Adım adım algoritmaların Çalışmasını inceleyelim. İleride aynı adım adım çalıştırma işini programlar ve program parçaları için de yapacağız. Çalıştır Sayı 1 Sayı 2 İkisi de Büyük Biri 10 dan büyük Birbirlerine Eşit 1. Kez 2. Kez 3. Kez 4. Kez Versiyon 1: Yukarıdaki Tablo, Çalışma 3 ün?? kere çalıştırılmış durumudur. Unutmayın Sayı1 ve Sayı 2 bizim tarafımızdan girilen sayılardır Dr. Mustafa T. Babagil 49

50 Versiyon2-ÇALIŞMA 3: Girilen 2 sayının ikisinin de 10 dan büyük girilene kadar girişin devam edileceği bir algoritma ve akış diagramı hazırlayınız. Adım 1: Başla Adım 2: S1,S2 gir. Adım 3: S1 < 10 ve S2 < 10 Adım 2 ye git. Adım 4: Dur. S1, S2 10 dan büyük değil Başla Oku S1,S2 S1>10 S2 > 10 S1 ve S2 10 dan büyük Dur Yaz Sı1, Sı2 İstenirse, Dur dan önce eklenebilir! Dr. Mustafa T. Babagil 50

51 Adım adım algoritmaların Çalışmasını inceleyelim. İleride aynı adım adım çalıştırma işini programlar ve program parçaları için de yapacağız. Çalıştır Sayı 1 Sayı 2 İkisi de Büyük Biri 10 dan büyük Birbirlerine Eşit 1. Kez 2. Kez 3. Kez 4. Kez Versiyon 2: Yukarıdaki Tablo, Çalışma 3 ün?? kere çalıştırılmış durumudur. Unutmayın Sayı1 ve Sayı 2 bizim tarafımızdan girilen sayılardır Dr. Mustafa T. Babagil 51

52 Versiyon3-ÇALIŞMA 3: Girilen 2 sayının ikisinin de 10 dan büyük girilene kadar girişin devam edileceği bir algoritma ve akış diagramı hazırlayınız. Adım 1: Başla Adım 2: S1,S2 gir. Adım 3: S1 <10 ise Adım 4 e git, S2 <10 ise Adım 5 e git değil ise Adım 6 ya git. Adım 4: S1 gir, Adım 3 e git. Adım 5: S2 gir, Adım 3 e git. Adım 6: Dur. S1 10 dan büyük değil Oku S1 Başla Oku S1, S2 S1 >10 S2 > 10 S2 10 dan büyük değil Oku S2 Evet Dur Yaz Sı1, Sı2 İstenirse, Dur dan önce eklenebilir! Dr. Mustafa T. Babagil 52

53 Adım adım algoritmaların Çalışmasını inceleyelim. İleride aynı adım adım çalıştırma işini programlar ve program parçaları için de yapacağız. Çalıştır Sayı 1 Sayı 2 İkisi de Büyük Biri 10 dan büyük Birbirlerine Eşit 1. Kez 2. Kez 3. Kez 4. Kez Versiyon 3: Yukarıdaki Tablo, Çalışma 3 ün?? kere çalıştırılmış durumudur. Unutmayın Sayı1 ve Sayı 2 bizim tarafımızdan girilen sayılardır Dr. Mustafa T. Babagil 53

54 Çalışma Soruları 2: Algoritma, Akış Diagramı ve test çalıştırmasını yapınız (en az 5 kez). 1. Gerekli ölçüleri girilen 100 dikdörtgenin alanını ve çevresini hesaplayınız. Ekrana boyutlar, alan ve çevreyi yazdırınız öğrenci için, Bilg213 dersinden, 2 arasınav(%30) ve 1 final(%40) sınav notunu klavyeden girerek, dersten geçilip geçilmediğini hesaplayınız ve ekrana notlar, ortalama ve başarılı olup olmadığını yazdırınız. 3. Klavyeden 0 sayısı girdi verilene kadar girilecek sayıların ortalamasını hesaplayınız ve ekrana girilen tüm sayıları, kaç tane sayı girildiğini ve ortalamayı yazdırınız Dr. Mustafa T. Babagil 54

55 1- Gerekli ölçüleri girilen 100 dikdörtgenin alanını ve çevresini hesaplayınız. Ekrana boyutlar, alan ve çevreyi yazdırınız. A1: Başla A2: sayaç=0 A3: boy, en gir A4: sayac=sayaç+1 A5: Alan=boy*en, çevre=2*boy+2*en A6: yaz, boy, en, alan, çevre A7: Eger sayaç < 100 git A3 A8: Dur Başla Sayaç=0 Boy, en Sayaç=sayaç+1 Alan=boy*en Çevre=2*en+2*boy En, boy Alan, çevre Sayaç< Dr. Mustafa T. Babagil 55 evet hayır Dur

56 1- Gerekli ölçüleri girilen 100 dikdörtgenin alanını ve çevresini hesaplayınız. Ekrana boyutlar, alan ve çevreyi yazdırınız. Çalıştır en boy Sayaç Alan Çevre Ekran Çıktısı İlk durum Kez , 2, 6, Kez , 4, 20, Kez , 10, 100, Kez , 7, 35, Kez , 6, 18, Dr. Mustafa T. Babagil 56

57 2-20 öğrenci için, Bilg213 dersinden, 2 arasınav(%30) ve 1 final(%40) sınav notunu klavyeden girerek, dersten geçilip geçilmediğini hesaplayınız ve ekrana notlar, ortalama ve başarılı olup olmadığını yazdırınız. Başla Sayaç=0 snv1, snv2, final A1: Basla A2: sayaç=0 A3: snv1, snv2, final gir A4: sayaç=sayaç+1 A5: ortalama= 0.3*snv1+0.3*snv2+0.4*final A6: eger ortalama >= 50 git A7 degilse git A8. A7: yaz, Gecti A8: yaz Kaldi A9: snv1, snv2, final, ortalama A10:eger sayac < 20 git A3 A11: Dur Kaldı Ortalama=snv1*0.3+snv2*0.3+final*0.4 Ortalama >=50 Evet Sayac<20 hayır Dur Dr. Mustafa T. Babagil 57 Hayır Sayaç=sayaç+1 Snv1, snv2, final, ortalama Evet Geçti

58 2-20 öğrenci için, Bilg213 dersinden, 2 arasınav(%30) ve 1 final(%40) sınav notunu klavyeden girerek, dersten geçilip geçilmediğini hesaplayınız ve ekrana notlar, ortalama ve başarılı olup olmadığını yazdırınız. Çalıştır snv1 snv2 final sayaç ortalama Geçti/Kaldı Ekran Çıktısı İlk durum Kez Geçti Geçti, 50,50,50,50 2. Kez Geçti Geçti, 30, 50, 80, Kez Geçti Geçti, 50, 90, 90, Kez Geçti Geçti, 60,70, 80, Kez Kaldı Kaldı, 30, 40, 50, Dr. Mustafa T. Babagil 58

59 3- Klavyeden 0 sayısı girdi verilene kadar girilecek sayıların ortalamasını hesaplayınız ve ekrana girilen tüm sayıları, kaç tane sayı girildiğini ve ortalamayı yazdırınız. A1: Basla A2: sayaç=0, toplam=0, ortalama=0 A3: Sayi gir A4: eğer sayi = 0 git A7 A5: sayaç=sayaç+1 A6: toplam=toplam+sayi, git A3 A7: ortalama=toplam/sayaç A8: yaz sayaç, ortalama A9: Dur evet Ortalama=toplam/sayaç Sayac, ortalama Dr. Mustafa T. Babagil 59 Dur Başla sayaç=0 Toplam=0 ortalama=0 sayı Sayı =0 Sayaç=sayaç+1 Toplam=toplam+sayı

60 3- Klavyeden 0 sayısı girdi verilene kadar girilecek sayıların ortalamasını hesaplayınız ve ekrana girilen tüm sayıları, kaç tane sayı girildiğini ve ortalamayı yazdırınız. Çalıştır sayı sayaç toplam ortalama Ekran Çıktısı İlk Durum Kez Kez Kez Kez Kez , Dr. Mustafa T. Babagil 60

61 Çalışma Soruları 3: Algoritma, Akış Diagramı ve test çalıştırmasını yapınız (1 ve 2 yi en az 5 kez, 3 ü ise XXX çıkana kadar çalıştırınız.). 1- İkinci dereceden bir denklemin gerçel köklerinin olup olmadığını inceleyen ve ekrana yazdıran bir algoritma hazırlayınız. Klavyeden girilecek olan katsayılar olmalı ve x 2 nin katsayısı 0 girilene kadar program çalışmalı. En sonunda ekrana diğer çıktılara ek olarak bir de, kaçtane hesaplandığını yazdırınız. 2-2 nin 20 nci kuvvetine kadar hesaplayan ve 2 nin 0 ıncı kuvvetinden başlayarak tüm bu kuvvetlerini yazdıran bir algoritma hazırlayınız. 3- Ekrana aşağıdaki çıktıları yazdırabilen bir algoritma hazırlayınız X X X X XX X XXX Yani, 3 e kadar say ve X yazdır, bir kere daha 3 e kadar say, XX yazdır, sonra yine 3 e kadar say XXX koydur. Bu işlemi 10 tane X koydurana kadar tekrarlayınız Dr. Mustafa T. Babagil 61

62 1- İkinci dereceden bir denklemin gerçel köklerinin olup olmadığını inceleyen ve ekrana yazdıran bir algoritma hazırlayınız. Klavyeden girilecek olan katsayılar olmalı ve x 2 nin katsayısı 0 girilene kadar program çalışmalı. En sonunda ekrana diğer çıktılara ek olarak bir de, kaçtane hesaplandığını yazdırınız. A1: Başla A2: sayaç=0 A3: a,b,c gir A4: Eğer a=0 git A9 A5: D=b 2 4.a.c A6: Eğer D < 0 ise Git A10 A7: Yaz gerçek kökleri vardır!.. A8: sayaç=sayaç+1 git A3 A9: Yaz ikinci dereceden fonk. değil git A11 A10: Yaz Gerçek kök yoktur!. A11: Yaz sayaç A12: Dur. evet evet Başla Sayaç=0 a,b,c A<0 D=b 2 4.a.c D<0 gerçek kökleri vardır Sayaç=sayaç+1 ikinci derece fonk.değil hayır hayır gerçek kökleri yoktur sayaç Dr. Mustafa T. Babagil Dur 62

63 2-2 nin 20 nci kuvvetine kadar hesaplayan ve 2 nin 0 ıncı kuvvetinden başlayarak tüm bu kuvvetlerini yazdıran bir algoritma hazırlayınız. A1: Başla A2: sayac=1, kvt=1 A3: Yaz kvt. A4: Eğer sayaç > 21 git A8 A5: kvt=kvt*2 A6: Yaz kvt A7: sayaç=sayaç+1 git A4 A8: Dur evet Başla Sayaç=1 kvt=1 kvt Sayaç >21 kvt=kvt*2 kvt Sayaç=sayaç+1 Dur hayır Dr. Mustafa T. Babagil 63

64 Ekrana aşağıdaki çıktıları yazdırabilen bir algoritma hazırlayınız X X X X XX X XXX Başla i=0 k=i, s=0 i=10 hayır s=s+1 evet A1: Başla A2: i=0 A3: k=i, s=0 A4: Eğer i=10 git A12 A5: s=s+1 A6: yaz s A7: Eğer s<3 git A5 A8: k=k+1, i=k; A9: Eğer k<1 git A3 A10:Yaz X A11: k=k-1git A9 A12: Dur evet s s<3 hayır k=k+1 i=k hayır K<1 X k=k-1 evet Dur Dr. Mustafa T. Babagil 64

65 C++ PROGRAMLAMAYA GİRİŞ C ve C++ büyük ve küçük harf duyarlılığına sahiptir. Kullandığımız ifadeleri birbirinden farklı ve aynı ifade olarak kullanıyorsak programımız hata verecektir. Buna bir örnek olarak Program PROGRAM program ProgRam Kelimelerini verebiliriz. Hepside farklı kelimeler olarak kabul edilirler! Dr. Mustafa T. Babagil 65

66 C++ İle Programlamaya Giriş C++ ın Genel Formu Dr. Mustafa T. Babagil 66

67 İlk programımız! // ilk1.cpp // Ekrana "Bu benim ilk programım" yazdırıyoruz #include <iostream.h> int main() { cout << "Bu benim ilk programım"; return 0; } Dr. Mustafa T. Babagil 67

68 Şimdi Yazdığımız programı inceleyelim: "//" işaretini açıklama satırlarında kullanıyoruz. C++ derleyicisi bu notasyonla başlayan satırı okumaz. Bununla birlikte daha uzun cümlelerimiz olursa bunları da " /* */ " notasyonunun içinde yazıcağız. Bu özellik de C den bize kalma. Demiştik zaten C `nin tüm özelliklerini C++ içerir. Fakat biz genelde " // " yi kullanacağız Dr. Mustafa T. Babagil 68

69 #include <iostream.h> : Bu bizim C++ da bulunan kütüphane dosyamızı çağırmaya yarıyor. iostream.h kütüphanesindeki hazır olan " cout " fonksiyonunu çağırıyor. Yani buda bizim fazla kod yazmamıza engel oluyor..h ile biten dosyalar kütüphane dosyalarıdır. Bunu şuna da benzetebiliriz. Farz edelim ki elimizde bir alet çantası var içinden tornavidayı çağırdığımızda vida sıkacağızdır. Bu da ona benziyor. C++ da ki hazır kütüphanelerde bir çok hazır fonksiyonlar vardır. İlerde Bu hazır fonksiyonlar işimizi görmemeye başlayınca kendi kütüphanemizi yapmaya başlayacağız. Tabi bu seviyeye geldiğimizde olayı hemen hemen kavramış olacağız, Dr. Mustafa T. Babagil 69

70 Daha sonraki satır her C++ programında mutlaka bulunması gereken bir satırdır. Her C++ programında main() fonksiyonu olmak zorundadır; bu fonksiyonumuzun önünde ise o fonksiyonun dönderdiği değişkenin veri tipi olmalıdır. Tabi ki C++ fonksiyonlar ve onların dönderdikleri değerler konusunu da ileride işleyeceğiz. Bir sonraki satırda ise; C++ fonksiyonlar ve kod blokları " { } " parantezleri arasında bulunmalıdır. main de bir fonksiyon ise onun içindeki kodlar doğal olarak { } parantezleri arasındadır Dr. Mustafa T. Babagil 70

71 Program derlenip çalıştırıldığında ise ( Turbo C kullanıyorsanız ctrl+f9 kısa yoluyla programı çalıştırabilirsiniz (Run) ) karşımıza "Bu benim ilk programım" yazısı çıkacaktır. İşte bu yazıyı ekrana veren komut da iostream.h kütüphanesindeki cout fonksiyonudur. Önemli bir nokta ise C++ dilinde her satır ifadenin sonuna " ; " koymak zorundayız. Bundan farklı olarak #include satırlarının ve bir kaç farklı satırın arkasına " ; " gelmez. Bunları ileride göreceğiz. Return 0 : programımızın (aynı zamanda main fonksiyonumuzun) çıkış noktasıdır. Eğer return ile 0 değeri dönderirsek programımızın güvenle çıktığını işletim sistemine bildirmiş oluruz. Bu sayede güvenle programımızın çalıştığını göreceğiz Dr. Mustafa T. Babagil 71

72 Bazı gerekli notasyonlar Dizi: Adı: \a Alarm \b Bir karakter geri (Backspace) \f Formu itekle \n Yeni satır ( yukarda kullandığımız (newline) ) \r Return \t Yatay boşluk Dr. Mustafa T. Babagil 72

73 C++ Programlamanın temel // örnek C++ programı parçaları #include <iostream> using isim std; int main() Main ismindeki başlangıç fonksiyonu { Main bloğunun başlangıcı cout << merhaba, nasılsın!"; return 0; } Main bolğunun bitişi Yorum Hazır kütüphane dosyası çağırımı Kullanılacak isimler Mesaj olarak Düz yazı. 0 tam sayısını işletim sistemine gönderme output statement Dr. Mustafa T. Babagil 2-73

74 ÖZEL KARAKTERLER Character Name Meaning // Çift slaş Yorum başlangıcı # Numaralandırma işareti < > Açma/kapama sembolleri ( ) Açma/kapama parantezleri { } Açma/kapama parantezleri Aç/kapat tırnak işaretleri Kütüphane dosyası başlangıcı, (çağırılması) #include daki dosya adlarının başına ve sonuna konur. Fonksiyonlar isimlendirilirken kullanılır. Birden çok, grup komutları yazılırken kullanılır. Düz yazı yazdırılacağında kullanılır. ; Noktalı virgül Bir program komutunun sonunu bildirir Dr. Mustafa T. Babagil 2-74

75 cout Objesi Bilgisayar ekranına çıktıyı göndermeye yarar. cout a bilgi gönderirken << işareti kullanılır. cout << Programlama çok zevkli!"; Dr. Mustafa T. Babagil 2-75

76 cout Objesi Aşağıdaki tek satırda gözüken bir çıktı oluşturacaktır. cout << Programlama çok ; cout << zevkli! ; Dr. Mustafa T. Babagil 2-76

77 endl uygulayıcısı endln, yeni bir satır oluşturmak, bu komutun kullanıldığı yerde yeni satıra geçmek için kullanılır. Aşağıdaki iki satır çıktı oluşturur. cout << Programlama çok << endl; cout << zevkli! ; Dr. Mustafa T. Babagil 2-77

78 endl uygulayıcısı cout << Programlama çok << endl; cout << güzel! ; Programlama çok güzel! Dr. Mustafa T. Babagil 2-78

79 #include direktifleri. Yazmakta olduğunuz programın içerisine bir başka dosyanın içeriğini dahil etmek amaçlı kullanımlar için emir komutudur. Bu bir C++ komutundan ziyade bir işlem öncesi emir aktarımı olarak kabul edilebilir. #include satırları derleyici tarafından dikkate alınmazlar. #include bir komut olmadığından dolayı sonuna ; işareti konmamalıdır Dr. Mustafa T. Babagil 79

80 Değişkenler (variables) Değişken (variable) hafızada yer tutabilecek bir isimlendirmedir. Tutacağı yada saklayacağı bilginin ismini ve türünü gösterir. Kullanılmadan önce tanımlanmalıdırlar. int degisken2; şeklinde, kullanılırlar Dr. Mustafa T. Babagil 80

81 // Bu programda variable uygulaması görülmektedir. #include <iostream> using namespace std; int main() { int sayi; sayi=5; // ekrana yazdırmak için cout << sayimizin değeri << sayi << endl; return(0); } Programın çıktısı ise sayimizin değeri 5 şeklindedir Dr. Mustafa T. Babagil 81

82 Tanımlayıcılar. (identifiers) Bir tanımlayıcı, programın belli bir parçasını tanımlayandır. Bunlar, bir fonksiyon, bir değişken ya da bir başka dosya adı olabilirler. Bir sonraki slayt da yalnızca C++ a ait, C++ a özel ayrıltılmış (reserved) kelimeler vardır. Bunlar tanımlayıcı olarak kullanılamazlar Dr. Mustafa T. Babagil 82

83 C++ a özel, ayrılt ltılmış kelimeler aşağıdaki gibidirler Dr. Mustafa T. Babagil 83

84 Değişken isimleri Değişkenlerin isimleri seçilirken neyi temsil ettiklerini anlatabilmeleri gerekliliği üstünde durmalıyız. Yani anlaşılabilir değişken isimleri seçilmelidir Dr. Mustafa T. Babagil 84

85 Temel Değişken kuralları Bir değişkenin: 1. İlk karakteri alfabetik bir karakter olmalıdır. 2. Eğer alfabetik bir karakterle başlamayacak ise _ alt çizgi ile başlamalıdır. 3. İlk karakterden sonra alfabetik, sayısal yada alt çizgi karakterleri kullanılabilir. 4. Unutmayınız ki Büyük ve küçük harf kullanımı farklılık göstermektedir. Yani, Mustafa ve mustafa C++ için farklı iki değişken olabilir Dr. Mustafa T. Babagil 85

86 Geçerli ve geçerli olmayan değişkenlere örnek DEĞİŞKEN (IDENTIFIER) toplamsatis toplam_satis GEÇERLİ? Evet Evet Geçerli değilse, nedeni!... toplom.satış hayır. İşareti ve türkçe kullanıldı 4tebirsatis hayır Sayı ile başlamamalı. toplamsati$ hayır $ işareti içermemeli. Toplam_satıs hayır Türkçe karakter kullanıldı. Toplam-satış hayır Hem türkçe karakter hem de işareti kullanıldı Dr. Mustafa T. Babagil 86

87 Tam sayı değişkeni (integer, int) integer değişkeni 5, 100, 3, 0, -34 gibi sayıları saklamakta kullanılır. Tam sayı değişkeni yani integer değişken çeşitinin büyüklüğü ve hafızada tutabileceği sayı aralığı değerleri. Bilgi çeşiti Büyüklüğü Aralığı Dr. Mustafa T. Babagil 87

88 Değişken tanımlamaları Ayni cinsten olan değişkenler farklı satırlarda olabileceği gibi aynı satırlar içerisinde de tanımlanabilirler. int genislik; int yukseklik; int alan; Veya int genislik, yukseklik, alan; Dr. Mustafa T. Babagil 88

89 Char data çeşiti 1 byte yer tutar Tek karakter temsil etmekte kullanılır. Karakterin sayısal değeri bellekte tutulur. CODE: char harf; harf = 'C'; BELLEK: harf Dr. Mustafa T. Babagil 89

90 Char data çeşiti Değişkene atamalar yapılırken yada ekrana yansıtma (çıktı) yapılırken tek tırnak işareti arasında kullanılır. harf= W ; A şeklinde Dr. Mustafa T. Babagil 90

91 Akışkan sayı (Floating point) data çeşiti Floating point sayıları aslında reel sayılar olarak adlandırılabilirler. Bu data tipleri şunlardır float double long double 3.48, gibi sayıları bellekte tutmaya yararlar. float 4 byte bilgi tutar ve +/-3.4E-38 ve +/-3.4E+38 aralığındadır. double 8 byte tır ve +/-1.7E-308 ile +/-1.7E+308 aralığındadır. long double 8 byte tır ve +/-1.7E-308 ile +/-1.7E+308 aralığındadır Dr. Mustafa T. Babagil 91

92 Floating point programı // reel sayı uygulaması yapalım #include<iostream> using namespace std; int main() { float katedilenyol; float zaman, hiz; katedilenyol=308; //kilometre zaman=2.5; //saat hiz=katedilenyol/zaman; cout<<katedilenyol<< km. mesafeyi <<hiz<< km.saatte bir hizla gittiniz. <<endl; return(0); } Programın çıktısı şöyle olacaktır. 308 km. Mesafeyi 123.2km.saatte bir hizla gittiniz Dr. Mustafa T. Babagil 92

93 cin Objesi cin objesi tanımlamış olduğunuz değişken için klavyeden bir değer atamak için kullanılır. Kullanışı ise aşağıdaki gibidir int yukseklik; cout << yukseklik gir ; cin >> yukseklik; Dr. Mustafa T. Babagil 2-93

94 cin Objesi cin objesi ile birden çok değişken de girilebilir. Kullanışı ise aşağıdaki gibidir int yukseklik, taban; cout << yukseklik ve taban gir ; cin >> yukseklik >> taban;... Unutulmamalıdır ki, ilk girilen değer birinci değişkene atanmaktadır Dr. Mustafa T. Babagil 2-94

95 cin ile karakter dizisi okumak. (yani bir kelime girişi i yapmak!..) cin objesi ile bir karatter dizisi yani bir kelime girişi (klavyeden) aşağıdaki gibi yapılabilir. Kullanışı string isim[21]; cout << adınızı giriniz ; cin >> isim; Dr. Mustafa T. Babagil 2-95

96 cin ile karakter dizisi okumak. (yani bir kelime girişi i yapmak!..) string isim[21]; Bunun anlamı 22 karakterden oluşan bir diziyi isim değişkeni üzerine tanımlamaktır. 0, 1, 2, inci karakterler olarak tutulmaktadır. Önemli bir başka nokta ise NULL karakterinin de 22 karakter olarak bu değişkene atanmasıdır. Yani 0 dan 21 e kadar 22 karakter var. Bunu iyice anlamamız gereklidir Dr. Mustafa T. Babagil 2-96

97 Matematiksel Tanımlar Birden fazla matematiksel operatör yardımı ile çok komplex formüller yazılabilir. Bir matematiksel tanım, birden fazla matematiksel operatör ile değişkenler kullanılarak, yada değkenler kullanılmadan da yazılabilir!.. Çıktı ekrana gönderilirken de, cout, objesi güvenle kullanılabilir: Alan = 2 * PI * yaricap; cout << cevre = " << 2*(l+w); gibi Dr. Mustafa T. Babagil 3-97

98 Matematiksel işlem sırası Birden fazla operasyon içeren matematiksel tanımlamalarda işlem sırası aşağıdaki gibidir. *, /, +, - Örnek: * 2 2 ikinci ilk üçüncü Dr. Mustafa T. Babagil 3-98

99 Operasyon sırası Bazı Tanımlamalarda İşlem sonuçları Tanım Değer Dr. Mustafa T. Babagil 3-99

100 Parantezler ile Gruplama Bazı Tanımlamalarda İşlem sonuçları Tanım Değer Dr. Mustafa T. Babagil 3-100

101 Değişken tiplerinde hiyararşi En Yüksek değer: long double double float unsigned long long unsigned int En düşük: int Saklayabilecekleri (tutabilecekleri) en büyük sayıya göre sıralanmışlardır Dr. Mustafa T. Babagil 3-101

102 İsimlendirilmiş Sabitler İsimlendirilmiş sabitler (constant variable): Değeri değiştirilemeyen değişken tanımlarıdırlar. Sabit olarak program başında tanımlanırlar. Sabit değişkenleri temsil etmekte kullanılırlar. const double VERGI_ORANI = ; const int IL_SAYISI = 50; Tercihen büyük harflerle tanımlanmaları uygundur Dr. Mustafa T. Babagil 3-102

103 Sabitler (Constants) ve Sıralı değişkenler (ARRAYS) Genel olarak bir isim sabiti kullanımı boyutu bildirilen bir array ile anlatılır. const int boyut = 21; char isim[boyut]; Olarak tanımlanır. Bunun anlamı 21 karakterlik bir ism girilebileceğidir Dr. Mustafa T. Babagil 3-103

104 #define kullanımı #define boyut 50 Tanımın sonunda ; olmadığına dikkat edin!.. Bellekte const gibi yer tutmaz. Bu bir avantaj olarak sayılabilir Dr. Mustafa T. Babagil 3-104

105 Bileşik Atamalar Aşağıdaki tanımı inceleyelim: toplam = toplam + 1; Toplam üzerine devamlı olarak 1 ekler Dr. Mustafa T. Babagil 3-105

106 Benzer tanımlar X=6 olarak kabul edelim Tanım Ne yapar x e 4 ekler X in tanımdan sonraki değeri x den 3 çıkartır X i 10 ile çarpar X i, x in 2 ye bölümüne eşitler X i x/4 sonundaki kalana eşitler Dr. Mustafa T. Babagil 3-106

107 Bazı Matematiksel Kütüphane K Fonksiyonları cmath kütük dosyasını ister. double alır, ve double çıkartır. Genelde kullanılan fonksiyonlar: sin Sine cos Cosine tan Tangent sqrt Kare kök log Doğal (e) log abs Mutlak değer (bir int alır ve bir int çıkartır) Dr. Mustafa T. Babagil 3-107

108 Bazı Matematiksel Kütüphane Fonksiyonları Aşağıdakiler ise cstdlib kütüğünü isterler. rand(): 0 ile enbüyük tutabileceği sayı arasında rastgele bir sayı üretir (int). Her program çalıştığında ayni sırayla sayılar üretir. srand(x): Yukardaki sayı üreticiyi başlangıç durumuna getirmeye yarar. unsigned int x kullanır. Amacı ise değişik sayılar üretilmesini sağlamaktır Dr. Mustafa T. Babagil 3-108

109 Karar Mekanizmaları Dr. Mustafa T. Babagil 109

110 İlişki (Kıyaslama) Operatörleri Sayıların kıyaslanmasında kullanılır. Operatörler: > Büyüktür < Küçüktür >= Büyük veya eşit <= Küçük veya eşit == Eşittir!= Eşit değildir Dr. Mustafa T. Babagil 4-110

111 Bazı kıyaslamalar Boolean tanımlamalar doğru veya yanlış Örnek: 12 > 5, doğru 7 <= 5, yanlış eğer x 10 ise, (if x = 10 then) x == 10, doğru, x!= 8, doğru, ve x == 8, yanlış olarak değerlendirilir. = ve == karıştırmamaya dikkat ediniz! Dr. Mustafa T. Babagil 4-111

112 if...then... else... Dışarısı soğuk mu? Doğru Yanlış Ceket giy Eldiven tak Bere tak Dr. Mustafa T. Babagil 4-112

113 if...then... else... Genel Format: if (kıyaslama) tanım; Burada tanım, bir ekran çıktısı komutu, bir matematiksel işlem, bir başka kıyaslama yada bir atama, v.s. olabilir Dr. Mustafa T. Babagil 4-113

114 if...then... else... Ortalama 50 den büyük mü? Doğru Yanlış Başarılı Başarısız Dr. Mustafa T. Babagil 4-114

115 if kıyaslamasını geliştirebiliriz Birden fazla komutu çalıştırmak için { } kullanılmalıdır: if (ortalama > 90) { Harfnotu = 'A'; cout << İyi is cıkarttınız!\n"; } { } belli bir blok komutu işletmek, çalıştırmak için kullanılır. Çok önemli bir başka durum da, iç içe İf kıyasları kullanılabileceğidir Dr. Mustafa T. Babagil 4-115

116 Mantık Operatörleri Kıyaslamalardan oluşan kıyaslamalar oluşturmada kullanılırlar Operatör aslında açıklama anlamına gelebilir: && AND Eğer her iki kıyas da doğru olursa, yeni kıyaslama da doğrudur. OR Eğer iki kıyastan biri doğru ise, yeni kıyas da doğru olur.! NOT Bir tanımın değerini ters çevirir ve doğru tanım yanlış olur, yanlış tanım da doğru olur Dr. Mustafa T. Babagil 4-116

117 Mantık Operatörleri - örnek Eğer tanım aşağıdaki gibi ise, int x = 12, y = 5, z = -4; (x > y) && (y > z) doğru (x > y) && (z > y) yanlış (x <= z) (y == z) yanlış (x <= z) (y!= z) doğru!(x >= z) yanlış 4-117

118 switch Komutu Birçok alternatif içerisinden seçim yapmaya yarar. Bazı durumlarda if/else if kıyaslaması yerine kullanılır Dr. Mustafa T. Babagil 4-118

119 switch Kullanımı switch (tanım) //integer çıkmalı { case durum1: tanım1; case durm2: tanım2;... case durumn: tanımn; kabul edilen: tanımn+1; } ** break komutu ile switch tanımından çıkış yapılabilir. Harf notu çıkarmak için kullanılabilir!.. Menü hazırlamada kullanılabilir! Dr. Mustafa T. Babagil 4-119

120 Döngüler (Loops) while (kıyaslama) tanım; tanım:komut, atama, v.s (bu tanım bir blok olarak da {} arasında yazılabileceği unutulmamalı). int sayi; sayi=0; while (sayi <= 5) { cout << selam\n"; sayi++; } Çıktı 6 tane alt alta selam yazısı olacaktır!.. (sayaç uygulaması) Unutmayın başta kıyaslama yapılıp döngüye giriliyor Dr. Mustafa T. Babagil 120

121 do-while döngüsü do-while: önce döngü gerçekleşir sonra kıyaslama tanımlaması test edilir. (alttan test yöntemi) Genel Format: do tanım; // yada bir blok tanım{ } while (kıyaslama); Unutmayın ki ; konulması illa ki şarttır! Dr. Mustafa T. Babagil 5-121

122 for döngüsü (Loop) Sayaç kontrolü bilinen döngüler için çok kullanışlıdır. Genel Yapısı: for(başlangıç; test; değer değişimi) komut; // yada blok olarak komutlar{ } 3 üncü komut sonrası ; yok!.. Yada şöyle diyelim ) sonrası ; yok! Dr. Mustafa T. Babagil 5-122

123 for döngüsü (Loop) - Örnek int sayac; for (sayac = 1; sayac <= 5; sayac++) cout << selam" << endl; 5 kere alt alta selam yazacaktır!... Veee, int sayac kuvvet=1; for (sayac=1; sayac <=10; sayac++) kvvet=kuvvet*2; Yukarıdaki ise 2 nin 10uncu kuvvetine kadar hesaplayacaktır. İç içe for döngüleri ve iç içe while döngüleri kurulabileceğini de asla unutmayınız Dr. Mustafa T. Babagil 5-123

124 ÖDEV1- ALGORİTMA1-AKIŞ DİAGRAMI!.. C++ PROGRAM KODU-1 #include<iostream.h> #include<conio.h> #include<stdio.h> int main() { // * main blogunun baslangici int sayi1,sayi2; int toplam, carpim, fark; //klavyeden girilecek sayilar //islem sonucunda elde edilecekler clrscr; // ekranin temizlenmesi için komut (TC4.5 de pek gerekli değil!.. ) cout <<"1. sayi ="; cin >> sayi1; cout << "\n"; // klavyeden 1. sayinin girilmesi cout <<"2. sayi ="; cin >> sayi2; cout << "\n"; // klavyeden 2. sayinin girilmesi toplam=sayi1+sayi2; carpim=sayi1*sayi2; fark=sayi1-sayi2; // hesaplamalar cout << "toplam="; cout <<toplam; cout << "\n"; cout<<"carpim="; cout<< carpim; cout << "\n"; cout<< "fark="; cout<<fark; // ekran çiktisi "toplam" // ekran çiktisi "carpim" // ekran çiktisi "fark" return 0; // main bloguna bir tamsayi(integer) dönulmesi }// * main blogunun bitimi Dr. Mustafa T. Babagil 124

125 ÖDEV1- ALGORİTMA2-AKIŞ DİAGRAMI!.. C++ PROGRAM KODU-2 #include<iostream.h> #include<conio.h> #include<stdio.h> int main() { // * main blogunun baslangici int sayi1,sayi2; cout <<"1. sayi ="; cin >> sayi1; cout << "\n"; // klavyeden 1. sayinin girilmesi cout <<"2. sayi ="; cin >> sayi2; cout << "\n"; // klavyeden 2. sayinin girilmesi if ((sayi1 >10) && (sayi2 >10)) cout << "sayilar 10 dan buyuk!"; // 1. ve 2. sayinin 10 ile //kiyaslanmasi else if ((sayi1 ==10) && (sayi2 ==10)) // 1. ve 2. sayinin 10 ile kiyaslanmasi cout << "sayilar esit"; // ekran çiktisi else cout << "sayilar 10 dan buyuk degil"; // ekran çiktisi return 0; // main bloguna bir tamsayi(integer) dönulmesi } // * main blogunun bitimi Dr. Mustafa T. Babagil 125

126 ÖDEV1- ALGORİTMA3-AKIŞ DİAGRAMI!.. C++ PROGRAM KODU-3 #include<iostream.h> #include<conio.h> #include<stdio.h> int main() { // * main blogunun baslangici int s1,s2; // klavyeden girilecek olan 1. ve 2. sayinin tanimlanmasi cout << "sayi1="; cin >> s1; cout<<"\n"; // klavyeden 1. sayinin girilmesi while (s1 <= 10) { cout << "sayi1="; cin >> s1; cout<<"\n"; } // 1. sayinin 10 ile kiyaslanmasi ve 10 dan //büyük girilene kadar giris yapilmasi cout << "sayi2="; cin >> s2; cout<<"\n"; // klavyeden 2. sayinin girilmesi while (s2 <= 10) { cout << "sayi2="; cin >> s2; cout<<"\n"; } // 2. sayinin 10 ile kiyaslanmasi ve 10 dan //büyük girilene kadar giris yapilmasi cout << "sayi1= " << s1; cout<< " sayi2= " << s2; // 1. ve 2. sayinin ekrana yazdirilmasi return 0; // main bloguna bir tamsayi(integer) dönulmesi } // * main blogunun bitimi Dr. Mustafa T. Babagil 126

127 ÖDEV VERİLEN ALGORİTMA PROBLEMLERİNİN (ÖDEV SETİ 2) PROGRAMLARINI YAZINIZ. ÇALIŞTIRIP, KONTROL ETTİKTEN SONRA LABORATUVARDA DERS HOCANIZA BUNLARI TESLİM EDİNİZ Dr. Mustafa T. Babagil 127

128 ÖDEV2- ALGORİTMA1-AKIŞ DİAGRAMI!.. C++ PROGRAM KODU- 4 Gerekli ölçüleri girilen 100 dikdörtgenin alanını ve çevresini hesaplayınız. Ekrana boyutlar, alan ve çevreyi yazdırınız. #include<iostream.h> #include<conio.h> #include<stdio.h> int main() { // * main blogunun baslangici PROGRAM KODU 4, SAYFA 1/2 int sayac; // dikdörtgenleri sayacak olan sayac(tamsayi olmak zorunda) float boy,en; // boyutlarin tanimlanmasi (reel sayi olabilir) float alan,cevre; // hesaplanacak olanlar sayac=0; // baslangic olarak sifirlanmasi gerekli. Nedeni ise ileriki // adimlarda +1 yapilacagindan dolayi bilgisayarin kendince atamis // oldugu degeri sifira getirmektir Dr. Mustafa T. Babagil 128

129 while (sayac < 100)// 100 den kucuk oldugu sürece asagidakileri yapacak { // ** dongunun baslangici // ölçülerin girilmesi cout << " boy="; cin >> boy; cout <<"\n"; cout << " en="; cin >> en; cout <<"\n"; //hesaplamalarin yapilmasi ve sayacin bir arttirilmasi sayac=sayac+1; alan=boy*en; cevre=2*(boy+en); //bilgilerin ekrana yazdirilmasi cout << "boy="; cout << boy; cout <<"\n"; cout << "en="; cout << en; cout <<"\n"; cout << "alan="; cout << alan; cout <<"\n"; cout << "cevre="; cout << cevre; cout <<"\n"; } // ** dongunun sonu PROGRAM KODUNUN DEVAMI(4) SAYFA 2/2 return 0; // main bloguna tamsayi(integer) donulmesi } // * main blogunun bitimi Dr. Mustafa T. Babagil 129

130 ÖDEV2- ALGORİTMA2-AKIŞ DİAGRAMI!.. C++ PROGRAM KODU öğrenci için, Bilg213 dersinden, 2 arasınav(%30) ve 1 final(%40) sınav notunu klavyeden girerek, dersten geçilip geçilmediğini hesaplayınız ve ekrana notlar, ortalama ve başarılı olup olmadığını yazdırınız. #include<iostream.h> #include<conio.h> #include<stdio.h> int main() { // * main blogunun baslangici int sayac; // kac ögrenci oldugunu sayacak olan sayac(tamsayi olmak zorunda) int snv1,snv2,final; // sinavlar float ortalama; // hesaplanacak olan PROGRAM KODU 5, SAYFA 1/2 sayac=0; // baslangic olarak sifirlanmasi gerekli. Nedeni ise ileriki // adimlarda +1 yapilacagindan dolayi bilgisayarin kendince atamis // oldugu degeri sifira getirmektir Dr. Mustafa T. Babagil 130

131 while (sayac < 20) // 20 den kucuk oldugu sürece asagidakileri yapacak { // ** dongunun baslangici // sinav notlarinin girilmesi cout << "arasinav-1="; cin >> snv1; cout << "\n"; cout << "arasinav-2="; cin >> snv2; cout << "\n"; cout << "final="; cin >> final; cout << "\n"; // hesaplamalarin yapilmasi ve sayacin bir arttirilmasi sayac=sayac+1; ortalama=0.3*snv1+0.3*snv2+0.4*final; // hesaplanan ortalamanin 50 ile kiyaslanmasi ve ekrana sonuc çikartilmasi if (ortalama >= 50) cout << "Basarili!.. :)) "; else cout << "Basarisiz!.. :)) "; // ekrana sinav notlari ve ortalamanin eklenmesi cout << "arasinav-1= "; cout << snv1; cout << " arasinav-2= "; cout << snv2; cout << " final= "; cout << final; cout << " ortalama= "; cout << ortalama; cout << "\n \n"; // satir atlanmasi. } // ** dongunun sonu return 0; // main bloguna tamsayi(integer) donulmesi } // * main blogunun bitimi PROGRAM KODUNUN DEVAMI(5) SAYFA 2/ Dr. Mustafa T. Babagil 131

BİLGİSAYAR NEDİR. 20.10.2009 Dr. Mustafa T. Babagil 1

BİLGİSAYAR NEDİR. 20.10.2009 Dr. Mustafa T. Babagil 1 BİLGİSAYAR NEDİR Bilgisayar elektronik-digital bir alet olup, kendisine verilen ham bilgileri işlemcisi ve bellek yardımı ile işleyip (temelde 4 işlem yaptığını söyleyebiliriz), sonucunda kullanıcıya anlaşılır

Detaylı

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

HÜPP PYTHON I.HAFTA ALGORİTMA MANTIĞI, AKIŞ DİYAGRAMLARI VE PYTHON'A GİRİŞ HÜPP PYTHON I.HAFTA ALGORİTMA MANTIĞI, AKIŞ DİYAGRAMLARI VE PYTHON'A GİRİŞ PROGRAMLAMAYA GİRİŞ Herhangi bir program yazabilmemiz için öncelikle önümüzde bir problem, soru olması gerekir. Problemi belirledikten

Detaylı

Algoritmanın Hazırlanması

Algoritmanın Hazırlanması Algoritmanın Hazırlanması Algoritma, herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir. Çözüm için yapılması gereken işlemler hiçbir alternatif yoruma izin vermeksizin sözel olarak ifade

Detaylı

Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ DÖNEM SONU SINAVI GÜZ 2009-2010 13 Ocak 2010, Sınav Süresi: 120 dakika. İsim

Detaylı

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

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

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

ÖRNEK 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır: ALGORİTMANIN HAZIRLANMASI, herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir. Çözüm için yapılması gereken işlemler hiçbir alternatif yoruma izin vermeksizin sözel olarak ifade edilir.

Detaylı

Dr. Musa KILIÇ Öğretim Görevlisi http://kisi.deu.edu.tr/musa.kilic

Dr. Musa KILIÇ Öğretim Görevlisi http://kisi.deu.edu.tr/musa.kilic Dr. Musa KILIÇ Öğretim Görevlisi http://kisi.deu.edu.tr/musa.kilic BİLGİSAYAR DONANIM Donanım birimleri ekran, klavye, harddisk, ram YAZILIM Yazılımlar ise bilgisayarın donanım yapısını kullanılır hale

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

PROGRAMLAMAYA GİRİŞ DERS 2 PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

Algoritmalar ve Programlama. Algoritma

Algoritmalar ve Programlama. Algoritma Algoritmalar ve Programlama Algoritma Algoritma 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. Algoritma bir sorunun çözümü

Detaylı

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

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod) 2017-2018 BaharYarıyılı Balıkesir Üniversitesi Endüstri Mühendisliği Bölümü 3 BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod) Yrd. Doç. Dr. İbrahim Küçükkoç Web: ikucukkoc.baun.edu.tr

Detaylı

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

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

Ö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.

Ö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. Ö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. Çözüm 1: 1. Evden dışarıya çık 2. Otobüs durağına yürü 3. Durakta

Detaylı

BİLGİSAYAR PROGRAMLAMA MATLAB

BİLGİSAYAR PROGRAMLAMA MATLAB BİLGİSAYAR PROGRAMLAMA MATLAB Arş. Gör. Ahmet ARDAHANLI Kafkas Üniversitesi Mühendislik Fakültesi Ders Bilgileri Dersin Hocası: Araş. Gör. Ahmet Ardahanlı E-posta: ahmet.ardahanli@hotmail.com Oda: DZ-33

Detaylı

C++ Operatörler (Operators)

C++ Operatörler (Operators) C++ Operatörler (Operators) Konular Operatörler o Aritmetiksel (Matematiksel) Operatörler o Karşılaştırma Operatörleri o Mantıksal Operatörler o Atama Operatörleri o Bit Düzeyinde Operatörler o Özel Amaçlı

Detaylı

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA 6. HAFTA EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA Öğr. Gör. S. M. Fatih APAYDIN apaydin@beun.edu.tr EMYO Bülent Ecevit Üniversitesi Kdz. Ereğli Meslek Yüksekokulu ALGORİTMA ÖRNEK1: İki sayının toplamı

Detaylı

İÇ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

İÇ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 İÇ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 BÖLÜM-II ALGORİTMA I. GİRİŞ Bilgisayar dünyasında, insanın

Detaylı

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

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK Giriş-Tanımlamalar Program Nedir? Tanımlanmış bir problemi bilgisayar ortamında çözen ürüne program denir. Programlama Nedir? Tanımlanmış

Detaylı

İşletim Sistemi. BTEP205 - İşletim Sistemleri

İşletim Sistemi. BTEP205 - İşletim Sistemleri İşletim Sistemi 2 İşletim sistemi (Operating System-OS), bilgisayar kullanıcısı ile bilgisayarı oluşturan donanım arasındaki iletişimi sağlayan ve uygulama programlarını çalıştırmaktan sorumlu olan sistem

Detaylı

Pascal Programlama Dili

Pascal Programlama Dili Pascal Programlama Dili Öğr. Gör. Özgür ZEYDAN Z.K.Ü. Çevre Müh. Bölümü Pascal Programlarının Yapısı Program program_adı; Uses unitler type Özel veri tipleri Const Sabitler Label etiketler var değişken

Detaylı

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

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI C PROGRAMLAMA DİLİ YRD.DOÇ.DR. BUKET DOĞAN 1 PROGRAM - ALGORİTMA AKIŞ ŞEMASI Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Algoritma bir sorunun

Detaylı

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

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Veri Tipleri ve Özelilkleri Değişken Tanımlama Kuralları Değişken Veri Tipi Değiştirme (Type Casting) Örnek Kodlar Java Veri Tipleri ve Özelilkleri

Detaylı

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

İnternet Programcılığı Dersi 2.Dönem Ders Notu İnternet Programcılığı Dersi 2.Dönem Ders Notu DEĞİŞKEN TİPLERİ TAM SAYI (İNTEGER) VERİ TİPİ Negatif veya pozitif ondalık kısmı bulunmayan sayılardır. Örnek: $i=65; $x=345; ONDALIK(REAL)VERİ TİPİ Ondalıklı

Detaylı

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları Döngüler Döngü Komutları while Komutu Diğer Operatörler Bileşik Komut for Komutu do-while Komutu İçiçe Döngüler break ve continue Komutları while Komutu Döngü komutları komutların bir çok kez yeniden yürülmesini

Detaylı

İÇ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

İÇ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 İÇ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 UYGULAMA Örnek: Yandaki algoritmada; klavyeden 3 sayı

Detaylı

Ö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.

Ö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. Ö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. PROGRAM Soru1 PRINT Merhaba Dünya! ; 2. Klavyeden girilen negatif bir sayıyı

Detaylı

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

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Kullanıcıdan aldığı veri ya da bilgilerle kullanıcının isteği doğrultusunda işlem ve karşılaştırmalar yapabilen, veri ya da bilgileri sabit disk,

Detaylı

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

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 6. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Veri Tipleri Yük. Müh. Köksal Gündoğdu 2 Veri Tipleri Tam sayı ve Ondalık sayı veri tipleri Veri Tipi Alt Sınıf Üst Sınıf Duyarlı

Detaylı

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

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, C++ İÇİN UFAK HATIRLATMALAR Değişken adları bir harf ile başlamalıdır. (a-z, A-Z). Değişken adı numara içerebilir.

Detaylı

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA GİRİŞ Bilgisayarların önemli bir kullanım amacı, veri ve bilgilerin kullanılarak var olan belirli bir problemin çözülmeye çalışılmasıdır. Bunun için, bilgisayarlar

Detaylı

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI NOT: Çalışma kâğıtları Algoritma Tasarımı ve Excel olmak üzere 2 kısımdan oluşmakta ve sınavda her ikisinin de çalışılması gerekmektedir. ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI Bu çalışma sayfalarında

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

Temel Kavramlar-2. Aşağıda depolama aygıtlarının kapasitelerini inceleyebilirsiniz.

Temel Kavramlar-2. Aşağıda depolama aygıtlarının kapasitelerini inceleyebilirsiniz. Temel Kavramlar-2 Byte = 8 Bit in bir araya gelmesiyle oluşan bellektir. Bilgisayarın tanıdığı harf rakam ve özel karakterlerden her biri 1 byte lık yer kaplar. Yani her bir harfin 1 veya 0 dan oluşan

Detaylı

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

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ Değişkenler PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ C# Programlama Dili Giriş Değişkenler bir programlama dilinde verilerin depolanma alanlarını temsil eder. Tanımlanan her değişkene bellek bölgesinden bir alan

Detaylı

Algoritma ve Programlamaya Giriş

Algoritma ve Programlamaya Giriş Algoritma ve Programlamaya Giriş Algoritma Bir sorunu çözebilmek için gerekli olan sıralı ve mantıksal adımların tümüne Algoritma denir. Doğal dil ile yazılabilir. Fazlaca formal değildir. Bir algoritmada

Detaylı

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

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2 PROGRAMLAMA Bir problemin çözümü için belirli kurallar ve adımlar çerçevesinde bilgisayar ortamında hazırlanan komutlar dizisine programlama denir. Programlama Dili: Bir programın yazılabilmesi için kendine

Detaylı

Bilgisayarda Programlama. Temel Kavramlar

Bilgisayarda Programlama. Temel Kavramlar Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu

Detaylı

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

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar EM205 26/9/2014 Programlamaya giriş Algoritmalar Temel kavramlar Algoritmalar Amaçlar Algoritma kavramını öğrenmek, Algoritmaları ifade edebilmek, Temel matematiksel algoritmaları yazabilmek C programlama

Detaylı

for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) { ifadeler; }

for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) { ifadeler; } for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) ifadeler; Başlangıç değeri; koşul içinde tanımladığımız değişkene ilk değerin atanmasını sağlar. Koşul: Döngünün

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders02/ 1 Değişkenler, Sabitler ve Operatörler Değişkenler (variables) bellekte bilginin saklandığı gözlere verilen simgesel isimlerdir. Sabitler (constants)

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları SABİTLER VE DEĞİŞKENLER Değişken, verilerin bellekte geçici olarak kaydedilmesini ve gerektiğinde kullanılmasını sağlayan değerdir. Nesne tabanlı programlama dilinde değişken kullanımı diğer programlama

Detaylı

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir DİZİLER (ARRAYS) Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir değişken tanımlamak gereklidir. string gun1,

Detaylı

BİLGİSAYAR KULLANMA KURSU

BİLGİSAYAR KULLANMA KURSU 1 2 KURS MODÜLLERİ 1. BİLGİSAYAR KULLANIMI 3 1. Bilişim (Bilgi ve İletişim) Kavramı Bilişim, bilgi ve iletişim kelimelerinin bir arada kullanılmasıyla meydana gelmiştir. Bilişim, bilginin teknolojik araçlar

Detaylı

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Algoritma ve Programlamaya Giriş mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar İçerik Algoritma Akış Diyagramları Programlamada İşlemler o o o Matematiksel Karşılaştırma Mantıksal Programlama

Detaylı

Düşünelim? Günlük hayatta bilgisayar hangi alanlarda kullanılmaktadır? Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir?

Düşünelim? Günlük hayatta bilgisayar hangi alanlarda kullanılmaktadır? Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir? Başlangıç Düşünelim? Günlük hayatta bilgisayar hangi alanlarda kullanılmaktadır? Bilgisayarın farklı tip ve özellikte olmasının sebepleri neler olabilir? Bilgisayar Bilgisayar, kendisine verilen bilgiler

Detaylı

BİLG Dr. Mustafa T. Babagil 1

BİLG Dr. Mustafa T. Babagil 1 BİLG214 20.10.2009 Dr. Mustafa T. Babagil 1 Yapısal bilgi türlerinin tanımlanması. (C++ daki struct yapısı. ) Daha önce öğrenmiş olduğumuz bilgi tipleri char, int ve float v.b. değişkenler ile dizi (array)

Detaylı

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

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları BİLGİSAYAR PROGRAMLAMA Algoritma ve Akış Şemaları Algoritma tanımı Algoritma özellikleri Algoritma tasarımı Akış şemaları Dallanma simgeleri Döngü simgeleri Akış şeması tasarımı Akış şeması örnekleri Konu

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

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

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;

Detaylı

BİL-142 Bilgisayar Programlama II

BİL-142 Bilgisayar Programlama II BİL-142 Bilgisayar Programlama II (C/C++) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Kontrol Yapıları if Seçme Deyimi if... else Seçme Deyimi while Tekrar

Detaylı

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU Diziler Yrd.Doç.Dr.Bülent ÇOBANOĞLU Dizi (Array) Nedir? Bellekte sürekli yer kaplayan artarda sıralanmış aynı türden verilerin oluşturduğu kümeye dizi (array) denir. Dizi, çok fazla miktardaki tek tip

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB What is a computer??? Bilgisayar Programlama MATLAB Prof. Dr. İrfan KAYMAZ What Konular is a computer??? MATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a) Geliştirme ortamı b) Komut penceresi

Detaylı

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır stringh floath Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır 32 Sorgulama İfadesi - if Deyimi (5 Hafta) Bu deyim sorgulamanın tek basamakta yapılacağı yerlerde

Detaylı

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

GÖRSEL PROGRALAMA HAFTA 3 ALGORİTMA VE AKIŞ DİYAGRAMLARI GÖRSEL PROGRALAMA HAFTA 3 ALGORİTMA VE AKIŞ DİYAGRAMLARI DERS İÇERİĞİ Algoritma nedir? Akış Diyagramı nedir? Örnek Uygulama ALGORİTMA Algoritma sözcüğü Ebu Abdullah Muhammed İbn Musa el Harezmi adındaki

Detaylı

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Đ

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Đ 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Đ DERS 1 PROGRAM GELĐŞTĐRME PROGRAM GELĐŞTĐRME VERĐ ĐŞLEME(DATA

Detaylı

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

Programlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017 Programlama Temelleri Ders notları Öğr.Gör. Hüseyin Bilal MACİT 2017 Yazılımın yaşam döngüsü Algoritma sözcüğü; adını Ebu Abdullah Muhammed İbn Musa El Harezmi adındaki Müslüman Türk aliminden almıştır.

Detaylı

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

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ. KBÜ KARABÜK ÜNİVERSİTESİ TBP101 Programlama Temelleri «A LG O R İ T M A G E L İ Ş T İ R M E» Öğr. Gör. Dr. Abdullah ELEN Karabük Üniversitesi T.O.B.B. Teknik Bilimler Meslek Yüksekokulu Demir Çelik Kampüsü

Detaylı

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

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Algoritma ve Programlamaya Giriş Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Güncellenme tarihi: 13.03.2017 Yazılım nedir? Donanım birimlerini istenen işleme

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 4. DERS NOTU Konu: M-dosya yapısı ve Kontrol Yapıları Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU 1 M-Dosya Yapısı Bir senaryo dosyası (script file) özel bir görevi yerine getirmek

Detaylı

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié DERSİN WEB SİTESİ: http://nucleus.istanbul.edu.tr/~bilprog2/ DeğiĢkenler ve Data Türleri

Detaylı

Bilgisayar II Dersi. Bölüm-2

Bilgisayar II Dersi. Bölüm-2 Bilgisayar II Dersi Bölüm-2 Bilgisayar dünyasında, insanın yaşamı boyunca yaptığı plan kavramına eşdeğer algoritma kavramı vardır. Bilgisayardaki işlemin/işlemlerin gerçekleştirilmesinde izlenecek adımlara

Detaylı

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

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Algoritma ve Programlamaya Giriş Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü Güncellenme tarihi: 27.02.2017 Yazılım nedir? Donanım birimlerini istenen işleme

Detaylı

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

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

Koşullu Önermeler (if else)

Koşullu Önermeler (if else) Koşullu Önermeler (if ) Koşullu Önermeler Şu ana kadarki önermelerimiz birbiri ardına sıralı bir şekilde çalışıyorlar. Aşağıdaki durumlarda nasıl çalışacaklar peki? bir koşula bağlı olarak bir önermeyi

Detaylı

BİLG214. 20.10.2009 Dr. Mustafa T. Babagil 1

BİLG214. 20.10.2009 Dr. Mustafa T. Babagil 1 BİLG214 20.10.2009 Dr. Mustafa T. Babagil 1 Yapısal bilgi türlerinin tanımlanması. (C++ daki struct yapısı. ) Daha önce öğrenmiş olduğumuz bilgi tipleri char, int ve float v.b. değişkenler ile dizi (array)

Detaylı

C#(Sharp) Programlama Dili

C#(Sharp) Programlama Dili Değişkenler C#(Sharp) Programlama Dili Program yazarken her zaman sabit verilerle çalışmayız, çoğu zaman programımızda bir verinin kullanıcının davranışına göre değişmesi gerekir. Kullanıcıdan bir metin

Detaylı

Bilgisayar Temel kavramlar - Donanım -Yazılım Ufuk ÇAKIOĞLU

Bilgisayar Temel kavramlar - Donanım -Yazılım Ufuk ÇAKIOĞLU Bilgisayar Temel kavramlar - Donanım -Yazılım Ufuk ÇAKIOĞLU Bilgisayar Nedir? Bilgisayar; Kullanıcıdan aldığı bilgilerle mantıksal ve aritmetiksel işlemler yapabilen, Yaptığı işlemleri saklayabilen, Sakladığı

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ Yrd. Doç. Dr. Fatih TOSUNOĞLU Erzurum Teknik Üniversitesi Mühendislik Fakültesi İnşaat Mühendisliği Bölümü DERS NOTU 3 KONU: M-dosya yapısı ve Kontrol Yapıları M-Dosya Yapısı

Detaylı

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK MATLAB de Bilgisayar Programlama Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK disp komutu: Ekrana mesaj veya bir değişken değeri yazdırmak için kullanılan komuttur.

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Diziler Dizi Nedir? Dizilerin Bildirimi

Detaylı

Genel Programlama I

Genel Programlama I Genel Programlama I 30.09.2010 1 Genel Programlama I Ders İçeriği Programlamaya giriş ve algoritma kavramları Basit ve karmaşık veri tipleri Program kontrol komutları (Döngü ve şart yapıları) Diziler ve

Detaylı

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ ALGORİTMA VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr Ders Bilgileri BIL1202 Algoritma ve Programlamaya Giriş, (2+1 Kredi) Ders ile ilgili duyurular http://kergun.baun.edu.tr/

Detaylı

DEĞERLENDĐRME ÖDEV % 20 ARASINAV % 30 FĐNAL SINAVI % 50

DEĞERLENDĐRME ÖDEV % 20 ARASINAV % 30 FĐNAL SINAVI % 50 DEĞERLENDĐRME ÖDEV % 20 ARASINAV % 30 FĐNAL SINAVI % 50 Ders notlarını aşağıdaki adresten indirebilirsiniz http://www.ktu.edu.tr/insaat-dersnotlari Uygulama Asistanı Arş. Gör. Ufuk KANDĐL ALGORĐTMALAR

Detaylı

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

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1 BMT 101 Algoritma ve Programlama I 3. Hafta Yük. Müh. Köksal GÜNDOĞDU 1 Akış Diyagramları ve Sözde Kodlar Yük. Müh. Köksal GÜNDOĞDU 2 Sözde Kodlar (pseudo-code) Yük. Müh. Köksal GÜNDOĞDU 3 Sözde Kod Sözde

Detaylı

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma TEMEL BİLGİSAYAR BİLİMLERİ Programcılık, problem çözme ve algoritma oluşturma Programcılık, program çözme ve algoritma Program: Bilgisayara bir işlemi yaptırmak için yazılan komutlar dizisinin bütünü veya

Detaylı

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

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 11. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Fonksiyonlar Yük. Müh. Köksal Gündoğdu 2 C++ Hazır Fonksiyonlar Yük. Müh. Köksal Gündoğdu 3 C++ Hazır Fonksiyonlar 1. Matematiksel

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir. 1 Akış diyagramları

Detaylı

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

FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal) FBEB-512 C++ ile Nesne Tabanlı Programlama Güz 2009 (1. Hafta) (Yrd. Doç. Dr. Deniz Dal) Algoritma Geliştirme ve Akış Diyagramları BİLGİSAYARLA PROBLEM ÇÖZÜMÜ AŞAMALARI Analiz Algoritma Geliştirilmesi

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) { Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel

Detaylı

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

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI C programlama dilinde, diğer programlama dillerinde olduğu gibi, işlemler, ilk satırdan başlamak üzere sırayla çalışır. Program kontrol yapıları ise, programın

Detaylı

ALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları.

ALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları. Turbo C ++ 3.0 ALGORİTMALAR http://vaibhavweb.tripod.com/others/tc3.zip http://www.top4download.com/turbo-c- /aklqwuba.html 1 2 Bilgisayarda Problem Çözme Adımları Bilgisayarda Problem Çözme Adımları 1-Problemi

Detaylı

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler

3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.

Detaylı

BİLGİ TEKNOLOJİLERİ SMO103

BİLGİ TEKNOLOJİLERİ SMO103 BİLGİ TEKNOLOJİLERİ SMO103 2. HAFTA BİLGİSAYAR SİSTEMİ, BİLGİSAYARI OLUŞTURAN BİRİMLER VE ÇALIŞMA PRENSİPLERİ ANAKART, İŞLEMCİ VE BELLEKLER SABİT DİSKLER, EKRAN KARTLARI MONİTÖRLER VE DİĞER DONANIM BİRİMLERİ

Detaylı

Algoritma. 19. yüzyılda Persli matematikçi Al- Khowarizmi (Al-Harezmi) tarafından bulunmuş ve onun adında türetilmiştir.

Algoritma. 19. yüzyılda Persli matematikçi Al- Khowarizmi (Al-Harezmi) tarafından bulunmuş ve onun adında türetilmiştir. Algoritma 19. yüzyılda Persli matematikçi Al- Khowarizmi (Al-Harezmi) tarafından bulunmuş ve onun adında türetilmiştir. Algoritma Problem çözmek için geliştirilen Adım adım çözüm yöntemidir. Verilen bir

Detaylı

Bilişim Teknolojileri

Bilişim Teknolojileri Bilişim Teknolojileri Arş.Görev.Semih ÇALIŞKAN 1.Hafta İÇİNDEKİLER Bilgisayar nedir? Donanım nedir? Yazılım nedir? Giriş nedir? İşlem nedir? Bellek nedir? Çıkış nedir? BİLGİSAYAR NEDİR? Bilgisayar, kullanıcıdan

Detaylı

SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ

SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ Cemil Hoca Grubu PROJE ÖDEVİ ÖDEV TESLİM KURALLARI Ödevin son

Detaylı

PROGRAMLAMA DİLLERİ I

PROGRAMLAMA DİLLERİ I PROGRAMLAMA DİLLERİ I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Öğr. Gör. M. Mutlu YAPICI Hafta 1. Hafta 2. Hafta 3. Hafta 4. Hafta 5. Hafta 6. Hafta 7. Hafta

Detaylı

BİL1001 Bilgisayar Bilimlerine Giriş 1

BİL1001 Bilgisayar Bilimlerine Giriş 1 DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Tekrarlı Yapılar Algoritmanın belirli bir kısmının, belirli kere ya da belirli durumlar

Detaylı

Yrd. Doç. Dr. İlhan AYDIN 2012-2013 Güz Dönemi Fırat Üniversitesi Bilgisayar Mühendisliği Bölümü

Yrd. Doç. Dr. İlhan AYDIN 2012-2013 Güz Dönemi Fırat Üniversitesi Bilgisayar Mühendisliği Bölümü Yrd. Doç. Dr. İlhan AYDIN 2012-2013 Güz Dönemi Fırat Üniversitesi Bilgisayar Mühendisliği Bölümü Dersin amacı *Bilgisayarlara giriş, algoritma geliştirme, akış diyagramları *Programlamaya giriş, Java diliyle

Detaylı

Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır.

Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır. I. GİRİŞ Günümüz bilgi toplumunda bilgisayar, her alanda kendine yer edinmiş ve insana, bir çok işlemde yardımcı olarak büyük kolaylık sağlamaktadır. İnsanların elle yaptığı ve yapmakta olduğu bir çok

Detaylı

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta Ön bilgi: Özyineli fonksiyon tanımlanabilmeli. Dizilerin fonksiyon parametresi veya geri dönüş değeri olarak kullanımı bilinmeli. 1. Klavyeden girilen sayı n olmak üzere [1..n] aralığındaki sayıların toplamı

Detaylı

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

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN NESNE TABANLI PROGRAMLAMA Java Değişkenler ve Veri Tipleri Operatörler JAVA Java Java SUN bilgisayar şirketince

Detaylı

4- ALGORİTMA (ALGORITHM)

4- ALGORİTMA (ALGORITHM) (ALGORITHM) Algoritma: Bir Problemin çözümünün, günlük konuşma diliyle adım adım yazılmasıdır. Algoritma sözcüğü Ebu Abdullah Muhammed İbn Musa el Harezmi adındaki Türkistan'lı alimden kaynaklanır. Bu

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ C Programlama Dilinin Temelleri C Programlama Dili'ni popüler kılan önemli nedenler aşağıda listelenmiştir: C, güçlü ve esnek bir dildir. C ile işletim sistemi veya derleyici yazabilir,

Detaylı

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

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1 Ekrana Metin Yazdırmak Ekranda metin yazdırmak istendiğinde print komutu kullanılır. Kullanımı aşağıda verilmiştir. Parantez içinde

Detaylı

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ WEB TEKNOLOJİLERİ VISUAL STUDIO DA YENİ BİR PROJE OLUŞTURMA Visual Studio (VS) programını çalıştırdığımızda karşımıza boş bir ekran gelir. Yeni bir proje oluştururken File>New>Project yolu kullanılarak

Detaylı

Programlama Dilleri 1. Ders 4: Diziler

Programlama Dilleri 1. Ders 4: Diziler Programlama Dilleri 1 Ders 4: Diziler Genel Bakış Tanım Dizilerin tanımlanması Dizilere ilk değer verilmesi Yerel ve Global diziler Dizilerin birbirine atanması Diziler ile ilgili örnekler Çalışma soruları

Detaylı