Unsigned Char Veri Tipi

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

Download "Unsigned Char Veri Tipi"

Transkript

1 Unsigned Char Veri Tipi RAM bellekte 8 bit yani 1 byte yer kaplar.eğer 8 bitin hepsi sıfır ise onlu sayı sistemindeki karşılığı sıfır, hepsi bir ise onlu sayı sistemindeki karşılığı 255 tir. Yani bu veri tipi 0:255 arasında değerler alır > >255 Char kelimesinin önündeki unsigned kelimesi işaretsiz anlamına gelir. Bu da bu veri tipinin sadece pozitif (+) tamsayı barındırabileceği anlamına gelir. Eğer yazdığımız programda 0:255 arası küçük tamsayı değerler arasında çalışacaksak en mantıklı şey bu veri tipini kullanmaktır. Örneğin arası öğrenci notları ile çalışacaksak short veya int veri tipi yerine bu veri tipi kullanılmalıdır çünkü int RAM bellekte 4 byte yer kaplarken char veri tipi 1 byte yer kaplar. Sonuçta daha az bellek isteyen ve kaynakları daha iyi kullanan bir program yazmış oluruz. Kaynak: C++/C Fahrettin Erdinç Karar yapıları, (if else, switch) Karar Yapıları

2 Karar yapıları adından da anlaşılacağı gibi program akışında belirli şart(lar) doğrultusunda hangi kod bloklarının çalışacağına karar vermemize olanak tanır. C dili gibi bir çok dilde 2 farklı karar yapısı vardır. Biri if diğeri ise switch (veya case) ismiyle anılır. if Yapısı Bilgisayarda yapılan bütün mantıksal işlemler kaba bir temele dayanır. Şartlar sağlandığı halde yapılacak işlem belirlenir. Ve şartlar sağlandığında, bu işlemler yapılır. Şartların kontrol edilmesini, C (ve daha birçok) programlama dilinde if operatörünü kullanarak yaparız. if operatörünün genel kullanım yapısı şu şekildedir: [crayon-591fc /] Eğer if in altında birden çok komut varsa, ayraç işareti (veya küme parantezi) koymamız gerekir. Şayet if ten sonra, tek komut bulunuyorsa, ayraç koyup-koymamak size kalmıştır. Zorunluluğu yoktur. Örnek bir program yazalım. Bu programda kullanıcının klavyeden, bir tam sayı girsin. Ve bizde girilen sayı, 100 den büyükse, ekrana yazdıralım: [crayon-591fc b /] if-else Yapısı Bazı durumlarda, bir koşulun doğruluğuna göre sonuç yazdırmak yetmez. Aksi durumda da ne yapacağımızı belirtmek isteriz. Bunun için if-else yapısını kullanırız.

3 if-else yapısı şu şekildedir: [crayon-591fc116263a /] Önceki yazdığımız programı düşünelim; 100 den büyük olduğunda, ekrana çıktı alıyorduk. Bu programa bir özellik daha ekleyelim ve 100 den küçükse, bunu da söyleyen bir yapıyı oluşturalım: [crayon-591fc116263ad /] Örnekte gördüğünüz gibi, bir koşulun doğruluğunu program kontrol ediyor ve buna doğru olursa, bazı işlemler yapıyor. Şayet verilen koşul yanlışsa, o zaman daha başka bir işlem yapıyor. Ancak ikisini de yapması gibi bir durum söz konusu değil.aşağıdaki akış diyagramlarında (flowchart) her iki durumu da görebilirsiniz. Yapısı: if-else Yapısı: if İlişkisel (Relational) Operatörler Koşullu operatörlerde, koşulun doğruluğunu kontrol ederken kullandığımız ilişkisel operatörler, aşağıda verilmiştir:

4 < Küçüktür > Büyüktür == Eşittir <= Küçük eşittir >= Büyük eşittir!= Eşit değildir Birleşik (Compound) Operatörler Bazı durumlarda, kontrol edeceğimiz koşul, tek bir parametreye bağlı değildir. Örneğin, bir kişinin yaşının 65 den küçük olup olmadığına bakabiliriz. Ama 65 den küçük ve 18 yaşından büyük olup olmadığına karar vermek istersek, o zaman Birleşik/Birleştirici Operatörler i kullanmamız uygun olacaktır. Compound operator ler aşağıdaki gibidir: && and ve or veya! not tersi Bu operatörlerin mantıksal (logical) doğruluk tablosu da şu şekildedir: p q p&&q p q!p

5 İçiçe geçmiş (Nested) İfadeler if ile bir ifadeyi kontrol ediyor ve doğruysa, buna göre işlemler yapıyorduk. Bir de if else yapısı vardı. if else yapısında da, koşulu gene kontrol ediyor, doğruysa if bloğunun altında kalanları yapıyorduk; yanlışsa, else bloğunda olan kodlar işleme alınıyordu. Son derece basit bir mantık üzerine kurulmuş bu yapıyla, yapılamayacak kontrol yoktur. Ancak öyle durumlar vardır ki, if else yapısı yeterli verimliliği sunamaz. Diyelim ki, birden fazla kontrol yapmanız gereken bir durum oluştu. Hatta örnek vererek konuyu daha da somutlaştıralım. İstenilen bir programda, klavyeden size yaş bilgisi veriliyor. Siz de bu bilgiye göre, şayet yaş 18 den küçükse çocuk; yaş arasında genç; yaş arasında ortayaş diye bir mesaj bastırıyorsunuz. Basit bir program. Şimdi bunu sadece if yapısıyla kuruyor olsaydık, her seferinde yaşın uygun aralıklara düşüp düşmediğini kontrol eder ve ona göre sonucu ekrana bastırırdık. Ama bu son derece verimsiz bir yöntem olurdu. Çünkü zaten yaş bilgisinin genç olduğuna dair bir karar vermişsek, sonrasında tutup bunun yaşlı olup olmadığını kontrol etmenin bir esprisi olmayacaktır. Verilebilecek en kötü cevabı aşağıda bulabilirsiniz: [crayon-591fc116263bc /] Yukarda ki kodu if else kullanarak daha efektif hale getirebiliriz: [crayon-591fc116263ca /] Yukardaki program daha efektif bir yapı sunmuş olmasına rağmen, eğer kontrol ettiğimiz aralıkların sayısı çok fazla olsaydı, tam bir başbelası olacaktı! Çünkü if else içinde, bir başka if else bloğu ve onun içinde bir başkası bu böyle sürüp gidecekti. Kısacası performans olarak çok bir şey değişmese de, kodu yazan ve/veya okuyacak olan için tam bir eziyete dönüşecekti. İşte bu nedenlerle daha efektif yapılara

6 ihtiyaç duyuyoruz. if else if Merdiveni if else if merdiveni yukarda verdiğimiz örnekler için biçilmiş kaftandır. if else if merdiveni, doğru bir şey bulduğu zaman kontrolu orada keser ve diğer koşulları kontrol etmeden blok sonlandırılır. Aşağıda if else if yapısını ve akış diyagramını bulabilirsiniz: if else if Yapısı [crayon-591fc116263d /] if else if Akış Diyagramı

7 if else if ile söylenebilecek son bir şey sonunda ki else tir. else koymak zorunlu değildir. Ancak hiçbir koşula uymayan bir durumla karşılaştığınızda, else devreye girer. Örneğin yukarda anlatıp, kodunu vermiş olduğumuz programda, belirtilen yaş aralıklarında değer girilmezse, hiçbir şey ekrana bastırılmayacaktır. Çünkü programa tanınmayan yaş aralığında ne yapılacağı öğretilmemiştir. Şimdi bu durumu da içerecek şekilde, programamımızı if else if yapısıyla tekrar yazalım: [crayon-591fc116263e /] swicth case ifadesi switch case, if else if yapısına oldukça benzer bir ifadedir. Ancak aralarında iki fark vardır. Birincisi, switch case yapısında, aralık değeri girmezsiniz. Direkt olarak ifadelerin bir şeylere eşit olup olmadığına bakarsınız. İkinci farksa, switch case yapılarında, illa ki uygun koşulun sağlanmasıyla yapının kesilmek zorunda olmayışıdır. break komutu kullanmadığınız takdirde, diğer şartların içindeki işlemleri de yapma imkanınız olabilir. switch case en tepeden başlayarak şartları tek tek kontrol eder. Uygun şart yakalanırsa, bundan sonra ki ifadeleri kontrol etmeden doğru kabul eder. Ve şayet siz break koymamışsanız, eşitlik uygun olsun olmasın, alt tarafta kalan case lere ait komutlarda çalıştırılacaktır. if else if ise daha önce söylemiş olduğumuz gibi böyle değildir. Uygun koşul sağlandığında, yapı dışarsına çıkılır. switch case yapısında ki durumu, aşağıdaki tabloda görebilirsiniz: switch case Yapısı [crayon-591fc116263eb /] switch case Akış Diyagramı

8 Sanırım gözünüze biraz farklı gözüktü. Yapı olarak şimdiye kadar görmüş olduğunuz if else gibi gözükmese de, bir örnekten sonra arasında pek bir fark olmadığını göreceksiniz. Her komut sonunda koyduğum break komutu, zorunlu değildir ve o nedenle köşeli parantezle belirtilmiştir. break koyduğuz takdirde, uygun koşul sağlandıktan sonra, daha fazla kontrol yapılmayacak ve aynen if else if yapısında olduğu gibi program orada kesilecektir. Ama break koymazsanız, altında kalan bütün işlemler -bir daha ki break e kadar- yapılacaktır. Kodun sonunda gördüğünüz default komutu, if else if yapısında ki sonuncu else gibidir. Uygun hiçbir şart bulunamazsa, default komutu çalışır. Öğrendiğimiz bilginin pekişmesi için biraz pratik yapalım. Bir not değerlendirme sistemi olsun arası A, arası B, arası C, arası D, 59 ve altıysa F olsun. Eğer 100 den büyük veya negatif bir sayı girilirse, o

9 zaman program hatalı bir giriş yapıldığını konusunda bizleri uyarsın. Bunu şimdiye kadar öğrendiğiniz bilgilerle, if else if yapısını kullanarak rahatlıkla yanıtlayabilirsiniz. Ama şu an konumuz switch case olduğundan, cevabını öyle verelim: [crayon-591fc116263f /] Algoritmaya bakalım: Önce sayıyı alıyor ve 10 a bölüyoruz. Yani girilen not, 57 ise 5.7 sonucunu elde ediyoruz. Ancak iki tam sayının sonucu bir virgüllü sayı veremez, tıpkı işleme giren değişkenler gibi tam sayı olarak döner. Dolayısıyla bilgisayarın elde edeceği sonuç, 5.7 değil, sadece 5 tir. switch case yapısında koşullar yukardan başlayarak kontrol ediliyor. case 5 e gelindiğinde eşitlik sağlanıyor. Ama break konmadığı için, switch case ten çıkılmıyor. Ve altında kalan işlemlerde yapılıyor. Altında herhangi bir işlem veya break olmadığından case 0 a kadar bu böyle sürüyor. Ve case 0 da ekrana bir çıktı alıp switch case yapısı break ile sonlandırılmaktadır. Arttırma (Increment) ve azaltma (decrement) işlemleri Daha önceki derslerimizde, aritmetik işlemlerden bahsetmiştik. Bunların dışında yapabileceğimiz başka şeylerde bulunmaktadır. Bunlardan biri de, arttırma ve azaltma işlemleridir. Eğer i adında bir değişkenin değerini 1 arttırmak isterseniz, i = i + 1 olarak yazarsınız. Veya 1 azaltmak isterseniz, benzer şekilde i = i 1 de yazabilirsiniz. Arttırma ve azaltma işlemleri bu olayı daha basit bir forma sokmaktadır. i = i + 1 yazmak yerine i++ veya i = i 1 yazmak yerine i yazabilirsiniz. Arttırma ve azaltma işlemleri temelde iki çeşittir. Birinci yöntemde yukarda yazdığımız gibi, arttırma/azaltma sonradan yapılır. İkinci yöntemdeyse arttırma/azaltma ilk başta yapılır. Aşağıdaki örneklere bakalım.

10 [crayon-591fc c /] Yukardaki programı yazar ve çalıştırısanız elde edeceğiniz çıktı şu şekilde görünecektir: i = 11 ve j = 59 Çünkü arttırma ve azaltma işlemleri ekrana bastırmadan önce yapılmış ve i ile j nin değerleri değiştirilmiştir. Şimdi programı değiştirip şöyle yazalım: [crayon-591fc /] Bu sefer program çıktısı şöyle olacaktır: i = 10 ve j = 60 Farkettiğiniz üzere hiçbir değişiklik yapılmamış gibi duruyor. Aslında değişiklik yapıldı ve program sonlanmadan önce i 10 olurken, j de 59 oldu. Ama arttırma ve azaltma işlemleri printf komutu çalıştırıldıktan sonra yapıldığı için, biz bir değişiklik göremedik. Kısacası önce arttırma (pre-increment) veya önce azaltma (predecrement) kullandığınızda, ilgili komut satırında çalışacak ilk şey bu komutlar olur. Ancak sonra arttırma (post increment) veya sonra azaltma kullanırsanız, o zaman bu işlemlerin etkileri ilgili komut satırından sonra geçerli olacaktır. Aşağıdaki özel tabloya bakabilirsiniz: Form Tip İsim Açıklama i++ postfix post-increment İşlem sonrası arttırma ++i prefix pre-increment İşlem öncesi arttırma i postfix post-decrement İşlem sonrası azaltma i prefix pre-decrement İşlem öncesi azaltma Gelişmiş atama (Advanced Assignment) yöntemleri C de yazım kolaylığı amacıyla sunulmuş bir başka konu da,

11 gelişmiş aşama yöntemleridir. Biraz daha uzun yazacağınız kodu, kısaltmanıza yaramaktadır. degisken_1 = degisken_1 (operator) degisken_2 şeklinde yazacağınız ifadeleri, daha kısa yazabilmeniz için, degisken_1 (operator) = degisken_2 şeklinde ifade edebilirsiniz. Gelişmiş atamalarda sunulan genel formlar şu şekildedir: [crayon-591fc f /] Sanırım aşağıdaki örneklere bakarsanız, konuyu çok daha net anlayacaksınız: [crayon-591fc e /] Conditional Operator (? ) Conditional Operator, if-else ile tamamen aynı yapıdadır. Hiçbir farkı yoktur. Tek farkı koda bakıldığında anlaşılmasının biraz daha zor oluşudur. Bir de if else gibi yazıyla ifade edilmez. Onun yerine soru işareti (?) ve iki nokta üst üste ( : ) kullanarak yazarız. Aşağıdaki tabloda if else yapısıyla karşılaştırılmalı olarak, Conditional Operator verilmiştir: if-else Yapısı [crayon-591fc /] Conditional Operator (? ) Yapısı [crayon-591fc /] Conditional Operator (? ) Akış Diyagramı

12 Şimdi de aynı programı, hem if-else, hem de conditional operator kullanarak yazalım: [crayon-591fc /] Şimdi de aynı programı conditional operator kullanarak yazalım: [crayon-591fc f /] Program gördüğünüz gibi biraz daha kısaldı. Yazar: Oğuzhan YILMAZ Akış Şeması (Flowchart) Nedir

13 ? Bir problemle karşılaştığımızda çözümüne ulaşmak için zihnimizde bir takım hesaplar yaparız. Bu noktada yardımına başvurduğumuz bazı yöntemler vardır. Örneğin; Flowchart, bize yardımcı olacak tekniklerden biri. İster bilgisayarla ister bilgisayarsız bir sorunu çözmek için belirli bir yol vardır ve ancak bu yol ile sağlıklı bir çözüme ulaşılabilir. Çözüme ulaşırken kullanılan bu yola algoritma denir. Yani algoritma, mevcut bilgilerden istenilene erişme yöntemidir. Bilişim alanı için algoritmayı tanımlayacak olursak, verilerin bilgisayara hangi çevre biriminden girileceğinin, problemin nasıl çözüleceğinin, hangi basamaklardan geçirilerek sonuç alınacağının ve sonucunun nasıl/nereye yazılacağının sözel olarak ifade edilmesi diyebiliriz. Bahsettiğimiz gibi söz ve yazı ile anlatılan algoritmanın görsel olarak simge veya sembollerle ifade

14 edilmiş şekline Flowchart yani Akış diyagramları diyoruz. Flowchartların algoritmalardan farkı, adımların simgeler şeklinde kutular içine yazılmış olması ve adımlar arasındaki ilişkilerin oklar ile gösterilmesidir. Bu açıdan flowchartlar bir harita olarak düşünülebilir. Bu harita sayesinde mevcut algoritmanın anlaşılırlığı artarak bize process aşamasında yardımcı olur. Flowchart bir processin işlem basamaklarını diyagramsal gösterir. Böylece bir prosedürü başından sonuna kadar incelemeyi kolaylaştırır. Bir problemin çözüm aşamalarını kağıt üzerinde görmek hataları veya eksiklikleri daha rahat fark edip düzeltmeyi sağlar. Flowchartlar içerik ve biçimlerine göre genel olarak 3 grupta sınıflandırılabilirler; 1- Doğrusal Akış Diyagramları: İş akışları input-processingoutput biçiminde olan diyagramlardır. 2. Mantıksal Akış Diyagramları: Geniş ölçüde mantıksal kararları içeren diyagramlardır.

15 3. Döngüsel Akış Diyagramları: Sorunun çözümü için, çözümde yer alan herhangi bir adım veya aşamanın birden fazla kullanıldığı diyagramlardır. KAYNAK: Yazar : Berat DAĞTEKİN

16 Değişken kavramı, veri türleri, (int, float, char ) DEĞİŞKEN VE SABİTLER Çoğu programda çıkış değerleri üretilmeden önce bir dizi hesaplamalar yapılır. Bu hesaplamalar esnasında verilerin geçici olarak saklanacağı alanların olması gerekir. C dilinde bu saklama alanlarına değişkenler denir. Veriler program içerisinde değişken ve sabit biçimlerinde kaydedilir. Değişkenler değerleri değiştirilebilen verilerdir. Sabitler ise değişkenlerin aksine atama yapıldıktan sonra değeri değiştirilemeyen verilerdir. Değişken ve sabitler faklı boyut ve biçimde program belleğine kaydedilirler. Veri çeşitleri ve Veri Çeşidi Değiştiricileri C de aşağıda gösterilen 5 temel veri çeşidi vardır: char : Karakter int : Tamsayı float : Kayan noktalı sayı double : Çift duyarlıklı kayan noktalı sayı void : Değersiz Veri çeşidi değiştiricilerini kullandığınız zaman, printf() ve scanf() fonksiyonları farklı format tanımlayıcıları kullanır. Yukarıdaki tabloda gösterilen bütün değişken türlerine göre printf() ve scanf() fonksiyonları ile kullanılan format tanımlayıcıları aşağıdaki tabloda gösterilmektedir:

17 Burada bahsi geçen format tanımlayıcılarının nasıl kullanıldığını anlamak için konumuza devam etmeden önce printf() ve scanf() fonksiyonlarına kısaca değinelim. printf() Fonksiyonu printf() fonksiyonu C nin genel amaçlı çıktı alma fonksiyonudur. Başka bir deyişle, ekrana istediğimiz verileri yazmak içim kullanılan bir fonksiyondur. printf() fonksiyonu karakter dizisinden oluşan tek bir değeri veya farklı değişken ve sabitlerden oluşan birden fazla değeri ekrana yazdırmak için kullanılabilir. Tek bir karakter dizisini ekrana yazdırmak için aşağıdaki yapı kullanılır: printf( Karakter-Dizisi ); Herhangi bir fonksiyona aktarılan değere argüman adı verilir. Biz bir fonksiyona argüman aktardığımızda, fonksiyonunun bu argüman ile geçirilen değeri kullanarak gerekli işlemi yapmasını istemiş oluruz. Buradaki argüman tırnak işaretleri ( ) arasında yer alan karakter dizisidir. C de tırnak işaretleri arasında yer alan bir veya daha fazla karaktere Karakter Dizisi (String) adı verilir. [crayon-591fc /] Yukarıdaki örnek program derlenip çalıştırıldığında aşağıdaki satırı ekrana yazar:

18 makucoders Şimdi de, farklı değişken ve sabitlerden oluşan bir veya birden fazla değeri ekrana yazdırmak için printf() fonksiyonunun çalışmasını bir örnek üzerinde incelemeye çalışalım: printf() fonksiyonunu kullanarak her veri türündeki değişken ve sabit değerlerini ekrana yazdırabiliriz. Aşağıdaki işlem satırı, bir int sabit değeri olan 25 sayısını ekrana yazar: [crayon-591fc116281a /] Yukarıdaki işlem satırı ekrana aşağıdaki satırı yazar: Sayinin değeri : 25 Dikkat ederseniz, burada printf() fonksiyonu içinde yukarıda format tanımlayıcısı olarak verdiğimiz %d ifadesini kullandık. Bir önceki örneğimizde printf() fonksiyonu sadece ( ) işaretleri içinde kalan karakter dizisini ekrana yazmıştı. Ancak bu defa, printf() fonksiyonunun bir virgül ile ayrılmış 2 argümanı vardır. Bunlardan biri ( ) işaretleri arasında yer alan karakter dizisi, diğeri ise bir int sabiti olan 25 sayısıdır. printf() fonksiyonu ilk argüman içinde yer alan normal karakterleri ekrana yazar, format tanımlayıcısının yerine de ikinci argüman olan değeri olan 25 sayısını yazar. printf() fonksiyonunun ilk argümanı ( ) işaretleriyle sınırlandırılmış olan bir karakter dizisidir. Bu karakter dizisinin içinde hem normal karakterler hem de (%) işareti ile başlayan Format Tanımlayıcıları adı verilen ifadeler yer alabilir. printf() fonksiyonu ( ) işaretleri arasında yer alan normal karakterleri sıra ile ekrana yazar. Format tanımlayıcıları ile karşılaştığında ise ekrana farklı bir veri yazacağını ve bu verinin printf() fonksiyonu çağrılırken karakter dizisinden sonra tanımlanmış olan argüman değerlerinden alınacağını anlar. Konunun daha kolay anlaşılması için aşağıda yer alan örneği incelemeye çalışalım:

19 [crayon-591fc116281ab /] Yukarıdaki program ekrana aşağıdaki satırı yazar: YazilimaGiris.com a hos geldiniz. 1,2,3 Burada printf() fonksiyonu için 3 argüman tanımlanmıştır. printf() fonksiyonu ( ) işaretleri içindeki karakter dizisini taramaya başlar. İlk %s format tanımlayıcısı ile karşılaştığında buraya bir karakter dizisinin geleceğini anlar ve karakter dizisinden sonraki ilk argüman değerini okuyarak (YazilimaGiris.com) ekrana yazar. Sonra ikinci format tanımlayıcısıyla karşılaşana kadar karakter dizisi içindeki normal karakterleri ekrana yazar (öğrenirken). İlk %d format tanımlayıcısı ile karşılaştığında yine buraya bir int sabitinin geleceğini anlar ve karakter dizisinden sonraki ikinci argüman değerini okuyarak (2) ekrana yazar. Daha sonra, karakter dizisinde yer alan bölümü ( farklı kitap ve ) ekrana yazar. İkinci %d format tanımlayıcısı ile karşılaştığında yine buraya bir int sabitinin geleceğini anlar ve karakter dizisinden sonraki üçüncü argüman değerini okuyarak (3) ekrana yazar. Son olarak, karakter dizisinin geriye kalan bölümünü ekrana yazar ( farklı derleyici kullandım). printf() fonksiyonunda kullanılan format tanımlayıcıları yerine sadece sabit değerler değil aynı zamanda değişkenlerin değerleri de konabilir. Yukarıdaki örneğin 2 argümanını sabit değerler yerine değişkenler yoluyla aktaralım: [crayon-591fc116281b /] Yukarıdaki program ekrana aşağıdaki satırı yazar: YazilimaGiris.com a hos geldiniz 10, 20 Program bu defa format tanımlayıcıları yerine koyacağı değerleri değişkenlerden alır. Farklı örneklerle konuyu pekiştirmeye çalışalım: [crayon-591fc116281bd /]

20 Yukarıdaki örnekte, program aşağıdaki satırı ekran yazar: sayi1 değişkeninin değeri 100 dir. Program, 1 sayısı ile gösterilen işlem satırında sayi1 adlı int bir değişken oluşturur. 2 sayısı ile gösterilen işlem satırında id1 değişkenine 100 sayısını atar. printf() fonksiyonu ise değişken değerini ekrana yazar. [crayon-591fc116281c /] Yukarıdaki örnekte, program aşağıdaki satırı ekrana yazar: 25 ve M Program sayi1 adlı int ve harf1 adlı char değişkenlerine atadığı 25 ve C sabit değerlerini printf() fonksiyonu ile ekrana yazar. [crayon-591fc116281ce /] Yukarıdaki örnekte, program aşağıdaki satırı ekrana yazar: A dir Program, iki adet int, bir adet char ve bir adet float değişken olmak üzere toplam dört adet değişken bildirimi yapar. Sonra değişkenlere atanan değerleri printf() fonksiyonu ile ekrana yazar. Scanf() Fonksiyonu Şimdi de klavyeden giriş yapılan değeri almak için kullandığımız scanf() fonksiyonuna kısaca değinelim. Klavyeden girilen sayısal bir değeri bellekteki bir değişkene atamak için scanf() standart kütüphane fonksiyonunu kullanabiliriz. Daha ilerideki bölümlerde görülebileceği gibi scanf() fonksiyonunun çok geniş kullanım alanı olmasına rağmen burada sadece klavyeden girilen değerlerin bir değişkene

21 atanması için kullanılmasını inceleyeceğiz. scanf() fonksiyonunu kullanarak klavyeden girilen bir int değeri bellekte yer alan bir değişkene atamak için aşağıda gösterilen genel yapıyı kullanabiliriz: scanf( %d, &değişken-adı); scanf() fonsiyonunun kullanılması printf() fonksiyonuna benzer. Yapı olarak tek fark ikinci argüman olarak verilen değişkenin başına (&) işaretini almış olmasıdır. Bu işaretin neden kullanıldığı daha sonra ele alınacaktır. Yukarıdaki satırda scanf() fonksiyonu için 2 argümandan ilki ( ) işaretleri içinde yer alan bir karakter dizisidir. Bu dizi scanf() fonksiyonu için kullanılan format tanımlayıcılarından oluşmaktadır. scanf() fonksiyonu %d format tanımlayıcısını gördüğünde klavyeden bir int değerin okunacağını anlar. Bunun üzerine hemen ikinci argümanı olan değişken adına bakarak, klavyeden okuyacağı değeri atayacağı değişken adını tespit etmiş olur. Siz scanf() fonksiyonunu kullanarak klavyeden bir sayı okutmak istediğinizde, yazdığınız sayı bir rakamdan fazla olabileceğinden, siz ENTER tuşuna basana kadar scanf() fonksiyonu işlem yapmadan bekler. [crayon-591fc116281da /] Yukarıdaki ilk işlem satırında, sayi1 adlı bir int değişken bildirimi yapılmakta, ikinci işlem satırında ise klavyeden girilen int değer sayi1 değişkenine atanmaktadır. Şimdi, bu özelliği bir örnek üzerinde incelemeye çalışalım: [crayon-591fc116281e /] Yukarıdaki örnekte, program klavyeden bir int değer girmenizi ister. Girdiğiniz değeri sayi1 adlı int değişkene atar. Daha sonra değişken değerini ekrana yazar. scanf() fonksiyonunu kullanarak klavyeden girilen float bir değeri bellekteki bir değişkene atamak için aşağıda gösterilen genel yapıyı kullanabilirsiniz: scanf( %f, &değişken-adı);

22 Yukarıdaki satırda yer alan %f format tanımlayıcısı float sayılar için kullanılmaktadır. double sayılar için kullanılan format tanımlayıcısı ise %lf dir. Şimdi vereceğimiz örneklerle öğrendiklerimizi pekiştirelim: [crayon-591fc116281ea /] Yukarıdaki örnekte, program kullanıcıdan bir int ve bir float değeri klavyeden girmenizi ister. Sonra, girilen her iki değeri ekrana yazar. İlk printf() fonksiyon satırında yer alan \n ifadesi dikkatinizi çekmiş olabilir. Bu ifade program içinden bir sonraki satıra geçme olanağı sağlar. [crayon-591fc116281f /] Yukarıdaki örnekte, program kullanıcıdan 2 adet int ve 2 adet float sayı değerini klavyeden girmenizi ister. Sonra int değerlerin çarpımını ve float değerlerin toplamını ekrana yazar. [crayon-591fc116281fb /] Yukarıdaki örnekte, program sizden 2 int değer girmenizi ister ve bu değerlerin karelerinin toplamını ekrana yazar. Yazar: Oğuzhan YILMAZ C Programlamaya giriş için yol haritası C programlamaya başlangıç için tavsiye edilen yol haritası aşağıdaki şekilde verilmiştir. 1. Temel kavramlar, 2. Akış şeması, (flowchart), 3. Değişken kavramı, veri türleri, (int, float, char ), 4. Operatörler (mantıksal, aritmetik), 5. Karar yapıları, (if else, switch),

23 6. Döngü yapıları, (for, do while, while), 7. Diziler (arrays), 8. Fonksiyonlar (fonksiyon tanımlama, çağırma), 9. Kütüphane kullanımı (stdio.h, stdlib.h), 10. Dosya işlemleri (dosya oluşturma, okuma, yazma, silme), 11. String ve karakter fonksiyonları, 12. Tarih ve zaman fonksiyonları, 13. Veri modelleri, 14. Hata ayıklama (debug), 15. Program örnekleri. Artık yıl hesabı yapan program Bu C kodu artık yıl hesabı yapmaktadır. [crayon-591fc11628e8e /] C Diline Giriş C Tarihi AT&T Bell laboratuvarlarında, Ken Thompson ve Dennis Ritchie tarafından UNIX İşletim Sistemi ni geliştirebilmek amacıyla B dilinden türetilmiş yapısal bir programlama dilidir. Geliştirilme tarihi 1972 olmasına rağmen yayılıp yaygınlaşması Brian Kernighan ve Dennis M. Ritchie tarafından

24 yayımlanan C Programlama Dili kitabından sonra hızlanmıştır. Günümüzde neredeyse tüm işletim sistemlerinin (Microsoft Windows, GNU/Linux, *BSD, Minix) yapımında %95 lere varan oranda kullanılmış, halen daha sistem, sürücü yazılımı, işletim sistemi modülleri ve hız gereken her yerde kullanılan oldukça yaygın ve sınırları belirsiz oldukça keskin bir dildir. Keskinliği, programcıya sonsuz özgürlüğün yanında çok büyük hatalar yapabilme olanağı sağlamasıdır. Programlamanın gelişim süreciyle beraber programlamanın karmaşıklaşması, gereksinimlerin artması ile uygulama programlarında nesne yönelimliliğin ortaya çıkmasından sonra C programcıları büyük ölçüde nesne yönelimliliği destekleyen C++ diline geçmişlerdir. C Diline Giriş C diline geçmeden önce algoritma ve akış şemalarını tam anlamıyla bilmemiz gerekir. Öncelikle C diline başlarken ilk ihtiyacımız olan şey editörlerdir. Tavsiye edilen editörler ; Windows için; -DEV C/C++ -Codeblocks -Visual Studio Linux için; -Netbeans -Codeblocks -Geany Bahsedilen editörlerden işletim sisteminize uygun olanını seçip yükleyiniz. Açıkçası Windows için DEV C/C++ ya da Linux için Netbeans ı tercih ederim.

25 İlk başta kütüphanelerden başlayalım ve programlama dünyasına kocaman bir merhaba diyerek ilk programımızı yazalım. [crayon-591fc /] Hadi yaptığımız programı ele alalım. İlk başta kullanacağımız kütüphanelerden bahsedelim. Bu yazmış olduğumuz programda stdio.h kütüphanesi kullandık. Bu kütüphane standart giriş çıkış fonksiyonları için kullanılır. Eğer kütüphane yazmadan programı derlemeye çalışırsak programımız kütüphanemiz olmadığı için hata verecektir bu yüzden tanımlamamız gerekecektir. Yazacağımız programlarda int main() adında ana bir fonksiyon tanımlarız ve programımızı bu fonksiyonun içerisine yazarız. İlerideki fonksiyonlar dersimiz de bu konuyu daha detaylı ele alacağız. int main() ana fonksiyonumuzu tanımlarken { } programımızın başlangıç ve bitişine koymamız gerekir aksi halde programımız çalışmayacaktır. Ana fonksiyonumuzu tanımladıktan sonra printf komutu kullanıp ekrana Merhaba Dünya çıkışı verecektir ve return(0) komutu ile programımız sonlanacaktır. C de komutların sonuna ( ; ) işareti getirilir. Ancak bu konu hakkında istisnalar da vardır.bu istisnalardan bazıları; bazı döngü yapıları, karar yapısı vs. İlk programımızda dikkat etmemiz gereken önemli noktalar vardır. Şöyle ki noktalı virgül( ; ), süslü parantez( { } ), kütüphane ekleme gibi durumları unutmamamız gerekir. C de yazacağımız programın ihtiyacı doğrultusunda kütüphane seçimi yapılır. Öncelikle C de kütüphane tanımlarken çalışmamızın başına #include<kütüphane ismi> yazılır ve tanımlanır. Başlarken genellikle kullanacağımız kütüphanelerden bahsedeyim;

26 stdio.h conio.h math.h stdlib.h graphics.h dos.h Standart giriş/çıkış fonksiyonları DOS destekli giriş/çıkış fonksiyonları Matematiksel fonksiyonlar Dönüşüm sıralama fonksiyonları Grafik fonksiyonları DOS Fonksiyonları ctype.h Karakter dönüşüm ve sınıflandırma string.h Alfa sayısal Genellikle bu kütüphaneler üzerinden işlemler yapacağız. İlerideki derslerde yavaş yavaş ilk basit hesap makinesini operatörler dersimizde yapacağız. Sonraki derse görüşmek üzere Yazar : Ömer Can Eskicioğlu Algoritma ve Akış Şemaları Algoritma : Bir sorunu çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı düzenli mantıksal adımlara algoritma denir. Algoritma aslında bir işi optimum düzeye minimize ederek en iyi şekilde çalıştırmayıda amaçlar. Algoritmanın başlangıcı ve bitişi belli olmalıdır. Açık ve anlaşılır olmalıdır. Günlük yaşantımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Örneğin ; Algoritma Örneği 1 :

27 /* Otobüse binme algoritması tasarlayınız. (BURDUR için) */ A1: Başla A2: Evden çıkmak için hazırlan A3: Evden çık A4: Durağa yürü A5: Durakta otobüsü bekle A6: Eğer otobüs durağa geldiyse bin değilse beklemeye devam et A7: Eğer kartında para var ise kartını okut değilse ücreti nakit olarak öde A8: Eğer etrafta boş yer varsa otur değilse ayakta bekle A9: Eğer otobüs durağa yaklaşırsa düğmeye bas değilse bekle A10: Eğer otobüs gideceğin durağa vardıysa in değilse ineceğin yere gitmesini bekle A11: Otobüsten düğmeye bastığın kapıdan in A12: Bitir Algoritma Örneği 2 : /* iki sayının toplamını yapan algoritmayı tasarlayınız. */ A1: Başla A2: a,b,sonuc Oku A3: sonuc = a + b ; A4: sonuc u yaz A5: Bitir Algoritma Örneği 3 :

28 /*Dışarıdan okunan iki sayıdan büyük olanının tek sayı mı, çift sayı mı olduğunu belirleyen bir işin algoritmasını tasarlayınız*/ A1:Başla A2:a,b Oku A3:Eğer a>b ise A4 git, Değilse A5 ya git A4:Eğer a%2==0 ise cift yaz, Değilse tek yaz A5:Eğer b%2==0 ise cift yaz, Değilse tek yaz A6:Bitir Algoritma Örneği 4 : /* Hesap makinesi algoritmasını tasarlayınız. */ A1: Başla A2: a,b,toplama,cikarma,bolme,carpma Oku A3: toplama = a + b A4: cikarma = a b A5: carpma = a * b A6: bolme = a / b A7: toplama Yaz A8: cikarma Yaz A9: carpma Yaz A10: bolme Yaz A11: Bitir

29 Algoritma Kriterleri: Etkinlik Anlaşılır, basit, kesin olmalı Sonluluk Başla bitiş noktası olmalı Kesinlik Aynı veri için her yeni çalıştırımda aynı sonucu vermeli Giriş/Çıkış Giriş / Çıkış değerleri olmalı Başarım/Performans Çalışma süresi az başarım ve performansı yüksek olmalı Algoritma 2 şekilde ifade edilir; Metin olarak Pseudo Code (Kaba Kod) olarak Sonuç olarak algoritmayı hayatımızın bir parçası olarak kullanmaktayız. Yaptığımız işler düzenli ve sıralı olarak mantık çerçevesinde yapmaktayız. Algoritmayı da tasarlarken amacınız basit, anlaşılabilir, düzenli, sıralı bir algoritma yapmaktır. Akış Şeması Akış şemaları algoritmalarda verilen her adımın görsel olarak anlatılması amacıyla kullanılan yöntemlerden birisidir. Başla : Programın nereden başlayacağını belirtir. Dur/Bitir : Programın nerede sonlanacağını gösterir. Giriş Simgeleri : Klavye, kart okuyucu gibi birimler üzerinden program içerisine veri/bilgi aktarmak için kullanılır. Çeşitli giriş simgeleri vardır.

30 Çıkış Simgeleri : Ekranda göstermek, yazıcıdan kağıda çıkış almak gibi işlemlerde kullanılır. İşlem Simgesi : Dikdörtgen şeklindeki simgenin içine yapılacak işlemler yazılır. Karşılaştırma Simgesi : Koşullu ifade simgesidir. Koşula göre farklı işlem yapılacağı zaman kullanılır. Simgenin içine koşul yazılır ve evet ve hayır olmak üzere 2 yöne dallanır. Döngü Simgesi : Belirli bir grup işin birden çok sayıda yinelenmesi gerektiğinde kullanılır. Yapılacak işlem simgenin içine yazılır. Fonksiyon Çağırma : Daha önce yazılmış algoritmaların, o andaki algoritmanın içerisine koyulmadan kullanılması için kullanılır. Dosyayı Saklama Simgeleri : Elde edilen bilgi cd, bellek, harddisk gibi saklama birimlerinde saklanması veya daha önceden saklanmış birimleri okunması için kullanılır. Akış Yönü : Bir işlem bittikten sonra program akışının nereye dallanacağını belirtir. Bağlantı Simgeleri : Akış şema çizimi yapılırken sayfaya sığmazsa çizimin başka bir yerden devam edilmesi için kullanılır.

31 İlk C dersimizde görüşmek üzere Yazar : Ömer Can Eskicioğlu C Dilinde karar yapıları lsjf hkasdfj kasjdh kajshd fjash kfjah kdfjh akdsh fasdf asdlfj khlasdkf lask dfjlaksdfl klasdf [crayon-591fc11629c /]

32 Örnek Metin Kod yazımı Buraya video gelecek Buraya kod eklemek istesek ne olur acaba? [crayon-591fc1162a3d /] C kodları buradan devam ediyor.. [crayon-591fc1162a3e /]

Karar yapıları, (if else, switch)

Karar yapıları, (if else, switch) Karar yapıları, (if else, switch) Karar Yapıları Karar yapıları adından da anlaşılacağı gibi program akışında belirli şart(lar) doğrultusunda hangi kod bloklarının çalışacağına karar vermemize olanak tanır.

Detaylı

Karar yapıları, (if else,

Karar yapıları, (if else, Switch Case Yapısı Bir programda çok sayıda koşul kontrolü ve bunların sonucuna göre gerçekleştirilmesi gereken işlemler varsa, ifelse yapıları ile akışın izlenmesi zorlaşabilir. Böyle durumlar genellikle

Detaylı

Akış Şeması (Flowchart) nedir? C Programlamaya giriş için yol haritası

Akış Şeması (Flowchart) nedir? C Programlamaya giriş için yol haritası Akış Şeması (Flowchart) nedir? Akış Şeması (Flowchart) nedir? Algoritma nedir? Algoritma nedir? C Programlamaya giriş için yol haritası C programlamaya başlangıç için tavsiye edilen yol haritası aşağıdaki

Detaylı

Algoritma ve Akış Şemaları

Algoritma ve Akış Şemaları Algoritma ve Akış Şemaları Algoritma : Bir sorunu çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı düzenli mantıksal adımlara algoritma denir. Algoritma aslında bir işi optimum düzeye minimize

Detaylı

C++ Dilinde Bazı Temel Algoritmalar

C++ Dilinde Bazı Temel Algoritmalar C++ Dilinde Bazı Temel Algoritmalar Bazı eşyalar için her eve lazım derler. Az sonra bahsedeceğimiz algoritmalar da her kodcuya lazım cinsten. Sayının tek mi çift mi olduğuna karar veren programdan, çarpım

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

Diziler (Arrays) Çok Boyutlu Diziler Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.

Detaylı

Unsigned Char Veri Tipi

Unsigned Char Veri Tipi Unsigned Char Veri Tipi RAM bellekte 8 bit yani 1 byte yer kaplar.eğer 8 bitin hepsi sıfır ise onlu sayı sistemindeki karşılığı sıfır, hepsi bir ise onlu sayı sistemindeki karşılığı 255 tir. Yani bu veri

Detaylı

Unsigned Char Veri Tipi

Unsigned Char Veri Tipi Unsigned Char Veri Tipi RAM bellekte 8 bit yani 1 byte yer kaplar.eğer 8 bitin hepsi sıfır ise onlu sayı sistemindeki karşılığı sıfır, hepsi bir ise onlu sayı sistemindeki karşılığı 255 tir. Yani bu veri

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ı

C de Detaylı Üs Alma Programı

C de Detaylı Üs Alma Programı C de Detaylı Üs Alma Programı Bu uygulama yazısında C de pow() fonksiyonunu kullanmadan üs hesabı yapan programı yazmaya çalıştım. Başta tanımladığım float tipinde 2 fonksiyon sayesinde + lı ve li üs değerleriyle

Detaylı

Genel Programlama II

Genel Programlama II Genel Programlama II 15.02.2011 1 Genel Programlama Tekrar Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Önceki bölümde bir problemin çözümü ile

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ı

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ı

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ı

Döngü yapıları, (for, do while, while),

Döngü yapıları, (for, do while, while), Döngü yapıları, (for, do while, while), Döngü Kavramı Programlama konusunda -hangi dil olursa olsun- en kritik yapılardan biri döngülerdir. Döngüler, bir işi, belirlediğiniz sayıda yapan kod blokları olarak

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ı

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ı

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş C DİLİNE GİRİŞ Prof. Dr. Necmettin Kaya C PROGRAMLAMA DİLİ ÖZELLİKLERİ C programlama dili, 1972 yılında Bell Labortuvarı nda Dennis Ritchie tarafından geliştirilmiştir.

Detaylı

C PROGRAMLAMA DİLİNE GİRİŞ

C PROGRAMLAMA DİLİNE GİRİŞ C PROGRAMLAMA DİLİNE GİRİŞ C Dilinin Tarihçesi 1972 de Dennis Ritchie tarafından AT&T Bell Laboratuarlarında B dilinden geliştirildi. C dili konusundaki ilk kitap 1978 de Dennis Ritchie ve Brain Kernighan

Detaylı

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN

BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN BASİT C PROGRAMLARI Öğr.Gör.Dr. Mahmut YALÇIN Basit C Programları: Bir Metni Yazdırmak #include /* program çalışmaya main fonksiyonundan başlar*/ int main() { printf( "C diline hoşgeldiniz!\n"

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ı

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ı

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

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr C Program Akış Kontrol Yapıları Kontrol Komutları Normal şartlarda C dilinde bir programın çalışması, komutların

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ı

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ı

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ı

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ı

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 Koşul Karşılaştırma Operatörleri Mantıksal

Detaylı

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

if (ad == Sabri) Console.WriteLine(Merhaba Sabri. Ne zamandır gözükmüyodun...); Koşul İfadeleri ve Akış Kontrolü Koşul ifadeleri ve akış kontrolleri programlama dillerinde her zaman en önemli yeri tutmaktadır. Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir

Detaylı

Bölüm 2 - C ile Programlamaya Giriş

Bölüm 2 - C ile Programlamaya Giriş 1 Bölüm 2 - C ile Programlamaya Giriş Başlıklar 2.1 Giriş 2.2 Basit C Programları: Bir Metni Yazdırmak 2.3 Basit C Programları: İki Tam Sayıyı Toplamak 2.4 Hafıza Konuları 2.5 C de Aritmetik 2.6 Karar

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ı

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 Kodlarına Yorum Satırı Eklemek Java Paket Kavramı Java Kütüphane Kavramı Konsoldan Veri Çıkışı ve JOPtionPane Kütüphanesi JOptionPane Kütüphanesi Kullanarak

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ı

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ı

PROGRAMLAMAYA GİRİŞ DERS NOTLARI

PROGRAMLAMAYA GİRİŞ DERS NOTLARI PROGRAMLAMAYA GİRİŞ DERS NOTLARI PROGRAM Bilgisayar en basit olarak üç ana görevi yerine getiren bir makinedir. Girilen bilgiyi alır (INPUT), işler (PROCESSING) ve bu işlenmiş veriden bir sonuç (OUTPUT)

Detaylı

Bilgisayar Programlama. 1.Hafta

Bilgisayar Programlama. 1.Hafta Bilgisayar Programlama 1.Hafta Ders Planı 1. Bilgisayar Programlamaya Giriş 2. C Derleyicileri 3. GCC Kullanımı 4. Veri Tipleri ve Operatörler 5. Kontrol Yapıları 6. Döngüler 7. Döngüler 2. Hafta 8. Fonksiyonlar

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-7 C Programlama Diline Giriş

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-7 C Programlama Diline Giriş BLM-111 PROGRAMLAMA DİLLERİ I Ders-7 C Programlama Diline Giriş Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ C Programlama Dili Tarihçesi C programlama dili 1972

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ı

C dilinde if-else yapısı

C dilinde if-else yapısı C dilinde if- yapısı Merhaba arkadaşlar, bu başlık altında sizlere koşullu ifadelerden bahsedeceğim. Peki nedir bu koşullu ifadeler(if, if, )? Bunu bir koşulun gerçekleşmesine bağlı olarak gerçekleşen

Detaylı

C Dersleri Bölüm 3 : Program akışı

C Dersleri Bölüm 3 : Program akışı İzmir Ekonomi Üniversitesi Bilgisayar Topluluğu www.ieubt.org C Dersleri Bölüm 3 : Program akışı Sorularınız için : programlama@ieubt.org Hazırlayan : Görkem PAÇACI (gorkem.pacaci@std.ieu.edu.tr) C Program

Detaylı

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik-Mimarlık Fakültesi Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :26.11.2012, 60 dak. Dikkat!!! Soru kitapçığında

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ı

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

BBS515 Nesneye Yönelik Programlama. Ders 3 Zümra Kavafoğlu BBS515 Nesneye Yönelik Programlama Ders 3 Zümra Kavafoğlu https://zumrakavafoglu.github.io/ Bağıntısal Operatörler operatör tanımı < küçüktür > büyüktür = büyük eşittir eşittir!= eşit

Detaylı

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

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır. GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.

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ı

Genel Programlama II

Genel Programlama II Genel Programlama II 22.03.2011 1 Yapılar ( Structures ) Yapılar ( structures ); tam sayı, karakter vb. veri tiplerini gruplayıp, tek bir çatı altında toplar. Bu gruplandırma içinde aynı ya da farklı veri

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ı

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN ESM-361 Mikroişlemciler 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN Bit operatörleri Bit operatörleri bit düzeyinde işlem yapan operatörlerdir; yani sayıları bir bütün olarak değil, bit bit

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM-111 PROGRAMLAMA DİLLERİ I Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Temel Veri Tipleri C dilinde

Detaylı

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/ MTK467 Nesneye Yönelik Programlama Hafta 4 - Döngüler Zümra Kavafoğlu https://zumrakavafoglu.github.io/ while döngüsü while(koşul){ } döngü ifadeleri Koşul boolean değerli olmalıdır. Koşulun değeri true

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ı

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ı

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ı

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ı

Nesne Yönelimli Programlama

Nesne Yönelimli Programlama 1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Ders konuları 1. Programlamaya Giriş 2. Program Denetimi ve Operatörler 3. Nesnelerin

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ı

Program Akış Kontrol Yapıları

Program Akış Kontrol Yapıları Program Akış Kontrol Yapıları Giriş Normal şartlar altında program içerisindeki çalıştırılabilir satırlar, yazılmış oldukları sırada, yani birinden sonra diğerinin çalışması şeklinde ilerler. Programın

Detaylı

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

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır. GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.

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ı

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ı

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ GİRİŞ AKIŞ ŞEMASI Bir önceki ünitede algoritma, bilgisayarda herhangi bir işlem gerçekleştirmeden ya da program yazmaya başlamadan önce gerçekleştirilmesi düşünülen işlemlerin belirli bir mantık ve plan

Detaylı

Değişken nedir? Tanımı nasıl yapılır?

Değişken nedir? Tanımı nasıl yapılır? Değişken nedir? Tanımı nasıl yapılır? Değişkenler, girdiğimiz değerleri alan veya programın çalışmasıyla bazı değerlerin atandığı, veri tutucularıdır. Değişken tanımlamaysa, gelecek veya girilecek verilerin

Detaylı

C Konsol Giriş Çıkış Fonksiyonları

C Konsol Giriş Çıkış Fonksiyonları C Konsol Giriş Çıkış Fonksiyonları Öğr. Gör. M. Ozan AKI Rev 1.0 Stringlerde Özel Karakterler \n : Bir sonraki satırın ilk sütununa git \b : Backspace (önceki karakteri sil) \a : Bip sesi \\ : Ters bölü

Detaylı

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2 NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2 JAVA DA PROGRAM DENETİMİ VE OPERATÖRLER Java programlama dilinde temel tipleri ve nesneleri yönlendirmek ve değiştirmek için operatörler kullanılır. Atamalar sağ taraftaki

Detaylı

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri 49 Yrd. Doç. Dr. Yakup EMÜL, Bilgisayar Programlama Ders Notları (B02) Çalıştırılabilir C ifadeleri ya bir işlem gerçekleştirir ( girilen verilerin toplanması

Detaylı

C Programlama Dilinde Değişkenler

C Programlama Dilinde Değişkenler C Programlama Dilinde Değişkenler Değişkenler bir programlama dilinin en önemli bileşenlerindendir. En basit bir aritmetik işlemin bile kullanıcının girdiği değerleri saklamak için çeşitlik bellek alanlarına

Detaylı

BÖLÜM 3: AKIŞ DİYAGRAMLARI

BÖLÜM 3: AKIŞ DİYAGRAMLARI BÖLÜM 3: AKIŞ DİYAGRAMLARI Geliştirilecek olan yazılımın genel yapısının şematik gösterimine akış diyagramı (flowchart) adı verilir. Akış diyagramları, yazılımı oluşturacak program parçalarını ve bu parçaların

Detaylı

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu PROGRAM AKIŞ DENETİMİ Program akış denetimi konusu temel olarak 2 e ayrılır. Bunlar; 1)Koşul Deyimleri 2)Döngü Deyimleri KOŞUL DEYİMLERİ Koşul deyimleri temel olarak programı kontrol etmeye yararlar. Bunlara

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ı

Temel Bilgisayar Programlama

Temel Bilgisayar Programlama Temel Bilgisayar Programlama C Programlamaya Giriş Yrd. Doç. Dr. Tahir Emre Kalaycı 2012 Yrd. Doç. Dr. Tahir Emre Kalaycı () Temel Bilgisayar Programlama 2012 1 / 29 İçerik 1 Temel Kavramlar Algoritmanın

Detaylı

Özyineleme (Recursion)

Özyineleme (Recursion) C PROGRAMLAMA Özyineleme (Recursion) Bir fonksiyonun kendisini çağırarak çözüme gitmesine özyineleme (recursion), böyle çalışan fonksiyonlara da özyinelemeli (recursive) fonksiyonlar denilir. Özyineleme,

Detaylı

Hafta 7 C Programlama Diline Giriş ve C Derleyicisi

Hafta 7 C Programlama Diline Giriş ve C Derleyicisi BLM111 Programlama Dilleri I Hafta 7 C Programlama Diline Giriş ve C Derleyicisi Yrd. Doç. Dr. Caner ÖZCAN C Programlama Dili Tarihçesi C programlama dili 1972 yılında Bell Laboratuarlarında Dennis Ritchie

Detaylı

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf Giriş GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI printf Fonksiyonu scanf Fonksiyonu Verilerin kaybolmaması için hafızada değişkenler içine yerleştirilmeleri gerekir. Bu veriler iki şekilde yerleştirilebilir. Değişkene

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ı

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

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN TEMEL AMAÇLAR Bir dairenin yarıçapını kullanıcıdan alarak dairenin alanını hesaplamak istediğimizi düşünelim. Eğer girilen değer

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ı

Akış Kontrol Mekanizmaları

Akış Kontrol Mekanizmaları Akış Kontrol Mekanizmaları 1 Akış Kontrol Mekanizmaları if else switch for döngüsü for döngüsünün çalışma prensibi for döngüsüyle ilgili örnekler for döngüsüyle ilgili kurallar while döngüsü while döngüsünün

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

Diziler (Arrays) Çok Boyutlu Diziler Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.

Detaylı

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

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

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ı

BLG 1306 Temel Bilgisayar Programlama

BLG 1306 Temel Bilgisayar Programlama BLG 1306 Temel Bilgisayar Programlama WEB : mustafabahsi.cbu.edu.tr E-MAIL : mustafa.bahsi@cbu.edu.tr Değişken ve Atama Bilgisayar programı içerisinde ihtiyaç duyulan sembolik bir ifadeyi veya niceliği

Detaylı

Program AkıĢ Kontrol Yapıları

Program AkıĢ Kontrol Yapıları C PROGRAMLAMA Program AkıĢ Kontrol Yapıları Normal Ģartlarda C dilinde bir programın çalıģması, komutların yukarıdan aģağıya doğru ve sırasıyla iģletilmesiyle gerçekleģtirilir. Ancak bazen problemin çözümü,

Detaylı

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ 3. Hafta YAPILAR Farklı veri tipindeki bilgilerin bir araya gelerek oluşturdukları topluluklara yapı (structure) denir. Yani yapılar, birbiriyle ilişkili değişkenlerin

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ı

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ı

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

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ C# Yazım Kuralları 1 İçindekiler C# Yazım Kuralları Veritipleri Değişkenler Operatörler Sınıflar Nesneler, Özellik, Metot ve Olay Bileşenler 2 C# yazım kuralları Deyimlerde büyük küçük harf yazıma uyulmalı

Detaylı

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

İç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 İçerik Java da İşleçler, Kontrol Akış ve Döngü Deyimleri Geçen ders: Nesne ve Sınıf Kavramları Nesne ve Sınıf ın Java da gerçekleştirilmesi Bu ders: Java da işleçler ( operators ) Java da kontrol-akış

Detaylı

BLM 111 Algoritma ve Programlama I Güz 2018

BLM 111 Algoritma ve Programlama I Güz 2018 BLM 111 Algoritma ve Programlama I Güz 2018 Eğitmen: Dr. Umut Konur konur@beun.edu.tr 2618 Asistanlar: Batuhan Cem Öğe, Murat Varul, Ersin Kılıç Ders kitabı: Deitel & Deitel, C ve C++, Prentice Hall Başvuru

Detaylı

C Programlama printf() Fonksiyonu

C Programlama printf() Fonksiyonu C Programlama printf() Fonksiyonu Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur. Girdi ve çıktı deyimleri gerçekte C dilinin bir parçası

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ı

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

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 7. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Program Denetimi Yük. Müh. Köksal Gündoğdu 2 Program Denetimi Bir program, belirli deyim satırlarından oluşur ve genellikle bu

Detaylı

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

KONTROL YAPILARI JAVADA UC TURLU KONTROL YAPISI VARDIR BUNLAR İF ELSE İF ELSE İF SWİTCH YAPILARIDIR. IF ELSE YAPISI if (deger) { }else { KONTROL YAPILARI JAVADA UC TURLU KONTROL YAPISI VARDIR BUNLAR İF ELSE İF ELSE İF SWİTCH YAPILARIDIR IF ELSE YAPISI if (deger) { else { YUKARIDAKI IFADEDE deger EGER TRUE İSE if PARANTEZLERİ İÇİNDEKİ DEĞER

Detaylı

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma C de Detaylı Üs Alma Programı Bu uygulama yazısında C de pow() fonksiyonunu kullanmadan üs hesabı yapan programı yazmaya çalıştım. Başta tanımladığım float tipinde 2 fonksiyon sayesinde + lı ve li üs değerleriyle

Detaylı

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

Java da İşleçler, Ders #3 (4 Kasım 2009) Java da İşleçler, Kontrol Akış ve Döngü Deyimleri BS-515 Nesneye Yönelik Programlama Ders #3 (4 Kasım 2009) İçerikç Geçen ders: Nesne ve Sınıf Kavramları Nesne ve Sınıf ın Java da gerçekleştirilmesi Bu

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ı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

3/3/2011. ENF-102 Jeoloji 1. Akış Diyagramı. Akış Diyagramı Şekilleri

3/3/2011. ENF-102 Jeoloji 1. Akış Diyagramı. Akış Diyagramı Şekilleri Akış Diyagramı Akış Diyagramı Algoritma adımlarını şekillerle ifade etme işine akış diyagramı adı verilir. Standartlaşmış şekillerle ifade edilirler. Akış Diyagramı Şekilleri Akış Diyagramı Şekilleri başla

Detaylı

Giriş. ENF102 Jeoloji

Giriş. ENF102 Jeoloji DİZİLER Arrays Giriş Aynı isim altında, aynı türde birden fazla değer tutmak için kullanılan veri yapılarıdır (Data Structure). Dizi bir kümedir; aynı türde verilere tek bir isimle erişmek için kullanılır.

Detaylı