Algoritma Soruları ve Çözümleri

0 427

Programlama anlatılan derslerde kullanılabilecek 100 basit algoritma soruları ve çözümlerini paylaşıyorum. Bu sorular sayesinde programlama bilginizi de geliştirebilirsiniz. Bu algoritma sorularını istediğiniz herhangi bir programlama dili ile çözebilirsiniz.

Algoritma bir problemin çözülebilmesi için adım adım uygulanan kurallar dizisidir. Algoritmaları kullanarak Algoritmaların en önemli özelliği, her türlü alternatif gidiş yolu düşünülerek sonuca ulaşıldığının garanti edilmesidir.

Sitemizden zaman içinde tüm bu soruların C# ve Python programlama dilleri ile yapılmış çözümlerini yayınlayacağız. Çözümleri yayınlanmış olan soruların üzerine tıklayarak ayrıntılı ve anlatımlı şekilde hazırlanmış çözümlerini bulabilirsiniz.

Ayrıca sitemizdeki yeni başlayanlar için hazırladığımız python derslerini takip edebilirsiniz.

Algoritma Soruları ve Çözümleri

  1. Klavyeden girilen 5 adet not bilgisinin ortalamasını alan programı yapınız.
  2. Klavyeden girilen 10 adet notun en büyük ve en küçüğünü bulan programı yapınız.
  3. Klavyeden girilen 5 adet sayının 10’dan büyük olanlarını sayan programı yapınız.
  4. Klavyeden 0 sayısı girilene kadar sayılar okutunuz. Girilen sayıların 2 katını alarak ekrana sonucu yazdırınız.
  5. 30 kişilik sınıfta, yaşı 13 ile 15 arasında olanların sayısını bulan programı yapınız.
  6. 30 kişilik sınıfta yaşı 13, 14, 15 ve 16 olanların sayısını ayrı ayrı bulan programı yapınız.
  7. Klavyeden girilen 5 adet sayının tek tek karelerini alan programı yapınız.
  8. Klavyeden 3 not girilir. İlk notun %30, ikinci notun %30 ve son notun da %40’ını bulan programı yapınız. Sonuç olarak da 3 notun yüzdelerini toplayıp ekrana yazdırınız.
  9. Klavyeden bir tam sayı okutunuz. Bu sayı ile klavyeden okunan diğer 10 sayıyı çarpma işlemi uygulayınız, sonuçları ekrana yazınız.
  10. Klavyeden girilen 10 sayıdan 5’ten büyük olanların yarısını, 5’e eşit ve küçük olan sayıların 2 katını bulan programı yapınız.
  11. Bir komisyoncu sattığı mallardan fiyatı 50 YTL kadar olanlardan %3, daha fazla olanlardan ise %2 komisyon almaktadır. Klavyeden girilen 5 malın komisyonlarını bularak, toplam komisyonu hesaplayınız.
  12. Klavyeden 5 adet yarıçapı verilen çemberlerin alanını ve çevresini hesaplayan programı yapınız.
  13. Klavyeden girilecek N sayısı kadar nottan en büyük ve en küçük olanı bulan programı yapınız.
  14. İç içe döngüler ile saat: dakika: saniye olarak saat yapınız. Saat 0 ile 23, dakika 0 ile 59 ve saniye de 0 ile 59 arasında ilerleyecektir.
  15. Klavyeden girilen 100’lük sistemdeki 5 notu; 0, 1, 2, 3, 4 ve 5 olacak şekilde ekrana yazan programı yapınız.
  16. Sayısal olarak girilen bir ay bilgisini ekrana “Ocak, Şubat, Mart veya diğer aylardan biri…” şeklinde yazan programı yapınız.
  17. İki vize ve bir final sınavına girilen üniversitede harf notuna vizeler %30 final ise %40 etkilidir. Bu üniversitenin harf ortalamasını hesaplayan kodu yazınız.
  18. Bir sayının kendisi dışında bütün pozitif bölenlerinin toplamı kendisine eşit olan sayılara mükemmel sayı denir. Kullanıcıdan alınan sayının mükemmel sayı olup olmadığını kontrol eden kodu yazınız.
  19. Kullanıcının girdiği sayının pozitif tam bölenlerini bulan kodu yazınız.
  20. Aracın gittiği toplam km’deki yakıt masrafını hesaplayan kodu yazınız.
  21. Dik üçgende dik açının karşısındaki kenara hipotenüs denir. Hipotenüs formülü : a^2 + b^2 = c^2 olduğuna göre kullanıcıdan alınan A ve B kenarına göre hipotenüsü hesaplayan kodu yazınız.
  22. Beden kütle endeksi kilo/boy^2 formülü ile hesaplanarak bireyin kilolu normal zayıf veya obez sınıfına girdiği ile ilgili sonuç verir. Kütle Endeksi (KE) < 18.5 ise Zayıf , 18.5 < (KE) <=25 ise Normal , 25 < (KE) <= 30 ise Kilolu , (KE) > 25 ise birey obez sınıfına girmektedir. Kütle endeksi kodunu yazınız.
  23. Çarpım tablosunu ekrana yazan kodu yazınız.
  24. Öğrencilerine 12 haneli öğrenci numarası veren üniversitenin verdiği numaranın ilk 4 hanesi giriş yılı 5. ve 6.  hanesi okuduğu fakültenin numarası 7. ve 8. hane bölüm numarası 9. hanesi öğrenim numarası 11. ve 12. hane ise öğrencinin üniversiteye giriş sırasıdır. 12 haneli öğrenci kodunu kullanıcıdan alarak anlamlı şekilde ayıran kodu yazınız.
  25. Kullanıcının girdiği üç kenar bilgisine göre üçgenin tipini belirleyen eğer girilen kenarları uzunlukları bir üçgen oluşturmuyorsa bunu bildiren kodu yazınız. ( mutlak değer içinde iki kenarın farkı alınır eğer fark diğer kenardan büyükse girilen değerler üçgen oluşturmaz. Bu işlem tüm kenarlar için yapılır.
  26. Kullanıcıdan alınan dört kenarın bilgisine göre şeklin kare,dikdörtgen veya diğer dörtgenlerden olduğunu belirten kodu yazınız.
  27. Kullanıcıdan ismini alarak harflere ayıran ve bu harflerle başlayan şehirleri sırasıyla ekrana yazdıran kodu yazınız. ( Ğ , Ü gibi harfler için farklı bir bilgi yazdırabilirsiniz. )
  28. İsim ve Soy isimleri atadığınız listeden rastgele isim ve soy isimler seçerek isim oluşturan kodu yazınız.
  29. Kullanıcıdan alınan basamak sayısı kadar pascal üçgeninin basamaklarını hesaplayan kodu yazınız.
  30. Kullanıcıdan kısa ve uzun kenar bilgisini aldığı dikdörtgenin alan ve çevre hesaplamasını yapan kodu yazınız.
  31. Kullanıcıdan alınan iki sayı arasındaki asal sayıları bulan kodu yazınız.
  32. Haftanın günü (Pazartesi, Salı, …) girilince, o günün haftanın kaçıncı günü olduğunu bulan programı yapınız.
  33. Fiyat ve KDV oranı ayrı ayrı girilen 5 malın toplam fiyatını hesaplayınız.
  34. Klavyeden dakika olarak girilen 5 şarkının toplam süresini saat olarak hesaplayan programı yapınız.
  35. Girilen işlem türüne (* / – +) göre iki sayıyı işleme alıp sonucunu ekrana yazan programı yapınız.
  36. Klavyeden bir sayı girilen sayıyı 10 farklı sayıya çarparak sonuçları ekrana yazan programı yapınız.
  37. 100 lük sistemde girilen not harf sistemine çevrip sonucunu ekrana yazan programı yapınız.
  38. Sayısal olarak girilen ay bilgisi ocak şubat mart diye ekrana yazan programı yapınız.
  39. Haftanın günü kelime olarak girilecek sayı olarak çıkaracak programı yapınız.
  40. Girilen işarete göre (-*/+) iki sayıya o işlemi uygulayıp sonucunu ekrana yazan programı yapınız.
  41. Klavyede isim girilecektir. Girilen isim ne olursa olsun kaldı yazacak fakat kendi ismimiz yazıldığında geçti yazacak programı yapınız.
  42. 1′den 20′ye kadar olan sayıların karesini ekrana yazdıran programı yapınız.
  43. Klavyeden girilen sayının 2′ye bölümünü bulan programı yapınız. (Not: Bölme / operatörünü kullanmadan yapılacak- Acaba nasıl?)
  44. Klavyeden girilen sayının 3 katını bulan programı yapınız. (Not: Çarpma * operatörünü kullanmadan)
  45. Klavyeden girilen isim Ahmet olana kadar ekrana “yanlış isim” mesajı veren, Ahmet girilince “tebrikler,doğru isim” mesajı veren programı yapınız.
  46. Klavyeden girilen 5 adet sayının ortalamasını döngü mantığı ile bulup ekrana yazan programı yapınız.
  47. Klavyeden girilen 10 sayıdan pozitif ve negatif olanların toplamını ekrana yazan programı yapınız.
  48. 1 den 20 ‘ye kadar olan sayıları ekrana alt alta yazan programı yapınız.
  49. 1 ile 30 arasında bulunan çift sayıları ekrana yazan programı yapınız.
  50. 1 ile 40 arasında bulunan 5 in katı olan sayıları ekrana yazan programı yapınız.
  51. Klavyeden girilen 5 sayıdan kaç tanesinin pozitif kaç tanesinin negatif olduğunu bulan programı yapınız. Not: Sayaç mantığı ve döngü kullanarak yapınız.)
  52. Klavyeden girilen bir sayının faktöriyelini hesaplayan programı yapınız.
  53. Klavyeden girilen 5 sayının çarpımını sayaç mantığı ile yani döngü kullanarak hesaplayıp, ekrana programı yapınız.
  54. 1 den 50′ye kadar olan sayıları ekrana alt alta yazan programı yapınız.
  55. 50 den 1′ye azalarak tek sayıları ekrana alt alta yazan programı yapınız.
  56. 1 den 100′ye kadar olana çift sayıları alt alta yazan programı yapınız.
  57. 0 dan başlayarak klavyeden girilen bir sayıya kadar olan sayıları ekrana alt alta yazan programı yapınız.
  58. Klavyeden girilen bir sayıdan başlayıp, 1′e kadar olan sayıları alt alta ekrana programı yapınız.
  59. Ekrana 30 defa “Bilişim Teknolojileri” mesajını alt alta yazan programı yapınız.
  60. Klavyeden girilen kullanıcının adını ekrana 20 kez yazan programı yapınız.
  61. Klavyeden girilen iki sayının arasında bulunan tüm sayıları ekrana alt alta yazan programı yapınız.
  62. Klavyeden girilen 10 sayının toplamını ekrana yazan programı yapınız.
  63. Klavyeden girilen 10 sayının ortalamasını bulup, ekrana yazan programı yapınız.
  64. Klavyeden girilen 10 sayıdan sadece negatif olanların çarpımını ekrana programı yapınız.
  65. Klavyeden girilen 10 sayıdan sadece pozitif olanların ortalamasını ekrana yazan programı yapınız.
  66. Kullanıcı adı “admin”, şifresi “1234″ olan bir program için kullanıcıdan 3 kez giriş yapması istenecektir.(kullanıcı adı ve şifresi girilecek yani) Eğer her iki girişi de doğru yaparsa “Giriş izni var”, 3 kez yanlış giriş yapması sonucunda ise “Giriş izni yok” şeklinde mesaj veren programı yapınız.
  67. Klavyeden girilen bir sayının faktöryelini ekrana yazan programı yapınız.
  68. Klavyeden girilen 10 sayıdan negatif ve pozitif olan sayıların toplamını ekrana ayrı ayrı yazan programı yapınız.
  69. Klavyeden girilen iki sayının karelerini ekrana yazan programı yapınız.
  70. Kullanıcın adı klavyeden girilerek “Hoşgeldin<kullancıcı adı>”, altına ise “Programlama öğreniyorum” şeklinde mesaj veren programı yapınız.
  71. Kullanıcının yıl olarak doğum tarihi girilerek, bugünkü yaşını hesaplayıp, ekrana yazan programı yapınız.
  72. Kullanıcının tuttuğu takım klavyeden okunarak, ekrana “En büyük <tutulan takım>” yazan programı yapınız.
  73. Dikdörtgenin kısa ve uzun kenar uzunluğu klavyeden girilerek, ekrana dikdörtgenin alanını ve çevresini yazan programı yapınız.
  74. Klavyeden girilen 3 sayının ortalamasını hesaplayıp, ekrana yazan programı yapınız.
  75. Klavyeden girilen bir sayı için pozitif mi negatif mi olduğunu ekrana mesaj olarak yazan programı yapınız.
  76. Kullanıcın yaşı klavyeden girilerek reşit olup olmadığını mesaj olarak ekrana yazan programı yapınız.
  77. Klavyeden kullanıcının sevdiği sanatçının adı ve kullanıcının yaşı girilerek, ekrana “En iyisi” şeklinde mesaj vererek, kullanıcının 2020 yılında kaç yaşında olduğunu bulup, ekrana yazan programı yapınız.
  78. Klavyeden kullanıcının adı ve yaşı girilerek, ekrana “İyi ki doğdun” şeklinde mesaj vererek, kaç yıl sonra 30 yaşında olacağını ya da “30 yaşını geçmişsiniz” şeklinde mesaj olarak ekrana yazan programı yapınız.
  79. Klavyeden girilen bir sayının mutlak değerini ekrana yazan programı yapınız.
  80. 1-1-2-3-5-8-13-21-34-55 serisi matematikte fibonacci sayıları dediğimiz sayılardır. Bu sayılar arasındaki ilişkiyi anlayarak, bu serinin ilk 10 terimini ekrana yazan programı yapınız.
  81. Klavyeden girilen bir sayının tek ya da çift sayı olduğunu ekrana yazan programı yapınız.
  82. Klavyeden girilen bir sayının asal olup olmadıgını bulup, ekrana mesaj olarak yazan programı yapınız.
  83. Klavyeden 0 girilene kadar girilmiş olan sayıların toplamını ekrana yazan programı yapınız.
  84. Klavyeden şifre olarak 123 girilene kadar kaç adet tahmin yapıldığını ekrana yazan programı yapınız.
  85. Klavyeden girilen 5 sayıdan sadece pozitif olanların ortalamasını hesaplayıp ekrana yazan programı yapınız.
  86. Klavyeden girilen 5 adet sayıdan pozitif ve negatif olanların ortalamasını hesaplayıp, ekrana yazan programı yapınız.
  87. Bir metinde istediğimiz harfin kaç kez geçtiğini hesaplayan programı yapınız.
  88. İki dosyanın içeriğini karşılaştırıp farklı öğeleri ekrana yazdıran programı yazınız.
  89. Python’da format metodunu kullanarak dilekçe hazırlayan bir program yazınız.
  90. Bilgisayarın rastgele belirlediği bir sayıyı tahmin etmeye çalıştığımız sayı tahmin oyunu programını yazınız.
  91. Saat, dakika, saniye değerlerini birbirine dönüştüren programı yazınız.
  92. Hesap makinesi olarak çalışabilecek bir program yapınız.
  93. Girilen metni tersten yazdıran programı yazınız.
  94. Palindromik sayı  düzden ve tersten okunuşu aynı olan sayılardır. Bir sayının polindromik olup olmadığını bulan programı yazınız.

  95. 2 milyona kadar olan asal sayıların toplamını bulan programı yazınız.
  96. 10001. Asal sayıyı bulan programı yazınız.
  97. Türkçe metinlerde Ulama bulan programı yazınız.
  98. Türkçe cümle sonu bulma programını yapınız.
  99. Metin içerisinde en çok kullanılan kelimeleri bulan programı yapınız.
  100. Dizin içindeki belli tipteki dosyaları listeleyen programı yapınız.

Çözümünü istediğiniz soruları yorumlarda belirtirseniz o soruların çözümlerini yayınlamayı öne alırız. Yorumlarınız için şimdiden teşekkürler.

Cevap bırakın

E-posta hesabınız yayımlanmayacak.

Bu web sitesi deneyiminizi geliştirmek için çerezleri kullanır. Bununla iyi olduğunuzu varsayacağız, ancak isterseniz vazgeçebilirsiniz. Kabul etmek Mesajları Oku