Algoritma ve Programlamaya Giriş 2025 Final


Algoritma ve Programlamaya Giriş 2025 Final

Bu final sınavı; temel programlama mantığı, döngü (WHILE, FOR) ve koşul (IF-ELSE) yapıları, tek boyutlu diziler, arama (doğrusal arama) ve sıralama (hızlı sıralama, böl-fethet mantığı) algoritmaları ile alt programların kullanımı ve zaman karmaşıklığı (O(n) vb.) konularını kapsamaktadır.


 

Sonuçlar

#1. I. Arama algoritmalarının hepsinde aranan elemanın içinde bulunduğu dizinin küçükten büyüğe sıralanmış olması gerekir. II. Bir arama algoritması kullanılarak aranan bir eleman ilgili dizide bulunmazsa başka bir algoritma ile eleman bulunabilir. III. Tüm sıralama algoritmaları aynı performansla çalışır. IV. Bazı sıralama algoritmaları problemi daha küçük parçalara bölerek ele alır. Arama ve sıralama algoritmaları ile ilgili olarak yukarıdaki ifadelerden hangisi veya hangileri yanlıştır?

#2. Aşağıdaki algoritmalardan hangisinde sıralama yaparken bir pivot eleman seçilir?

#3. I. Diziler sayısal değerleri tutabilir. II. Diziler sayısal olmayan değerleri tutabilir. III. Her indis değeri bir elemanın pozisyonunu işaret eder. IV. Aynı dizinin içinde farklı tiplerde eleman bulunabilir. Diziler ile ilgili olarak yukarıdaki ifadelerden hangisi veya hangileri doğrudur?

#4. Yukarıda verilen dizide her bir indis değeri bir şubeyi bu indislerde tutulan her bir değer de satılan ürün miktarını temsil etmektedir. Buna göre 50’den fazla ürün satılan şubelerin indislerinin yazdırılması için verilen aşağıdaki kaba kodlardan hangisi doğrudur?

#5. BAŞLA ? YAZ(Kullanıcı_adı) BİTİR Yukarıdaki örnek programda kullanıcıdan adını girmesi istenmektedir. Bunun için soru işareti olan yere gelmesi gereken satır aşağıdaki hangi şıkta doğru yazılmıştır?

#6. Yukarıda verilen akış diyagramında i değişkeninin başlangıç değeri 5 olmak üzere 5-100 arasındaki tek sayıların küpünün hesaplanması ve sonucun yazdırılması sağlanmaktadır. Buna göre akış diyagramında boş bırakılan yere aşağıdaki seçeneklerden hangisi gelmelidir?

#7. BAŞLA toplam = 0 FOR i = 1 TO 5 toplam = toplam + (i * 2) NEXT i YAZ toplam BİTİR Yukarıdaki algoritma ile ilgili olarak aşağıdaki şıklardan hangisi doğrudur?

#8. int carpma(A B) BASLA sonuc = A * B …… sonuc BİTİR Yukarıdaki geri değer döndüren bir alt programın kaba kodunda boş bırakılan yere aşağıdakilerden hangisi getirilmelidir?

#9. Tek boyutlu dizilerde doğrusal arama yapmanın zaman karmaşıklığı aşağıdakilerden hangisi ile ifade edilir?

#10. I. Böl ve fethet mantığına göre çalışan birden fazla sıralama algoritması mevcuttur. II. Böl ve fethet mantığına göre problem tek bir adımda çözülmeye çalışılır. III. Böl ve fethet mantığına dayanan bir algoritma özyinelemeli olarak çalışır. IV. Bir problem alt problemlere ayrılarak ele alınır. Böl ve fethet mantığına göre çalışan algoritmalar için yukarıdaki ifadelerden hangisi ya da hangileri yanlıştır?

#11. OKU (sayi) OKU (sinir) DO WHILE (???) YAZ (???) LOOP Kullanıcı tarafından girilen sayı girilen sınır değerinden küçük olduğu sürece çalışan ve girilen sayının iki katını hesaplayıp elde edilen değeri ekrana yazdıran bir programın kaba kodu yukarıdaki gibidir. Kaba kodda soru işareti (???) ile boş bırakılan yerlere sırasıyla aşağıda verilen ifadelerden hangisi gelebilir?

#12. BAŞLA OKU A IF (?) ise hesap = (A * 4) + 5 ELSE hesap = (A + 5) * 2 END IF YAZ (hesap) BİTİR Yukarıdaki programda A’nın çift sayı olup olmamasına göre iki farklı hesap yapılmaktadır. Buna göre A’nın çift sayı olup olmadığının kontrol edilmesi için programda soru işareti olan yere yazılması gerekenler aşağıdakilerden hangisidir?

#13. Alt Program int Carpma (int a int b) BAŞLA int c c = a * b return c BİTİR Yukarıdaki kaba kodda verilen alt program ana program tarafından çağrılmak isteniyor. Cevap şıklarından hangisi alt programın sorunsuz bir şekilde çağrılmasını sağlar?

#14. Bir programda A=20 ve B=40 olmak üzere aşağıdaki karşılaştırma işlemlerinden hangisinin sonucu TRUE olur?

#15. BAŞLA OKU(yas) IF ??????? THEN YAZ(“Reşit değilsiniz.”) ELSEIF ??????? THEN YAZ(“Çalışma çağındasınız.”) ELSE YAZ(“Emeklilik çağındasınız.”) END IF BİTİR Bir kişinin yaşını kullanıcıdan girmesini isteyen ve bu yaşa göre kişiye özel bir mesaj yazdıran bir kod yazılmak isteniyor. Programın gereklilikleri şunlardır: Eğer yaş 18’den küçükse ekrana “Reşit değilsiniz.” yazdırılmalıdır. Eğer yaş 18 ile 65 arasındaysa (65 dahil değil) ekrana “Çalışma çağındasınız.” yazdırılmalıdır. Eğer yaş 65 ve üzerindeyse ekrana “Emeklilik çağındasınız.” yazdırılmalıdır. Bu programın kaba kodu yukarıda verilmiştir. Bu kaba kodda soru işareti olan yerlere sırasıyla aşağıdaki değerlerden hangisi gelmelidir?

#16. I. Alt programlar programın yapısal olmasını sağlar. II. Alt programlar ilgili programın sadece bir yerinde çalıştırılabilir birden fazla kez kullanılamaz. III. Ana program tarafından alt program çağrılırken ilgili parametre türünün alt programda tanımlanan veri türü ile uyumlu olması gerekir. IV. Alt programlar ana bir programa ihtiyaç duymadan tek başına çalışabilen yapılardır. Alt programlar ile ilgili olarak yukarıdaki ifadelerden hangisi ya da hangileri yanlıştır?

#17. Veri tabanını ifade etmek için akış diyagramında aşağıdaki hangi eleman kullanılır?

#18. Aşağıdakilerden özelliklerden hangisi bir algoritmada olmak zorunda değildir?

#19. string1 = “elma” string2 = “armut” string3 = “elma” Yukarıdaki karşılaştırma aşağıdaki işlemlerinden hangisinin sonucu TRUE olur?

#20. 10 – 100 arasındaki (100 dahil değil) çift sayıların karelerinin toplamını hesaplayan kaba kod aşağıdakilerden hangisidir? (sayı = 10 toplam = 0 başlangıçta tanımlanmış varsayınız.)

Öncesi
Sınavı Bitir ve Sonucu Gör.

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ ÇALIŞMA REHBERİ

1. Arama ve Sıralama Algoritmaları

Final sınavının en kritik bölümüdür. Algoritmaların sadece adını değil, nasıl çalıştığını ve performans farklarını bilmelisin.

  • Sıralama Algoritmaları: * Hızlı Sıralama (Quick Sort): Bir “Pivot” eleman seçilir ve dizi bu elemana göre ikiye bölünür.
    • Kabarcık Sıralama (Bubble Sort): Komşu elemanlar sürekli karşılaştırılarak en büyük eleman sona itilir.
    • Zaman Karmaşıklığı: Algoritmaların O(n), O(n2) veya O(log n) gibi çalışma hızlarını mutlaka ezberle. Örneğin; Quick Sort ortalama durumda çok hızlıdır.
  • Arama Algoritmaları:
    • Doğrusal Arama (Linear Search): Elemanları baştan sona tek tek kontrol eder. Dizi sıralı olmak zorunda değildir.
    • İkili Arama (Binary Search): Dizinin mutlaka sıralı olması gerekir. Her adımda arama alanını yarıya indirir (O(log n)).

2. Diziler (Arrays) ve İndis Yönetimi

Diziler üzerinde işlem yapma becerisi sınavın büyük bir kısmını oluşturuyor.

  • İndis Mantığı: Dizilerin her zaman 0. indisten başladığını unutma. 6 elemanlı bir dizinin son indisi 5’tir.
  • Döngü ile Erişim: Bir dizinin elemanlarını kontrol etmek için genellikle FOR i = 0 TO n-1 yapısı kullanılır. Sınavda özellikle “belirli bir değerden büyük olanları bulma” kaba kodlarına dikkat et.

3. Alt Programlar (Fonksiyonlar ve Prosedürler)

Kodun tekrar kullanılabilirliğini sağlayan yapılardır.

  • Değer Döndürme (Return): Bir fonksiyonun hesapladığı sonucu ana programa geri göndermesi için returnifadesi kullanılır.
  • Void Yapılar: Değer döndürmeyen, sadece ekrana yazı yazan veya işlem yapan alt programlardır.
  • Yerel vs. Global Değişkenler: Sadece fonksiyon içinde tanımlanan değişkenler (yerel) ile tüm programda geçerli olan (global) değişkenlerin farkını kavra.

4. Akış Diyagramlarında Gelişmiş Semboller

Vize konularına ek olarak veri tabanı ve alt program çağırma sembolleri karşınıza çıkabilir.

  • Veri Tabanı: Silindir benzeri bir sembolle gösterilir.
  • Önceden Tanımlı İşlem (Subroutine): Yan çizgileri olan dikdörtgen sembolü, başka bir fonksiyonun çağrıldığını gösterir.

5. Karmaşık Döngü Analizleri (Kaba Kod)

Sınavda karelerin toplamını alan veya belirli sayı aralıklarını toplayan döngüler soruluyor.

  • DO WHILE – LOOP Yapısı: Koşulun nerede kontrol edildiğine bak.
  • Artış Miktarı: Sayaç değişkeninin kaçar kaçar arttığı (örn: sayi = sayi + 2) döngünün kaç kez döneceğini belirler.

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ DERSİ DENEME SINAVI

1. Hızlı Sıralama (Quick Sort) algoritmasında, diziyi parçalara ayırmak için kullanılan referans elemana ne ad verilir?

  • A) İndis
  • B) Pivot
  • C) Sayaç
  • D) Dizi Boyutu
  • E) Rastgele Eleman

Cevap: B

2. İkili Arama (Binary Search) algoritmasının çalışabilmesi için arama yapılacak dizinin hangi özelliğe sahip olması şarttır?

  • A) Elemanların sadece tam sayılardan oluşması
  • B) Dizinin en az 100 elemanlı olması
  • C) Elemanların sıralı (küçükten büyüğe veya tersi) olması
  • D) Dizide hiç negatif sayı bulunmaması
  • E) Dizinin bellekte çok az yer kaplaması

Cevap: C

3. Bir algoritmanın zaman karmaşıklığı O(n) ise, veri miktarı 2 katına çıktığında işlem sayısının nasıl değişmesi beklenir?

  • A) Değişmez
  • B) 4 katına çıkar
  • C) Yaklaşık 2 katına çıkar
  • D) Yarıya iner
  • E) Karesi kadar artar Cevap: C

4. Geriye değer döndürmeyen alt programları (prosedürleri) tanımlamak için kullanılan anahtar kelime hangisidir?

  • A) return
  • B) static
  • C) int
  • D) void
  • E) main Cevap: D

5. Akış diyagramlarında bir fonksiyonun veya başka bir algoritmanın çağrıldığını (Predefined Process) göstermek için kullanılan sembol hangisidir?

  • A) Dikdörtgen
  • B) Paralelkenar
  • C) Yan çizgileri olan dikdörtgen
  • D) Elips
  • E) Eşkenar Dörtgen

Cevap: C

6. Aşağıdaki kaba kod çalıştırıldığında çıktı ne olur? SAYI = 15 KALAN = SAYI % 4 YAZ (KALAN + 10)

  • A) 3
  • B) 13
  • C) 10
  • D) 7
  • E) 15 Cevap: B

7. 10 elemanlı bir dizinin sonuncu elemanına erişmek için hangi indis değeri kullanılmalıdır?

  • A) 10
  • B) 1
  • C) 0
  • D) 9
  • E) -1 Cevap: D

8. Bir algoritmanın veri girişine bağlı olarak ihtiyaç duyduğu bellek miktarını ifade eden kavram hangisidir?

  • A) Zaman Karmaşıklığı
  • B) Kodlama Hızı
  • C) Alan (Space) Karmaşıklığı
  • D) Derleme Süresi
  • E) Veri Tipi Boyutu Cevap: C

9. DO WHILE (sayaç < 5) yapısı ile WHILE (sayaç < 5) yapısı arasındaki en temel fark nedir?

  • A) Do While daha hızlı çalışır.
  • B) Do While döngüsü, koşul yanlış olsa bile en az bir kez çalışır.
  • C) While döngüsü daha fazla bellek kullanır.
  • D) Do While sadece sayısal verilerle kullanılır.
  • E) Aralarında mantıksal bir fark yoktur. Cevap: B

10. Bir algoritmanın her bir adımının herhangi bir şüpheye yer bırakmayacak şekilde açık ve net olması kuralına ne ad verilir?

  • A) Sonluluk
  • B) Belirlilik (Kesinlik)
  • C) Etkinlik
  • D) Giriş/Çıkış
  • E) Karmaşıklık Cevap: B

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Scroll to Top