05.11.2013 PROGRAMLAMA TEMELLERİ DERSİ NOTLARI-2 (1. DÖNEM) ALGORİTMA ÇALIŞMA SORULARI 1. Klavyeden girilen sayının 2’ye bölünüp bölünemediğini bulan ve ekrana yazan programın algoritmasını yazınız. 2. Girilen sıcaklık değerine göre suyun katı, sıvı, gaz olma durumunu gösteren programın algoritmasını yazınız. (Sıfır derecenin altında katı,0-100 derece arasında sıvı,100 dereceden fazla ise gaz halindedir.) 3. Klavyeden kullanıcı adı ve şifre girişi yapılacak. Eğer kullanıcı adı “bilişim”, Parolası “12345” ise “Giriş izni var.” Değilse “Girişi izni yok” yazan programın algoritmasını yazınız. 4. Klavyeden girilen 3 sayıdan en büyüğünü bulan programın algoritmasını yazınız. 5. 1 den 10 a kadar sayıların toplamını ekrana yazan programın algoritmasını yazınız. 6. Klavyeden girilen sayıya kadar girilen sayıların toplamını bulan ve ekrana yazan programın algoritmasını yazınız. 7. Bir otoparkta kalınan saat aralığı için ücret ödenmektedir. 0-2 saat kalınırsa 2 TL 2-4 saat kalınırsa 3 TL 4-6 saat kalınırsa 5 TL 6-daha fazla kalınırsa 10 TL Programın algoritmasını yazınız. 8. Klavyeden bir ürünün alış fiyatı, satış fiyatı ve adet miktarı girilecektir. Bu üründen elde edilen kâr miktarını hesaplayan programın algoritmasını yazınız. 1 AKIŞ ŞEMASI SORULARI ÖRNEK AKIŞ ŞEMASI SORULARI Örnek 1: Girilen 2 sayıdan büyük olanı ekrana yazdıran programın akış diyagramını tasarlayınız. Cevap 1: Şimdi bu örnekte doğrusal akış diyagramlarından farklı olarak bir karar verme söz konusu. girilen ilk sayı x olsun ikinciside y olsun. x sayısımı y den büyük yoksa y sayısı mı x den büyük yoksa iki sayı birbirine eşitmi. Bu durumda bir karar verme ve bu karar sonucunda büyük olan sayının ekrana yazdırılması söz konusudur. Değişkenler Birinci sayı: x İkinci sayı: y Akış Diyagramı Örnek 2: Girilen bir sayının tek mi çift mi olduğunu tespit eden programın akış diyagramını tasarlayınız. Cevap 2: Şimdi böyle bir soruda bir sayının 2 ye bölündüğü zaman 0 kalanını verirse sayı çift 1 kalanını verirse sayı tek olduğu bilgisini hatırlatmamız lazım. Yani burda yine bir karar verme söz konusudur. Mesala 5 sayısı tek mi çift mi ? 18 sayısı tek mi çift mi ? 5 i 2 ye bölersek kalan 1 18 i 2 ye bölersek kalan 0 Tek Çift Bir sayının bölümden kalanını bulan matematiksel bir fonksiyon mevcuttur. Birçok programlama dilinde de bu fonksiyon tanımlanmıştır. Mod fonksiyonu denilen bu fonksiyonun kullanılışı: 6 mod 2 7 mod 2 anlamı 6 nın 2 ye bölümünden kalan sonuç değeri sıfır. anlamı 7 nin 2 ye bölümünden kalan sonuç değeri birdir. 2 Değişken Girilen sayı : x Akış Diyagramı Örnek 3: Girilen sıcaklık değerine göre bir suyun katı, sıvı ve gaz olma durumunu gösteren programın akış şemasını tasarlayınız. Şimdi soruyu çözmeden önce kimya konularını biraz hatırlayalım. Su sıfır derecenin altında katı, 0100 derece arasında ise sıvı, 100 dereceden fazla ise gaz halinde bulunur. Dolayısı ile bu soruda kullanıcı su sıcaklığını girdikten sonra belirli karşılaştırmalar yaparak karar vermemiz lazım. Değişkenler Sıcaklık değeri: t Akış Diyagramı 3 Örnek 4: Klavyeden girilen vize notunun %40′ ını final notunun %60 ‘ ını alarak ortalama notu bulduran programın akış diyagramını tasarlayınız. Değişkenler Vize notu: v Final notu: f Ortalaması : ort Akış Şeması 4 Örnek 5: 0 dan 100 e kadar olan sayıların toplamını bulan programın akış şemasını tasarlayınız. 5