Final 2023-2024 20 soru

Algoritmalar ve Programlamaya Giriş 2023-2024 Final

Kaynak: https://lolonolo.com/2024/01/08/algoritmalar-ve-programlamaya-giris-guz-2023-2024-final-sorulari/

📖 Konu özeti (sınav öncesi tekrar)

Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları

20 soru
Şıkka dokun, anında açıklamasını gör — ya da çalışma modunda tüm cevapları aç.
Soru 2
Yukarıdaki cümlede boş bırakılan yere aşağıdakilerden hangisi gelmelidir?
CDoğru cevap
Soru 3
I. Tek boyutlu diziler satırlar ve sütunlardan oluşur.
II. Birden fazla tek boyutlu dizinin bir araya gelmesi ile iki boyutlu diziler oluşur.
III. Tek bir indis değeri kullanımı yeterlidir.
IV. İki for döngüsü kullanılarak oluşturulabilir.
Tek boyutlu diziler ile ilgili olarak yukarıdaki ifadelerden hangisi ya da hangileri yanlıştır?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

I yanlıştır: satır ve sütunlardan oluşan yapı iki boyutlu dizidir, tek boyutlu dizi tek bir sıradan oluşur. IV de yanlıştır: iç içe iki for döngüsü iki boyutlu dizileri oluşturmak için kullanılır; tek boyutlu dizi için tek döngü yeterlidir. III doğrudur, çünkü tek boyutlu dizide elemanlara tek indisle erişilir.

Soru 4
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 3. SORU-min
Yukarıda verilen akış diyagramında i değeri -5 ve 18 arasındaki değerleri alıp döngünün her adımında 2 artmaktadır. Buna göre akış diyagramında boş bırakılan yere gelmesi gereken ifadeler aşağıdaki hangi şıkta doğru verilmiştir?
BDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Akış diyagramındaki for döngüsü başlangıç değeri, bitiş değeri ve artış miktarı sırasıyla yazılır. i -5'ten başlayıp 18'e kadar gidiyor ve her adımda 2 artıyorsa ifade i = -5, 18, 2 şeklinde olmalıdır. D şıkkında bitiş ve artış değerlerinin yerleri karışmıştır.

Soru 5
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 4. SORU-min
Yukarıdaki akış diyagramında gösterilen program ile ilgili olarak aşağıdakilerden hangisi yanlıştır?
BDoğru cevap
Soru 6
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 5. SORU-min
Kullanıcı tarafından girilen bir A sayısının iki katının 5 fazlası, girilen bir B sayısının üç eksiğinin 5 katı hesaplanmaktadır. Elde edilen değerler toplanmakta ve sonuç C değişkenine atandıktan sonra C değişkeni ekrana yazdırılmaktadır. Bahsedilen bu programın kaba kodunda yukarıda boş bırakılan iki satıra hangi şıktaki ifadeler gelmelidir?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

A'nın iki katının 5 fazlası (A * 2 + 5), B'nin üç eksiğinin 5 katı ise ((B - 3) * 5) şeklinde yazılır; bu ikisi toplanıp C'ye atanır. B şıkkındaki (B – 3 * 5) ifadesinde işlem önceliği nedeniyle önce 3*5 yapılır ve B'den 15 çıkarılır; bu yanlıştır. Bu yüzden doğru ifade C = (A * 2 + 5) + ((B – 3) * 5) olur.

Soru 7
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 6. SORU-min
Yukarıda bir ana program ve geriye değer döndüren bir alt programa ait kaba kodlar verilmiştir. Ana programda soru işareti bulunan satıra gelmesi gereken doğru ifade aşağıdaki şıklardan hangisinde verilmiştir?
BDoğru cevap
Soru 8
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?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

I yanlıştır: doğrusal arama sıralı olmayan dizilerde de çalışır; sıralı dizi yalnızca ikili arama gibi bazı algoritmalar için gerekir. II yanlıştır: eleman dizide yoksa hiçbir algoritma onu bulamaz. III yanlıştır: sıralama algoritmalarının performansı (ör. O(n²) ile O(n log n)) farklıdır. IV doğrudur; birleştirmeli ve hızlı sıralama problemi küçük parçalara böler.

Soru 9
I. Akış diyagramlarında seçimli yapılar ve döngü yapıları ifade edilebilir.
II. Akış diyagramları problemin görsel olarak ifade edilmesini sağlar.
III. Akış diyagramlarının ifade şekli programlama dillerine göre değişkenlik gösterir.
IV. Akış diyagramı, standartlaştırılmış elemanlardan oluşur.
Akış diyagramları ile ilgili olarak yukarıdaki ifadelerden hangisi ya da hangileri doğrudur?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Akış diyagramları standart sembollerden oluşur (IV), problemin çözümünü görsel olarak ifade eder (II) ve seçim ile döngü yapılarını gösterebilir (I). III yanlıştır: akış diyagramları programlama dilinden bağımsızdır; hangi dilde kodlanacağına göre değişmez.

Soru 10
I. Özyinelemeli fonksiyonlar, geri değer döndürmeyen alt programlarda kullanılırlar.
II. Bu yapı, kodun uzamasına sebep olur.
III. Programın kendi kendisini çağırdığı bir yapı söz konusudur.
IV. Programın kendisini çağırması bir noktada sonlanmalı, programın sonsuz döngüye düşmemesine dikkat edilmelidir.
Yukarıda özyinelemeli alt programlar ile ilgili bazı ifadeler yer almaktadır. Bu ifadelerden hangisi veya hangileri yanlıştır?
BDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

I yanlıştır: özyineleme yalnızca değer döndürmeyen alt programlara özgü değildir; faktöriyel gibi değer döndüren fonksiyonlarda da sıkça kullanılır. II yanlıştır: özyineleme genellikle kodu kısaltır ve sadeleştirir. III (alt programın kendini çağırması) ve IV (bir sonlanma koşulu olmalı, aksi halde sonsuz döngü oluşur) doğrudur.

Soru 11
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?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

II yanlıştır: alt programların temel faydası, programın farklı yerlerinden tekrar tekrar çağrılabilmeleridir. IV de yanlıştır: alt programlar bir ana program (ya da başka bir program) tarafından çağrılarak çalışır, tek başına çalışmaz. I (yapısal programlama sağlar) ve III (parametre türlerinin uyumlu olması gerekir) doğrudur.

Soru 12
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 11. SORU-min
Tasarlanan iki ayrı kaba kodda şu işlemler yapılmaktadır:
“Her iki kaba kodda da kullanıcının birer sayı girmesi istenir. Birinci kaba kodda sayı 10’dan küçükse sayının 5 katı hesaplanır, sayı ve sonuç ekrana yazdırılır. İkinci kaba kodda sayı 10’a eşit veya 10’dan büyükse sayının 2 katının 8 fazlası hesaplanır. Ekrana sadece sonuç yazdırılır.”
Verilen anlatıma göre yukarıdaki kaba kodlardan hangisi veya hangileri doğrudur?
CDoğru cevap
Soru 13
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 12. SORU-min
I. Bu akış diyagramının kaba kodu şu şekilde ifade edilebilir:
BAŞLA
toplam_1 = 0, toplam_2 = 0
FOR i = 1 TO 100
EĞER (i ≥ 50) İSE
(toplam_1 = toplam_1 + i)
EĞER (i < 50) İSE
(toplam_2 = toplam_2 + i)
NEXT i
YAZ (toplam_1, toplam_2)
BİTİR
II.Bu akış diyagramında, 0 ve 100 arasındaki sayılardan, 50’ye eşit ve 50’nin üzerinde olan sayıların toplamı “toplam_1”, 50’den küçük olan sayıların toplamı “toplam_2” değişkenlerinde saklanmaktadır. Bu değişkenlerin tuttuğu toplam sonuçları ekrana yazdırılmaktadır.
III. Bu akış diyagramında for döngüsünden yararlanılmıştır.
IV. Bu akış diyagramında sayılar her adımda ikişer artmaktadır.
Yukarıda bir akış diyagramı verilmiştir. Bu akış diyagramı ile ilgili olarak aşağıdaki şıklardan hangisi veya hangileri doğrudur?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

I'deki kaba kodda FOR i = 1 TO 100 döngüsü STEP belirtilmeden yazıldığı için i her adımda 1 artar; i ≥ 50 olanlar toplam_1e, i < 50 olanlar toplam_2ye eklenir ve sonunda ikisi yazdırılır. II bu işleyişi doğru özetler, III'teki for döngüsü kullanımı da doğrudur. IV yanlıştır, çünkü sayılar ikişer değil birer artmaktadır. Bu yüzden doğru ifadeler I, II ve III'tür.

Soru 14
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 13. SORU-min
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 hangi şıkta doğru verilmiştir?
DDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Bir sayının çift olup olmadığı, 2'ye bölümünden kalanla anlaşılır. % (mod) operatörü kalanı verir; A % 2 = 0 ise A çifttir. A / 2 = 0 bölümü kontrol eder (yalnızca A=0 için doğru olur), A * 2 = 0 ise çarpımı kontrol eder; ikisi de çiftliği test etmez.

Soru 15
Bir arama algoritması için aşağıdaki ifadelerden hangisi doğrudur?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Bir arama algoritmasında en kötü durum, algoritmanın en fazla adımı attığı durumdur. Aranan eleman dizide yoksa, örneğin doğrusal aramada dizinin tüm elemanlarına bakılmak zorunda kalınır ve bu en kötü durumdur. Diğer şıklar yanlıştır: eleman dizide olmasa da algoritma çalışır, aranan eleman ilk eleman olabilir, performans veri boyutuna bağlıdır ve ikili arama gibi algoritmalar değerleri tek tek taramaz.

Soru 16
I. Diziler sayısal olmayan değerleri tutabilir.
II. Diziler mantıksal değerleri tutabilir.
III. Dizideki elemanların pozisyonunu işaret etmek için indis değeri kullanılır.
IV. Aynı dizinin içinde farklı tiplerde eleman bulunabilir.
Diziler ile ilgili olarak yukarıdaki ifadelerden hangisi veya hangileri yanlıştır?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Diziler sayısal olmayan (karakter, metin) ve mantıksal (true/false) değerleri tutabilir ve elemanların konumu indis ile belirtilir; bu yüzden I, II ve III doğrudur. IV yanlıştır: bir dizideki tüm elemanlar aynı veri tipinde olmalıdır; örneğin int dizisine metin konamaz.

Soru 17
Bir iş yerinin mesai saatleri 8:30-17:30 arasındadır. Girilen saati kontrol ederek iş yerinin mesai saatleri dışında olduğunu belirten kaba kod aşağıdakilerden hangisidir?
EDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

Mesai saatleri dışında olmak, saatin 8:30'dan önce VEYA 17:30'den sonra olması demektir; iki koşuldan herhangi birinin sağlanması yeterli olduğu için VEYA kullanılır: saat < 8:30 VEYA saat > 17:30. VE ile kurulan saat > 8:30 VE saat < 17:30 koşulu ise tam tersine mesai saatleri içini ifade eder.

Soru 18
I. Algoritma yardımı ile bir problemin çözümüne dair adımlar tek tek veya aşama aşama ifade edilemez.
II. Bir arama algoritması, istenen elemanı dizide arayabilmek için, dizi elemanlarının sıralanmış olmasını gerektirebilir.
III. Arama algoritmalarının performansı algoritmadan algoritmaya farklılık gösterir.
IV. Sıralama algoritmalarından bazıları, elemanların karşılaştırılarak sıralanması mantığına göre çalışır.
Algoritmalar ile ilgili olarak yukarıdaki ifadelerden hangisi ya da hangileri yanlıştır?
ADoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

I yanlıştır, çünkü algoritmanın tanımı zaten bir problemin çözüm adımlarını sırasıyla, adım adım ifade etmektir. II doğrudur (ikili arama sıralı dizi gerektirir), III doğrudur (arama algoritmalarının performansı farklıdır) ve IV doğrudur (kabarcık sıralaması gibi algoritmalar elemanları karşılaştırarak çalışır).

Soru 19
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 18. SORU-min
Yukarıda verilen kaba kodun çıktısı aşağıdakilerden hangisidir?
ADoğru cevap
Soru 20
Algoritmalar ve Programlamaya Giriş (Güz) 2023-2024 Final Soruları 19. SORU
Bir öğrenci ders kapsamında iki farklı sınava girmektedir. Birinci sınavın %30’unu, ikinci sınavın %70’ini hesaplayıp toplam sınav puanını hesaplayan ve sonucu kullanıcıya gösteren programda soru işareti olan yere ne yazılmalıdır?
ADoğru cevap
Soru 21
Çift boyutlu dizilerde doğrusal arama yapmanın zaman karmaşıklığı aşağıdakilerden hangisi ile ifade edilir?
CDoğru cevap
Açıklama 🤖 Yapay zekâ açıklaması

İki boyutlu (n×n) bir dizide doğrusal arama yaparken en kötü durumda her satır ve her sütundaki tüm elemanlara bakılır. İç içe iki döngüyle n·n = n² eleman tarandığı için zaman karmaşıklığı O(n²) olur. Tek boyutlu dizide doğrusal arama ise O(n)'dir.