Algoritma ve Programlamaya Giriş Ünite -5 (Güz)
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) : Alt Programlar, Fonksiyonlar
Alt Program
int Faktoriyel(int n)
BAŞLA
IF (n = 0) THEN
return 1
ELSE
return (n * Faktoriyel(n - 1))
END IF
BİTİR
Ana Program
BAŞLA
OKU (“Sayı giriniz:”, sayı)
______________________
YAZ (sonuç)
BİTİR
#1. Yukarıdaki kaba kodda kullanıcı tarafından girilen sayıya göre faktöriyel hesabı yapılmaktadır.
Ana programdan alt programın çağrılması için boş bırakılan yere gelmesi gereken doğru cevap, şıklardan hangisinde verilmiştir?
Cevap : B) int sonuç = Faktoriyel(sayı)
Açıklama : `Faktoriyel` alt programı `int` tipinde bir değer döndürmektedir (`return 1` veya `return (n * …)`). Değer döndüren fonksiyonlar çağrılırken, dönen değerin bir değişkene atanması gerekir. Ana programda `sonuç` değişkenine bu değerin atanması için `int sonuç = Faktoriyel(sayı)` komutu kullanılmalıdır.
#2. Kendini çağıran fonksiyonlara ne ad verilir?
Cevap : E) Özyinelemeli fonksiyon
Açıklama : Bir alt programın kendi tanımı içerisinde yine **kendi kendini çağırmasına** yinelenme (recursion), bu tür fonksiyonlara da **özyinelemeli (recursive) fonksiyon** denir.
#3. Metotların içerisinde tanımlanan değişkenler metot dışında kullanılabilir mi?
Cevap : B) Kullanılamazlar.
Açıklama : Alt programların (metotların) içerisinde tanımlanan değişkenler (yerel/local değişkenler) sadece o alt programın içinde geçerlidir. Alt program dışında kullanılamazlar (erişilemezler).
#4. Aşağıdaki şıklardan hangisi, “uzunluk” ve “genişlik” olmak üzere iki parametre alan ve iki parametrenin çarpımını döndüren “hesap_alanı” adlı bir alt programın çağrılmasını sağlar?
Cevap : A) alan = hesapla_alanı(uzunluk, genişlik)
Açıklama : Değer döndüren alt programlar (fonksiyonlar), `call` gibi bir komutla çağrılmazlar; bunun yerine, geri dönen verinin değerine uygun bir değişkene eşitlenerek (atanarak) çağrılırlar. Bu fonksiyon iki parametre aldığı için `hesapla_alanı(uzunluk, genişlik)` şeklinde çağrılmalı ve dönen değer `alan` değişkenine atanmalıdır.
#5. Programlamada alt programların kullanımı ile ilgili olarak aşağıdakilerden hangisi yanlıştır?
Cevap : D) Alt program kullanımı programın okunmasını, yazılmasını ve bakımını zorlaştırır.
Açıklama : Bu ifade yanlıştır. Alt programların amacı, programın “yapısal” olmasını sağlamak, kod tekrarını önlemek, böylece programın okunmasını, yazılmasını ve bakımını **kolaylaştırmaktır**. Tekrar eden kodda değişiklik yapılacağı zaman, bunu tek bir yerde yapmak, defalarca yapmaktan daha kolay ve hatasızdır.
Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.
#6. Özyinelemeli fonksiyonlar ile ilgili olarak aşağıdakilerden hangisi yanlıştır?
Cevap : D) Özyinelemeli fonksiyonlar, kodun uzamasına sebep olduğundan tercih edilmez.
Açıklama : Bu ifade yanlıştır. Özyinelemeli fonksiyonlar genellikle “kısa ve öz kodlar” oluştururlar. Kodun uzamasına sebep olmazlar, aksine bazı karmaşık problemleri (döngülerle yazımı uzun sürecek) daha kısa ve zarif bir şekilde ifade etmeyi sağlarlar.
Alt Program
int Topla (int a, int b)
BAŞLA
int t
t = a + b
return t
BİTİR
#7. 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?
Cevap : C) int Islem_Sonucu = Topla (sayi_1, sayi_2)
Açıklama : `Topla` fonksiyonu `int` tipinde bir değer döndürmektedir (`return t`). Bu nedenle çağrılırken dönen değerin `int` tipinde bir değişkene (örn: `Islem_Sonucu`) atanması gerekir. Ayrıca fonksiyon iki adet parametre (`int a, int b`) aldığı için, çağrılırken de iki adet (`sayi_1, sayi_2`) parametre gönderilmelidir. Bu şartları sağlayan tek şık C’dir.
Alt Program
int Topla (int a, int b)
BAŞLA
c = a + b
......
BİTİR
Ana Program
BAŞLA
int sonuç = Topla(x, y)
YAZ (c)
BİTİR
#8. Yukarıdaki kaba kodda Topla isimli alt program ana programdan çağrılmakta ve int tipinde iki değer alarak toplama işlemi yapmaktadır.
Bu kaba kodda yapılan hata seçeneklerden hangisinde doğru olarak verilmiştir?
Cevap : E) Alt programda tanımlanan bir değişken ana programda kullanılmaya çalışılmıştır.
Açıklama : Alt programların (fonksiyonların) içerisinde tanımlanan değişkenler (bu örnekte `c` değişkeni) o alt programa ait yerel (local) değişkenlerdir. Bu değişkenler, alt programın dışında (Ana Program içinde) kullanılamazlar ve geçersiz olurlar. Ana programdaki `YAZ (c)` komutu bu nedenle hatalıdır.
Alt Program
single Topla (int a, int b)
BAŞLA
t = a + b
return t
BİTİR
Ana Program
int sonuç = Topla (sayi1, sayi2)
#9. Yukarıdaki kaba kodda Topla isimli alt program ana programdan çağrılmakta ve single tipinde iki değer alarak toplama işlemi yapmaktadır.
Bu kaba kodda yapılan hata seçeneklerden hangisinde doğru olarak verilmiştir?
Cevap : D) Ana programdaki değişken ve ona atanan alt programdan değişkenin türleri farklıdır.
Açıklama : Alt program (`Topla`) `single` (ondalıklı sayı) türünde bir değer döndürmek üzere tanımlanmıştır. Ancak Ana programda, bu fonksiyondan dönen değer `int` (tam sayı) türündeki `sonuç` değişkenine atanmaya çalışılmaktadır. Değer döndüren alt programdan dönen değerin cinsi ile ana programda bu değeri karşılayan değişkenin türü uyuşmazsa hata alınır.
#10. Alt programların kullanımı ile ilgili aşağıdaki şıklardan hangisi yanlıştır?
Cevap : C) Değer döndürmeyen alt programlarda sonucu döndürmek için return komutu kullanılırsa değer döndürülebilir.
Açıklama : Değer döndürmeyen (void) alt programlar, tasarımları gereği bir sonuç değeri döndürmezler. `return` komutu bu tür alt programlarda sadece işlemi sonlandırmak (erken çıkmak) için değersiz olarak kullanılabilir, bir değer döndürmek için kullanılamaz. Bu attempt hata mesajına yol açar.
Öğrenme Yönetim Sistemi Öğrenci Dostu LOLONOLO bol bol deneme sınavı yapmayı önerir.
SONUÇ
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) : Alt Programlar, Fonksiyonlar
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) : Alt Programlar, Fonksiyonlar
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) : Alt Programlar, Fonksiyonlar
| Algoritma ve Programlama – Alt Programlar ve Fonksiyonlar Özeti | |
|---|---|
|
|
| @lolonolo_com |
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) Alt Programlar, Fonksiyonlar
Algoritma ve Programlamaya Giriş Ünite – 5 : Alt Programlar, Fonksiyonlar |
|
|---|---|
|
|
| @lolonolo_com |
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) Alt Programlar, Fonksiyonlar
![]() |
![]() |
Auzef sınav soruları, çıkmış sorular, deneme sınavları hepsi lolonolo’da ücretsiz.
Algoritma ve Programlamaya Giriş Ünite -5 (Güz) : Alt Programlar, Fonksiyonlar
Auzef Bilgisayar Programcılığı Güz Dönemi sınav soruları

