ALGORĠTMALAR VE PROG. GĠRĠġ
|
|
- Gonca Gökbakar
- 8 yıl önce
- İzleme sayısı:
Transkript
1 ALGORĠTMALAR V PROG. GĠRĠġ A. PROBLM ÇÖZÜMÜ ĠLK V VRLRĠ,ALGORĠTMA V AKIġ ġmalari ALGORĠTMA : Adım adım iģlem basamaklarının yazılmasıdır. PROGRAM : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmıģ deyimler dizisi. Program Yazma Süreci : 1. Problemin ne olduğunu kavra. Çözüm için gereksinimleri belirle. 2., Problemin girdilerini, çıktılarını ve diğer kısıtlama ve gereksinimleri belirle ( bilgilerin giriģ ve çıkıģ biçimlerinin nasıl olacağına kadar). 3. Problemin çözümünü veren algoritmayı yaz. 4. Algoritmayı bir programla dili ile yaz 5. Programın doğru çalıģıp çalıģmadığını test et. Bu testi değiģik veriler (girdiler) için tekrarla. Programlama Dillerinin Seviyelerine Göre Sınıflandırılması : Hangi dili kullanırsanız kullanın (C, Basic, Perl, Pascal, Java ) tüm dillerde belli konularda aynı prensipler vardır. Bu temel konuları öğrenirseniz, çoğu dillerde rahatlıkla aynı iģlemi yapabilirsiniz. Yüksek seviyeli diller insan algılayıģına daha yakın, alçak seviyeli diller de bilgisayarın doğal çalıģmasına daha yakın olan dillerdir. Dillerdeki seviye yükseldikçe programcının iģi de kolaylaģır. Öyle ki, çok yüksek seviyeli programlama dillerinde artık bir iģin nasıl yapılacağına iliģkin değil, ne yapılacağına iliģkin komutlar bulunur. Seviyenin yükselmesi programcıya kolaylık sağlamakla birlikte genel olarak verimliliği ve esnekliği de azaltır. Çok Yüksek Seviyeli Programlama Dilleri ya da Görsel Diller (FOXPRO, PARADOX, ACCSS.., VISUAL BASIC, IV.KUġAK DlLLR) Yüksek Seviyeli Programlama Dilleri (PASCAL, COBOL, FORTRAN, BASIC,...) Orta Seviyeli Programlama Dilleri (C) Alçak Seviyeli Programlama Dilleri (Sembolik Makine Dilleri) GiriĢ ve ÇıkıĢ Deyimleri : Bilgisayar; temel olarak verinin girilmesi, iģlenmesi ve çıktı olarak kullanıcıya verilmesi iģlemlerini yapar. Veriler bilgisayarın anlayacağı Ģekilde girilirken, bilgisayar da kullanıcının anlayacağı Ģekilde sonuçların çıkıģını verir. Veri doğru girilirse iģlemler doğru yapılır. Uygun algoritmik komutlar verilmediğinde iģletilebilir algoritma satırları, yazılmıģ oldukları sırada, yani birinden sonra diğerinin çalıģması Ģeklinde ilerler. AkıĢ Ģemalarında yukarıdan aģağıya doğru sırası gelen satır iģletilir. 1
2 Basit Örnek bir Algoritma Örneğin bir insanın evden çıkıp okula giderken izleyeceği yolu ve okula giriģinde ilk yapacaklarını tanımlamaktadır. Çözüm : Yurttan dıģarıya çık Otobüs durağına yürü Yoldan geçen araçlardan hangisinin otobüs olduğunu anla Otobüsün geldiğinde otobüse bin Biletini bilet kumbarasına at Ġneceğin yere yakınlaģtığında arkaya yürü Ġneceğini belirten ikaz lambasına bas Otobüs durunca in Okula doğru yürü Okul giriģ kapısından içeriye gir Okul arkadaģlarınla selamlaģ Sınıfa gir. Dersini dinle. 2
3 AkıĢ ġemaları Öğr.Gör. NAMIK ĠÇLĠ Simge Simgenin Adı ve Anlamı lips: AkıĢ diyagramının baģlangıç ve bitiģ yerlerini gösterir. ngıç simgesinden çıkıģ oku vardır. BitiĢ simgesinde giriģ oku vardır. Paralel Kenar: Programa veri giriģi iģlemlerini gösterir. Dikdörtgen: Aritmetik iģlemler ve değiģik atama iģlemlerinin temsil edilmesi için kullanılır. Ģkenar Dörtgen: Bir karar verme iģlemini temsil eder. Altıgen: Program içinde belirli blokların ard arda tekrar edileceğini gösterir. Oklar: Diyagramın akıģ yönünü,yani her hangi bir adımdaki iģlem tamamlandıktan sonra hangi adıma gidileceğini gösterir. Programa ait sonuçların ekrana yazdırılması Bağlantı: AkıĢ Ģeması sayfaya sığmazsa Ģemayı parçalamak yerine bağlantı ile birleģtirmek gerekir. Alt program olduğunu bildirir. 3
4 AkıĢ ġemaları (Karar Verme Yapıları) Öğr.Gör. NAMIK ĠÇLĠ DOĞRU c<2 İŞLM YANLIġ AkıĢ ġemaları (Tekrarlı Döngü Yapı) <değiģken> = baģlangıç, bitiģ, artıģ Döngü bitene kadar yapılacak iģlemler Döngü bittikten sonra döngü çıkıģında yapılacak iģlemler 4
5 B. KONTROL DYĠMLRĠ V DÖNGÜLR Karar Verme Yapıları Ġle Ġlgili Örnekler: Bazen problemin çözümü, bir ya da birden fazla koģula bağlı olarak, yapılacak iģ ya da iģlem adımlarına karar vermek suretiyle gerçekleģtirilebilir. Bu amaçla kullanılan algoritma komutu ĞR dir. ÖRNK A: Birbirinden farklı olarak verilen iki adet sayıdan, büyük olanı bulup gösteren algoritma ve akıģ diyagramını tasarlayınız. PROBLM Bu problemde verilen iki değerden büyük olanı bulunması istenmektedir. Bilgisayar büyük, küçük, eģit ve farklı gibi mantıksal iģlemleri gerçekleģtirebilir. O halde problemde bir karģılaģtırma yapılacak ve karģılaģtırmanın sonucuna göre hangisinin büyük olduğuna karar verilecektir. ANALĠZ Bu problem için gereken Girdiler : Birinci sayı Ġkinci sayı Çıktılar : Büyük olan ĠliĢki : Birinci sayı > Ġkinci sayı => Birinci sayı büyüktür Ġkinci sayı > Birinci sayı => Ġkinci sayı TASARIM BAġLA OKU sayi1 OKU sayi2 ĞR sayi1> sayi2 ĠS YAZ sayi1 DĞĠLS YAZ sayi2 DUR AKIġ DĠYAGRAMI büyüktür Sayi1, Sayi2 (* Bu algoritmada girilen sayıların birbirinden farklı olarak verilecekleri soruda söylendiğinden ikinci koşulu ( İkinci sayı > Birinci sayı => İkinci sayı ) yazmaya gerek kalmamıştır. *) (*Çünkü birinci, ikinciden büyük değilse ve bu sayılar birbirinden farklı ise geriye kalan tek ihtimal ikincinin büyük olma durumudur. *) (*İkinci koşul sorgulanmadan sayi2 değişkeninde bulunan ikinci sayı değeri ekrana yazdırılmıştır.*) Sayi1 > Sayi2 Sayi1 büyüktür H Sayi2 büyüktür Bitir 5
6 ÖRNK B : Verilen arasınav (vize) ve yarıyıl sonu sınavı (final) notlarına öğrencinin dersten geçip geçmediğini bulan algoritma ve akıģ diyagramını tasarlayınız. PROBLM Öğrencinin geçip kalma durumu aldığı sınav notlarının ağırlıklı ortalamasına bağlıdır. Ağırlıklı ortalama vize notunun %40'i ve final notunun %60'ı toplanarak bulunur. Ortalaması 60'dan küçük olanlar o dersten kalır büyük ya da eģit olanlar geçer. ANALĠZ Bu problem için gereken Girdiler : Arasınav notu Yarıyılsonu sınav notu Çıktılar : Öğrenci Dersten Geçti" Öğrenci Dersten Kaldı ĠliĢki : Ağırlıklı Ortalama=Arasınav Notu * Yarıyılsonu notu * 0.60 Ağırlıklı Ortalama >= 60 => "Öğrenci Dersten Geçti" Ağırlıklı Ortalama < 60 => "Öğrenci Dersten Kaldı" TASARIM BAġLA OKU vize, final Aortalama=vize * final * 0.60 ĞR Aortalama >= 60 ĠS YAZ "Öğrenci Dersten Geçti" DĞĠLS YAZ "Öğrenci Dersten Kaldı DUR AKIġ DĠYAGRAMI Vize, Final Aortalama=Vize*0.4+Final*0.6 Aortalama>=60 Öğrenci dersten geçti H Öğrenci dersten kaldı 6
7 ÖRNK C : Verilen tamsayının sıfır, pozitif ya da negatif olup olmadığını bulan algoritma ve akıģ diyagramını tasarlayınız. PROBLM Bu problemde kullanıcının dıģarıdan girdi olarak verdiği değerin pozitif, negatif ya da sıfır olup olmadığı bulunmak istenmektedir. Öncelikle pozitif ve negatif sayıların tanımının bilinmesi zorunludur. Bilindiği gibi sıfırdan büyük sayılara pozitif, küçüklere de negatif denmektedir.ğer ikiside değilse o zaman 0 dır Verilen sayının sıfırdan büyük ya da küçük olma durumu sorgulanırsa problem çözülebilir. ANALĠZ Girdiler : Sayı Çıktılar : "Bu sayı Pozitiftir " "Bu sayı Negatiftir'' "Bu sayı sıfırdır ĠliĢki : Sayı >0 => "Bu sayı Pozitiftir " Sayı <0 => "Bu sayı Negatiftir" Sayı =0 =>"Bu sayı Sıfırdır" TASARIM Bir problemin doğru çözümü olan birden fazla farklı algoritma yazılabilir. Algoritma yazıldıktan sonra daha hızlı çalıģması için üzerinde iyileģtirmeler yapılabilir. Bu soruda iki farklı algoritma yazılacaktır. ALGORĠTMA 1 ALGORĠTMA 2 (Ġç içe ğerler Ġle) BAġLA BAġLA OKU Sayı OKU Sayı ĞR Sayı>0 ĠS YAZ "Bu sayı Pozitiftir" ĞR Sayı>0 ĠS YAZ "Bu sayı pozitiftir" ĞR Sayı<0 ĠS YAZ "Bu sayı Negatiftir ' DĞĠLS ĞR Sayı=0 ĠS YAZ "Bu sayı Sıfırdır " ĞR Sayı< 0 ĠS YAZ "Bu sayı negatiftir" DUR DĞĠLS YAZ "Bu sayı sıfırdır" DUR AKIġ DĠYAGRAMI 1 AKIġ DĠYAGRAMI 2 (Ġç içe ğerler Ġle) Sayı Sayı Sayı > 0 Sayı Sayı pozitiftir Sayı > 0 pozitiftir (* Bu örnekte içiçe eğer H H komutları kullanılarak Sayı< 0 sayının sıfırdan Sayı Sayı büyük yada negatiftir Sayı < 0 negatiftir küçük olma durumları ilk 2 H H eğer içinde sınanmıştır.*) Sayı = 0 Sayı Sayı (* İki şartı da sıfırdır sıfırdır sağlamıyorsa o zaman tek H seçenek sayının 0 a eşit olması. Bitir Bitir 2 eğer yeterlidir 7
8 Ödev Algoritma: Klavyeden girilen A ve B sayıları var. A sayısı ile B sayısı eģitse bu iki sayının toplamını, A sayısı büyükse bu iki sayının çarpımını, A sayısı her iki durumda değilse o zaman A sayısının B sayısından farkını bulan programı adım adım yapınız? Tekrarlı Döngü Yapıları ile Ġlgili Örnekler: Algoritma içerisinde, gerçekleģtirilen belli adımların tekrarlanması sonucu problem çözümüne gidilebilir. Bu tip problemler bu bölüme kadar olan yöntemlerle yapılırsa, yazılacak iģlem satırları gereksiz yere artacaktır. Ġlk konularda da söylendiği gibi, iyi bir algoritma problemi olabilecek en kısa adımda ve en etkili biçimde çözebilendir. ÖRNK A: "krana 10 defa programcının adını yazan algoritmayı yapınız". ALGORĠTMA 1- BAġLA 2- YAZ "ALĠ" 3- YAZ "ALĠ" 4- YAZ "ALĠ" 5- YAZ "ALĠ" 6-YAZ "ALĠ" 7- YAZ "ALĠ" 8- YAZ "ALĠ" 9- YAZ "ALĠ" 10- YAZ "ALĠ" 11-YAZ "ALĠ" 12-DUR (* Bu algoritma problemi çözebilir. Fakat aynı iģi daha kısa adımda ve daha çabuk çözebileni tercih edilecektir. Çünkü programcıya 10 kere yazın yerine 100 kere yazında denebilirdi. O zaman da, bu mantıkla gidilecek olursa 100 kere YAZ "ALĠ" satırı alt alta yazılmak zorunda kalınacaktı. O halde yapılması gereken YAZ "ALĠ" komut satırını 10 ya da 100 kere çalıģtıracak yapıyı kurmaktır. Algoritma içerisinde bazı ifadeleri birden fazla çalıģtırmak için kullanılan yapılara döngü (loop) adı verilir. Yapılacak tekrar miktarının bilindiği durumlarda döngü bir sayaç kullanarak tasarlanabilir. Sayaç aslında tekrar edilme iģleminin ne kadar yapıldığını tutan bir değiģkendir. sayaç kontrollü bir döngüdeki temel öğeler Ģunlardır: Yukarıda da söylendiği gibi bir sayaç değiģkeni olmalıdır. Bu değiģken döngü sayacı (loop counter) olarak bilinir. Döngü sayacına bir atama ifadesiyle ilk değer verilir. Döngü sayacının değerinin sınır değere gelip gelmediği kontrol edilir. Döngünün gövdesinin her çalıģmasından sonra, sayacın değeri bir artırma ya da eksiltme iģlemi ile değiģtirilir. Bu tip bir döngüyü oluģturmak için Ģimdiye kadar verilen komutlara GĠT komutu eklenecektir. Bu tür döngülerde bir sayaç (counter) ve bir koģul yani ĞR (if) komutu kullanılır. Tekrarlanan komutların her iģleyiģinde sayaç değeri bir ya da birden fazla arttırılır ya da azaltılır. Sonrada sayaç değiģkenin değeri ile tekrarlanma miktarı karģılaģtırılır. ğer istenilen değer değilse, tekrarlanacak komut/komutların baģına algoritma iģleyiģi yönlendirilir. ğer istenilen bitme Ģartı sağlanıyorsa algoritma kaldığı yerden devam eder. 8
9 ÖRNK A : "krana 10 defa programcının adını yazan algoritmayı yapınız". Öğr.Gör. NAMIK ĠÇLĠ ALGORĠTMA 1. BAġLA 2. Sayac=1 3. YAZ "ALĠ" 4. Sayac=Sayac+1 5. ĞR Sayac<=10 ĠS GĠT Adım 3 6. DUR AKIġ DĠYAGRAMI Sayac=1 ALĠ { YAZ "ALİ" komut satırı 10 kere çalışmıştır.} (* Sayaç değişkenin değeri 1 10 aralığında olduğunda (yani 10dan küçük ya da eşit) çalışmıştır.*) Sayac=Sayac+1 Sayac<=10 (* 11 değerini alınca tekrar algoritma 3.adıma dallanmamış bir sonraki adımdan itibaren çalışmasına devam etmiştir.*) Bitir H ÖRNK B : 1'den 25 e kadar (25 de dahil) tek sayıları yazdıran algoritma ve akıģ diyagramını yapınız. ALGORĠTMA AKIġ DĠYAGRAMI 1 1. BAġLA 2. Sayac=1 3. Toplam=0 Toplam=0 4. ĞR Sayac Mod2 0 ĠS Sayac< YAZ Sayac Sayac=1 6. Sayac=Sayac+1 7. ğer Sayac<26 ĠS GĠT Adım 4 H 8. BĠTĠR Sayac mod2 0 Bitir H (* Bu algoritmada sayının çift ya da tek olup olmadığı mod işlemine göre bulunmuştur*). (* Bilindiği üzere mod sayının ikinci taraftaki değere bölümünden kalanı vermektedir. *) (* ğer kalan sıfırsa sayının çift olduğu, eğer sıfırdan farklı ise sayının tek olduğu anlaşılır.*) Sayac Sayac=Sayac+1 1 9
10 C. PROGRAMLAMA ORTAMININ KULLANIMI, KOD YAZIM KURALLARI V DĞĠġKNLR DeğiĢken ve Sabitler : Temel programlama iģlevlerini gerçekleģtirebilmek için değiģkenler kullanılmaktadır. Bir değiģken küçük bir depo alanıdır. Ġçinde sayılar, kelimeler, harfler saklanabilir. DeğiĢkenleri defalarca kullanabilsek de, içinde aynı anda sadece bir bilgi tutabilmektedirler. DeğiĢkenler geçici olarak kullanıldıkları için, program veya bilgisayar kapanınca silinirler. Bazı değerler ise her zaman aynı değere sahip olduğu için sabit adını alırlar. MeselaPI sayısı olan 3.14 değeri gibi. Bu tür sabit olan bazı değerleri programlama dili kendiiçinde hazır olarak destekleyebilir. Genellikle değiģken ve sabitler programın ilk satırlarında tanımlanmaktadır. DeğiĢkenin adı ve ne tür bilgiyi saklayacağı çok önemli bir konudur. Üzerinde çalıģılan programlama dilinin değiģken türleri iyi öğrenilmelidir. Ayrıca değiģkenlerin hafızadaki kapladıkları alanlar da önemlidir. Bilgisayar bizim değiģkenlere ne isim verdiğinizi umursamasa da, hem bizim hem de diğer programcılar için kolay anlaģılacak Ģekilde isimlendirilme çok önemlidir. Macar notasyonu* adı verilen adlandırmayla veritürü ve adı aģağıdaki gibi gösterilirse program yazarken veri türleri oluģturmada bir standart sağlanır. tyil = tamsayı Yıl mad = metin Ad baskerlik = boolean (mantıksal) Askerlik Genel olarak baģka isimlendirme kuralları vardır: Ġlk harf veya tamamı sayı olamaz. Mesela: 2nciYari gibi olmaz. DeğiĢken ismi içinde boģluk, TAB, nter olamaz. Mesela Soy Ad gibi olmaz. Büyük küçük harfle yazım fark eder. Mesela: IlkNot ile ILKNOT farklıdır. Dilin anahtar kelimeleri değiģken adı olamaz. Mesela: PRINT gibi Türkçe ve özel karakterleri kullanmamaya çalıģmalıyız. Mesela: örütbağ yerine orutbag yazılmalı gibi Alt çizgi isimlendirmede kullanılabilir. Mesela: taban_ucret gibi Genel olarak değiģken değerleri; tam sayı (yaģınız 30), ondalıklı sayılar (ağırlığınız 75.6), metin (adınız Neva ), karakter(ehliyet B ) ve mantıksal (burs durumu True Doğru False YanlıĢ )olabilmektedir. Ġlk değeri belli olmayan ve program boyunca da değer atanmayan bir değiģkenin değeri belirsiz olarak kabul edilir. YanlıĢlıkla da bu değiģken, iģlemlerde kullanılırsa, programda istenmeyen değerler elde edilebilir. 10
11 Veri giriģ ve çıkıģı konusunda basit bir algoritma ile örnek yapalım. Klavyeden adınızı girip, ekrana Selam, yazısı ile adınızı gösterelim: Metin AD 3. Yaz; Ġlk Program 4. Yaz; Ġsminizi giriniz 5. Oku; AD değiģkenine * ata 6. Yaz; Selam, & AD** 7. Bitir * DeğiĢkenler sayesinde geçici bilgileri bellekte saklar ve üzerlerinde iģlem yapabiliriz. ** Genellikle + veya & simgesi metinleri birleģtirmek, yan yana yazmak için kullanılır. *** Pascal ve Basic harf büyüklüklerini önemsemez, C ve Java ise aynı Ģekilde yazmayı önemser. Aktarma (Atama) Deyimi : Bir değiģkene doğrudan veya kullanıcı giriģi ile değer atanabilir. Doğrudan değer atama "=" ile yapılır ve yönü sağdan sola doğrudur. Çoğu programlama dilinde atama "=" ile yapılır. Pascal dilinde de ":=" Ģeklinde yapılmaktadır. a = 5 {Doğru; a nın değeri 5 olur } a = a + 5 {Doğru; a nın eski değerine 5 eklenir. Genelde sayaçlarda kullanılır.} a + 5 = a {Hatalı! } 5 = a {Hatalı! } a = a {Gereksiz } Daha sonra göreceğimiz döngüler ile de, bir Ģeylerin toplamını bulmak istediğimizde de toplam = toplam + sayi Ģeklinde ifadeler kullanırız. toplam değiģkenin eski değerine yeni sayi değeri eklenerek yeni toplam değiģkenine atanır. Böylece toplam = Ģeklinde yazmamıza gerek kalmaz. Dillerin bazılarında daha tanımlama sırasında değer ataması yapılmaktadır. Buna varsayılan değer atama denir: Dim a As Integer = 5 {Basic dilinde} int a = 5; {C dilinde} Const a = 5; {Pascal dilinde} DeğiĢkenlere değer girilmesi ile ilgili basit örnek yapacak olursak. Örnek 1:Klavyeden iki sayı girilir, yer değiģtirilerek ekrana yazdırılır: (3 tabure ve 2 öğrenci var. Öğrencileri diğer tabureye oturtmak ) Sayısal Sayı1, Sayı2, DeğiĢtirici 3. Oku; Ġki sayı giriniz, Sayı1, Sayı2 4. DeğiĢtirici = Sayı1 5. Sayı1 = Sayı2 6. Sayı2 = DeğiĢtirici 7. Yaz; Sayı1, Sayı2 8. Bitir 11
12 Örnek 2:Klavyeden bir fiyat girilir, KDV(%18) eklenerek sonuç değeri ekrana yazdırılır: Sayısal Fiyat, Sonuc 3. Yaz; Fiyat giriniz 4. Oku; Fiyat 5. Sonuc = Fiyat * Yaz; Sonuc 7. Bitir Örnek 3: Sabit atama yöntemi ile örnek yapalım: Sayısal KDV, Fiyat, Sonuc 3. KDV = 1.18 (*Tüm programda hep aynı değer olarak geçerli 4. Yaz; Fiyat giriniz 5. Oku; Fiyat 6. Sonuc = Fiyat * KDV 7. Yaz; Sonuc 8. Bitir Örnek 4: BeĢ sayının toplamını ve ortalamasını veren programa ait algoritmanın oluģturulması A1 :T = 0, Sayac = 0 {Toplam adı için T, Ortalama adı için Ort} A2 :X i gir {Girilen sayılar için X} A3 :T= T+X A4 : Sayac = Sayac +1 {Arttırma için Sayac kullanılırsa} A5 :ğer Sayac <5 ise A2 ye git A6 :Ort= T/5 A7 :T ve Ort değerlerini yaz A8 :Bitir 12
13 Örnek 1:Klavyeden iki sayı girilir, yer değiģtirilerek ekrana yazdırılır: (3 tabure ve 2 öğrenci var. Öğrencileri diğer tabureye oturtmak) Öğr.Gör. NAMIK ĠÇLĠ Örnek 3: Sabit atama yöntemi ile örnek yapalım: KDV=1.18 Sayı1,Sayı2 Fiyat Degistirici=Sayı1 Sayı1=Sayı2 Sayı2=Degistirici Sonuc=Fiyat*KDV Sayı1,Sayı2 Sonuc Örnek 2:Klavyeden bir fiyat girilir, KDV(%18) eklenerek sonuç değeri ekrana yazdırılır: Örnek 4: BeĢ sayının toplamını ve ortalamasını veren programa ait akıģ Ģemasının oluģturulması: T=0, Sayac=0 Fiyat Sayac=Sayac+1 T=T+Sayac Sonuc=Fiyat*1.18 Sonuc Sayac < 6 H Ort = T / 5 T, Ort 13
14 Örnek 4: BeĢ sayının toplamını ve ortalamasını veren programa ait akıģ Ģemasının oluģturulması. SAYAC mantığı ile T=0, Sayac=0 Sayac = 1, 6, 1 (* Sayac 1 den başlayarak 6 ya kadar döner ama son 6 rakamını gördüğünde işlem yapmadan(en son 5 rakamına göre yaptığıyla) işlemi sonlandırır.*) T = T + Sayac Ort = T / 5 (* 1 den 5 e kadar sayma sonucu her saymada T içinde toplanan sayılar yine T nin içinde tutularak toplam sayı bulunur. ortalama içinde toplamı sayı adedine yani 5 e böleriz.*) T, Ort Örnek 5: Klavyeden girilen sayı kadar (N) sayının faktoryelini alan programın akıģ Ģeması N Başla Faktor=1 (* İlk değer atanmazsa hafızadan farklı bir değer alır. Farklı bir sonuç verir*) N Sayi=1,N (* ğer sayaçta artım miktarı belirtilmezse birer birer artar.*) Faktor=Faktor*sayi Faktor (* Önceki örnekte olduğu gibi sonuçlar aynı değişken üzerine yazılarak döngünün bir sonraki seferinde elde edilen değer korunur.n son döngü değerinden sonra değer ekranda yansıtılacaktır.*) Bitir 14
15 Örnek 6: 100 kiģilik bir sınıfta arası her yaģ grubunda kaç öğrencinin bulunduğunu belirleyip, her yaģ grubunda kaç adet öğrenci olduğunu veren programın algoritma ve akıģ Ģemasını çizin. DeğiĢkenler OSA :Öğrenci sayısını, I18 :18 yaģında olan öğrencilerin sayısını I19 :19 yaģında olan öğrencilerin sayısını I20 :20 yaģında olan öğrencilerin sayısını I21 :21 yaģında olan öğrencilerin sayısını I22 :22 yaģında olan öğrencilerin sayısını IYOS :ĠĢlem yapılan öğrenci sayıaını göstersin. Algoritma A1- A2- I18=0 I19=0 I20=0 I21=0 I22=0 IYOS=0 A3- OSA oku A4- OSA=18 ise I18'i arttır, Adım 9'a git A5- OSA=19 ise I19'u arttır, Adım 9'a git A6- OSA=20 ise I20'yi arttır,adım 9'a git A7- OSA=21 ise I21'i arttır,adım 9'a git A8- OSA=22 ise I22'YĠ arttır,adım 9'a git A9- IYOS<100 ise Adım 3'e git A10- I18,I19,I20,I21,I22,yaz A11- DUR 15
16 Örnek 7: ax²+bx+c=0 Ģeklinde verilen 2. derece denklemin köklerini bulan programın akıģ diyagramını çizin. = b 2 4ac > 0 ise x 1 = (- b + ) / 2a ve x 2 = (- b - ) / 2a =0 ise x 1,2 = (- b / 2a) < 0 ise Reel kökleri yoktur a, b, c = b 2 4ac > 0 x = (- b / 2a) x H =0 Reel Kök Yoktur x 1 = (- b + ) / 2a x 2 = (- b - ) / 2a x 1, x 2 Örnek 8: Klavyeden girilen Fahrenayt derecesini Cantigrad a çeviren programın akıģ Ģemasını çizin. F C= (F - 32) * 5 / 9 C 16
17 Örnek 8: 150 ile 250 arasındaki tamsayı Fahrenhayt değerlerine karģılık gelen Cantigrad derece değerlerini gösteren programın akıģ Ģemasını çizin. Tekrarlı döngü yapısı (Sayaç) ile : Karar verme yapısı ile: F = 150, 250 F = 150 F = 150 C= (F - 32) * 5 / 9 F <= 250 H C= (F - 32) * 5 /9 F, C C= (F - 32) * 5 / 9 F, C F, C F = F + 1 F = F + 1 H F > 250 (* İki yol arasındaki fark: İlk yolda F değeri hemen karşılaştırmaya alınarak daha sonra dönüştürme işlemi ve çıktı alınır. İkinci yolda ise ilk F değerine karşılık dönüştürme işlemi yapılır ve çıktı alındıktan sonra karşılaştırmaya alınır.*) 17
18 D. DĠZĠLR Öğr.Gör. NAMIK ĠÇLĠ DeğiĢkenler aynı anda tek bir değer tutabilen temel değiģkenler ve birden fazla değer saklayabilen bileģik değiģkenler olmak üzere ikiye ayrılır. Temel değiģkenler bellekte tek bir hücreyi tanımlayıp, içlerinde tek bir değeri tutabilirler. Diziler ise ardarda sıralanmıģ bellek hücreleridirler. Diziler bu bağlamda bileģik değiģkenlerdir ve bellekte aynı anda birden fazla ve aynı tipte değerin saklamasını mümkün kılarlar. Dizilerin ilk elemanın indisi 0 dır. Örneğin 100 adet isim ve telefon bilgisini saklamak için yani 200 tane değiģken kullanılmalı. Pratikte bu kadar fazla değiģken kullanmak hem gereksiz hem de hatalı sonuçlar verebilir. Bunun için daha kısa olması açısından indisli değiģkenler(diziler) kullanılır. örnek için dizi kullanırsak; 100 elemanlı iki adet dizi iģimizi halledecektir. veri_tipi dizi_adı[eleman_sayısı] int not[100] char diz[25] string A[5] Bellek görüntüsü: Ġki boyutlu dizi (matris): dizi satır ve sütun bilgilerinden oluģur. Veri giriģi yapılırken önce 0.satırdaki tüm bilgiler(sütunlar) girildikten sonra 1.satıra gelerek aynı iģlemler tekrarlanır. veri_tipi dizi_adı[satır_sayısı][sütun_sayısı] int mat[10][10] float not[30][3] Bellek görüntüsü: 18
19 Örnek 1: Klavyeden girilen 10 adet sayıyı küçükten büyüğe doğru sıralayan programın akıģ Ģemasını çizin. Öğr.Gör. NAMIK ĠÇLĠ Örnek 2: Klavyeden girilen 10 adet sayının en büyüğünü bulan programın akıģ Ģemasını çizin. Dizi sıralanmadan yapılacaktır! X x(1) x(2) x(3) x(10) I = 1, 10 A (I) I = 1, 10 B = A(1) X(I) I = 2, 10 I = 1, 9 A (I) > B H K = I+1, 10 B = A(I) X(I) > X(K) H Gec = X(I) X(I)= X(K) X(K)= Gec B I = 1, 10 X(I) (* İç içe olan döngülerde içteki döngü tamamlanmadan dıştaki döngüye geçmez *) 19
20 Örnek 3: Klavyeden girilen 4*4 lük iki matrisi toplayan ve sonucu üçüncü bir matrise yazan programın akıģ Ģemasını çizin. I = 1, 4 K = 1, 4 Öğr.Gör. NAMIK ĠÇLĠ Örnek 4: 10*10 luk bir matrisin her bir satırını toplayan programın akıģ Ģemasını çizin. I = 1, 10 K = 1, 10 A(I,K) X(I,K) I = 1, 4 K = 1, 4 I = 1, 10 T = 0 B(I,K) I = 1, 4 K = 1, 10 T=T+X(I,K) T K = 1, 4 C(I,K) = A(I,K) + B(I,K) I = 1, 4 K = 1, 4 C(I,K) (* A matrisinin 1.satır 1.sütunu ile B nin 1.satır 1.sütunu toplanıp C nin 1.satır 1.sütununa yazıldıktan sonra içteki döngü 1 artarak A nın 1.satır 2.sütunu ile B nin 1.satır 2.sütunu toplanıp yine C matrisin 1.satır 2.sütununa yazılır ve böylece içteki döngü(sütun) tamamlandıktan sonra dıştaki döngüye(satıra) geçilir*) 20
21 Örnek 5: 10*10 bir matrisin her bir satırının küçükten büyüğe doğru sıralayan bir programın akıģ Ģemasını çizin. I = 1, 10 K = 1, 10 X(I,K) { 10*10 matris için veri girişi.} I = 1, 10 K = 1, 9 { 10*10 matris de sütun ve sütun+1 şeklinde her satır için işlemler. } L = K+1, 10 X(I,K) H (* işlemlerde sütun değeri sütun+1 deki yani bir sonraki > sayıdan büyükse o zaman iki sayı yer değiştirsin. *) X(I,L) Gec = X(I,K) X(I,K)=X(I,L) X(I,L)=Gec I = 1, 10 (* tüm sıralama işlemleri(döngüler) bittikten sonra dizi içindeki sayılar matris şeklinde gösterilsin. *) K = 1, 10 X(I,K) 21
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ıÖ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ı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ı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ıProgram akıģı sırasında belirtilen satır numaralı yere gitmek için kullanılır. Genel formu: [<satır numarası>] GOTO <satır numarası 1> GOTO n
KONTROL DEYİMLERİ Kontrol deyimleri bir programın normal akıģını değiģtirmek için kullanılır. Aksi söylenmedikçe programın komut satırları birbiri ardına çalıģtırılır. Program içindeki yapılan sorgulamalara
DetaylıÖRNEK ALGORİTMA VE AKIŞ ŞEMALARI. Örnek 1: Klavyeden girilen 2 sayının toplamını bulan programın algoritma ve akış şemasını yapınız.
1 lips Akış şemasının başlangıç ve bitiş yerlerini gösterir. Başlangıç simgesinden çıkış oku vardır. Bitiş simgesinde giriş oku vardır. Paralel Kenar: Programa veri girişi ve programdan elde edilen sonuçların
Detaylı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İ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ı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ıBilgisayar Programı Nedir?
BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR Bilgisayar Programı Nedir? Program, bilgisayarda i belirli libir amacı gerçekleştirmek için geliştirilmiş yöntemlerin ve verilerin, bilgisayarındonanımınınyerine
DetaylıAlgoritmalar. 3. Açıklık: Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli.
Algoritmalar Kısaca algoritma belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir. Geniş anlamda ise algoritma, verilen herhangi bir sorunun çözümüne ulaşmak için uygulanması gerekli adımların
Detaylı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ı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ıDiziler İndisli Değişkenler
Diziler İndisli Değişkenler Aynı tür bilgileri (öğrenci isimleri, şehir isimleri, kapı numaraları, fakülteler vbg.) bellekte tutmak için kullanabileceğimiz listelere dizi adı verilir. Dizi kullanmanın
Detaylı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ıBİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR
BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR Bilgisayar Programı Nedir? Program, bilgisayarda belirli bir amacı gerçekleştirmek için geliştirilmiş yöntemlerin ve verilerin, bilgisayarın donanımının
Detaylı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ı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ıDöngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.
Giriş Döngüler - Loops Bir ifade kümesinin tekrarlanması, yani birden fazla çalıştırılması işlemine döngü (loop) dendiğiğ programlamaya giriş ş kısmında belirtilmişti. Bu derste döngülerin C programlama
DetaylıHSancak Nesne Tabanlı Programlama I Ders Notları
DİZİLER Bellekte ard arda yer alan aynı türden nesneler kümesine dizi (array) denilir. Bir dizi içerisindeki bütün elemanlara aynı isimle ulaşılır. Yani dizideki bütün elemanların isimleri ortaktır. Elemanlar
DetaylıPROGRAMLAMA ALGORĠTMA
PROGRAMLAMA Programlama Nedir? Bir iģi yapmak için gerekli iģlemlerin tespit edilmesi, tanımlanması ve bu iģlerin sırasının bilinmesidir. Programlama Basamakları: 1- Problemi Tanıma: Programın programcı
Detaylı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ıBÖLÜM 2: ALGORİTMALAR
BÖLÜM 2: ALGORİTMALAR Algoritma bir problemin çözümünde (işlemin gerçekleşmesinde) izlenen adımlar dizisi olup, problemi çözmek için yürütülecek eylemlerin ve bu eylemlerin sırasını belirten bir talimattır,
DetaylıMühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler
Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler C Programlama Dr. Serkan DİŞLİTAŞ 3.1. Sabitler Sabitler, tanımlanmasıyla birlikte program içerisinde
DetaylıDöngüler - Loops 4/13/2011. ENF-102 Jeoloji Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.
Giriş Döngüler - Loops Bir ifade kümesinin tekrarlanması, yani birden fazla çalıştırılması işlemine döngü (loop) dendiği programlamaya giriş kısmında belirtilmişti. Bu derste döngülerin C programlama dilinde
DetaylıBasit Algoritma Akış Diagramı Örnekleri
Basit Algoritma Akış Diagramı Örnekleri Mantıksal veya Döngüsel olmayan akış diagramı örnekleri Klavyeden girilen fiyatı, KDV(%18) ekleyerek ekrana yazdırın. Sayısal Fiyat, Sonuc Yaz; Fiyat giriniz Oku;
DetaylıFortran komut satırı toplam 80 kolon ve 5 bölgeden oluģur. Komut satırının yapısı aģağıdaki gibidir:
FORTRAN (FORmula TRANslation) Fortran komut satırı toplam 80 kolon ve 5 bölgeden oluģur. Komut satırının yapısı aģağıdaki gibidir: 1 2...5 6 7...72 73...80 A B C D E A Bölgesi: (1. kolon) B Bölgesi: (2-5
Detaylı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ı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ıALGORİTMA VE AKIŞ ŞEMALARI
1 ALGORİTMA VE AKIŞ ŞEMALARI İster bilgisayarla ister bilgisayarsız soru çözmek için belirli bir yol vardır. Ancak bu yol ile sağlıklı bir çözüme ulaşılabilir. Bilgisayar kullanarak soru çözmek için sonuca
Detaylı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ıÜ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ı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ıBIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ
2017-2018 BaharYarıyılı Balıkesir Üniversitesi Endüstri Mühendisliği Bölümü 5 BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Çoklu Koşul Yapıları, Sözde Kod, Algoritmalar Arasında Dönüşüm) Yrd. Doç. Dr. İbrahim
Detaylı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ı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ı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ıİÇ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ı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 BÖLÜM-II ALGORİTMA I. GİRİŞ Bilgisayar dünyasında, insanın
DetaylıPROGRAM AKIŞ DİYAGRAMLARI
1 PROGRAM - ALGORİTMA AKIŞ ŞEMASI PROGRAM AKIŞ DİYAGRAMLARI Dr. Mehmet AKSARAYLI Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. bir sorunun çözümü
Detaylı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ı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ıÖ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ı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ı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 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ı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ıALGORİTMA VE PROGRAMLAMA I DERS NOTU#8
ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 6. BÖLÜM 2 Çok Boyutlu Diziler Çok Boyutlu Dizi 3 Bir dizi aşağıdaki gibi bildirildiğinde
Detaylı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ı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ıÖ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ı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ı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ı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ı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ıİ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ı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ı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ıHansel zeki bir çocukmuģ. Sabah ormana doğru yürürlerken, akģam yemeğinde cebine sakladığı kuru ekmeğin kırıntılarını (yere iz bırakıp kaybolmamak ve
ALGORİTMALAR Hansel zeki bir çocukmuģ. Sabah ormana doğru yürürlerken, akģam yemeğinde cebine sakladığı kuru ekmeğin kırıntılarını (yere iz bırakıp kaybolmamak ve daha sonra bu izi takip ederek evin yolunu
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 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ı4- ALGORİTMA (ALGORITHM) M.İLKUÇAR - 1
(ALGORITHM) M.İLKUÇAR - imuammer@yahoo.com 1 M.İLKUÇAR - imuammer@yahoo.com 2 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
Detaylı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ı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 Sözde kod, algoritmalar ve programlar oluşturulurken kullanılan, günlük konuşma diline benzer ve belli bir programlama dilinin detaylarından uzak
DetaylıDÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN
DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN GİRİŞ Ekrana «Merhaba Java» şeklinde bir mesajı 100 defa yazmak istediğinizi düşünelim. Aşağıdaki komut satırını 100 kez yazmak sıkıcı
DetaylıTBP101 (4. Hafta) Alıştırma Soruları ve Cevapları
TBP101 (4. Hafta) Alıştırma Soruları ve Cevapları 1. Klavyeden girilen üç sayıyı toplayan ve ortalamasını alıp sonuçları ekrana yazdıran sözde kodunu yazınız. PROGRAM Soru1 READ A, B, C; TOP = A + B+ C;
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 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ı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ıDiziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler
Diziler Diziler Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler Dizi Tanımı Değişkenler aynı anda tek bir değer tutabilen temel değişkenler ve birden fazla değer saklayabilen
DetaylıBireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir.
Bireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir. Bu durumda bireylerin ortaya çıkan olumsuzluklara karşılık çözüm bulmak için yapacakları mücadeleye de PROBLEM
DetaylıDeğişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while
Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne
DetaylıI=[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1] % 4x4 lük birim matris
Değişken Türleri ve Atamalar - Marislerin Değişken Olarak Atanması Matrislerin birden fazla elamanları olduğundan herhangi bir satır herhangi bir sütundaki elamanı ayrı ayrı tanımlanmak yerine [ ] sembolü
DetaylıC++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 6: Diziler İçerik Diziler Dizi Elemanlarına İlk Atama Diziler ve Fonksiyonlar İki Boyutlu Diziler İki Boyutlu Dizi Tanımı İki Boyutlu Dizi Elemanlarına Erişim
Detaylı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ıLength: metin uzunluğunu yada diğer bir deyişle dizi elaman sayısını döndürür.
Programlama Temelleri Trim: metnin başındaki ve sonundaki boşlukları kaldırır. Trim( Selam ) Selam şeklinde çıkar Split: metin içinde ayırma işlemi yapar. Split( ) Metni boşluklarını diziye atar. oşluk
DetaylıALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Diziler Dizi Nedir? Dizilerin Bildirimi Dizilere Başlangıç Değeri Verme Dizilerde Arama
DetaylıBLG 1306 Temel Bilgisayar Programlama
BLG 1306 Temel Bilgisayar Programlama Öğr. Grv. M. Mustafa BAHŞI WEB : mustafabahsi.cbu.edu.tr E-MAIL : mustafa.bahsi@cbu.edu.tr Bilgisayar ile Problem Çözüm Aşamaları Programlama Problem 1- Problemin
DetaylıProgramlama Temelleri
Programlama Temelleri TEMEL BİLGİSAYAR KAVRAMLARI Donanım: GiriĢ birimleri- klavye, fare, okuyucular, mikrofon, dokunmatik aletler Ana iģlemci ve yardımcılar Saklama birimleri (CD-ROM, diskler, bellekler...)
Detaylı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 K I Ş D İ YA G R A M L A R I» Öğr. Gör. Dr. Abdullah ELEN Karabük Üniversitesi T.O.B.B. Teknik Bilimler Meslek Yüksekokulu Demir Çelik Kampüsü 78050
DetaylıALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Yapılar ve Birlikler enum Deyimi
DetaylıALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır.)
PROGRAM YAZMAK SÜRECİ 1. Problemin farkına varmak, 2. Problemi analiz etmek, 3. Çözüm yolları düşünmek, 4. İyi çözüm yolları seçip algoritma oluşturmak, 5. Akış diyagramı çizmek, 6. Uygun bir dilde kodlamak,
Detaylı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ıEBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA
4. 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 4- ALGORİTMA (ALGORITHM) 1 2 4- ALGORİTMA
DetaylıALGORİTMA KAVRAMI. Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir.
ALGORİTMA KAVRAMI Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir. Algoritma bir sorunun çözümü için izlenecek yolun tanımıdır.
Detaylı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ı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ı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ı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ıErzurum Teknik Üniversitesi Mühendislik Mimarlık Fakültesi Bilgisayar Programlama Dersi Ödevi Soru
Adı: Soyadı: Numara: Bölümü: Erzurum Teknik Üniversitesi Mühislik Mimarlık Fakültesi Bilgisayar Programlama Dersi Ödevi 15.11.2015 Soru 1 2 3 4...... Toplam Puanlar Soru-1: Yandaki kısımda verilen terimlerin
DetaylıKONTROL YAPILARI (CONTROL STRUCTURES)
Öğr.Gör.Bülent ÇOBANOĞLU, Visual BASIC Ders Notları-I 0 KONTROL YAPILARI (CONTROL STRUCTURES) GĠRĠġ Kontrol yapıları, program akışını değiştirmek için kullanılan yapılardır. Yapısal programlama dillerinde
DetaylıÖrnek 1: Girilen iki sayıyı toplayıp yazdıran algoritmayı ve akış diyagramını tasarlayınız.
ALGORİTMA ve AKIŞ ŞEMASI ÖRNEKLERİ İÇİNDEKİLER Örnek 1: Girilen iki sayıyı toplayıp yazdıran algoritmayı ve akış diyagramını tasarlayınız. Örnek 2:Kısa ve uzun kenarı girilen dikdörtgenin alanını ve çevresini
DetaylıAdı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.
Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap
DetaylıBilgisayar ve Programlama
Bilgisayar ve Programlama PROGRAMLAMAYA GĠRĠġ Donanım: GiriĢ birimleri- klavye, fare, okuyucular, mikrofon, dokunmatik aletler Ana iģlemci ve yardımcılar Saklama birimleri (CD-ROM, diskler, bellekler...)
DetaylıDİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II
DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II DİZİLER Dizi, aynı tipteki verilere tek bir isimle erişmek için kullanılan bir kümedir. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe
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İŞ DÖNEM SONU SINAVI GÜZ 2009-2010 13 Ocak 2010, Sınav Süresi: 120 dakika. İsim
DetaylıALGORİTMA ÖRNEKLERİ ve YAZILIYA HAZIRLIK SORULARI
ALGORİTMA ÖRNEKLERİ ve YAZILIYA HAZIRLIK SORULARI 1 ÖRNEK 1: Klavyeden okunan bir sayının 10 fazla ve 10 eksiğini bulup yazan programın algoritma ve akış şeması şöyledir. Girdi Bir sayı (a) Çıktı Sayının
Detaylı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ıDizi elemanları yukarıdaki gibi tek tek tanımlanabileceği gibi matematiksel ifadelerdeki diziler gibi de tanımlanabilir.
DİZİLER/ARRAY: Dizi yi çeşitli şekillerde tanımlamak mümkün. Dizi içlerinde birden fazla değer saklayabilen veri kümeleridir diye tanımlarsak uygun olur sanırım. Diziler yan yana dizilmiş kutucuklar olarak
DetaylıHafta 4 Döngü Yapıları
BLM111 Programlama Dilleri I Hafta 4 Döngü Yapıları Yrd. Doç. Dr. Caner ÖZCAN Akış Diyagramı Akış Diyagramı Örnek - Tekrar Katsayıları klavyeden girilen ikinci derece denklemin köklerini hesaplayan algoritmanın
Detaylı