Algoritmalar ve Programlama
2016–2017 Vize (Ara Sınav) Çıkmış Soruları
- 20 soru
- Cevap anahtarı açık: çöz, sonucunu gör
- 1

Soru metni
Bir program geliştirici, tamsayılar üzerinde işlem yapan bir algoritmayı kontrol ederken, algoritmanın negatif tamsayılar ile çalıştırıldığında beklenenden farklı sonuçlar ürettiğini tespit etmiştir. Programcının karşılaştığı bu durumda, algoritmanın karşılayamadığı temel özellik aşağıdakilerden hangisidir? A) Verimlilik B) Açıklık C) Sonluluk D) Girdi ve çıktı bilgisi E) Doğruluk - 2

Soru metni
int fibonacci (int n) { if(n <= 0) { return 0; else it(n == 1) { return 1; else { return fibonacci (n-1) + fibonacci (n-2); Yukarıda gösterilen özyinelemeli fibonacci fonksiyonu, fibonacci(6) olarak çağrıldığında döndürülen değer kaç olur? A)| 6 B) 8 C) 9 16 E) 32 - 3

Soru metni
Algoritmaların gösterim yöntemleri ile ilgili aşağıdaki ifadelerden hangisi yanlıştır? A) Akış şeması, programcıya görsel bir kolaylık saglar. B) Bir algoritmayı konuşma dili ile ifade etmek mümkündür. C) Sözde kod, bilgisayar tarafından derlenip çalıştırılabilir. D) Akış şemasında algoritma adımlarını ifade eden kutucuklar yer alır. E) Sözde kod içerisinde programlama komutlarına benzer ifadeler yer alır. - 4

Soru metni
Sırt çantası problemi, kapasitesi belirli bir sırt çantasına, ağırlıkları ve değerleri bilinen nesneleri toplam değer en fazla olacak şekilde doldurmayı sorgulayan bir optimizasyon problemidir. Buna göre, sırt çantası probleminin çözümünde kullanılan en yaygın algoritma sınıfı aşağıdakilerden hangisidir? A) Kaba kuvvet algoritmaları B) Böl ve yönet algoritmaları C) Aç gözlü algoritmalar D) Dinamik programlama E) Geri izlemeli algoritmalar - 5

Soru metni
Veri yapıları ile ilgili aşağıdaki ifadelerden hangisi yanlıştır? A) Bir veri yapısının çalışma mantığını tarif etmek için günlük hayattan örneklerden yararlanılabilir. B) Veri yapılarının etkin kullanımı, işlemci verimliligini artırır. C) Veri yapısında veriler, belirli bir mantıksal düzen içerisinde saklanır. D) Bir veri yapısı için tanımlanan işlem, farklı bir veri yapısında yer almamalıdır. E) Veriye hızlı bir şekilde erişebilmek için veri yapılarından faydalanılabilir. - 6
![6. soru: int dizi[M][N]; şeklinde tanımlanmış bir tamsayı dizisinin tüm elemanlarını dolaşmak isteyen bir programcı kaç adet f…](/gorsel/ybs204u-algoritmalar-ve-programlama/cikmis-2016-2017-ara-12748/FdgHV1E6Rce2.png)
Soru metni
int dizi[M][N]; şeklinde tanımlanmış bir tamsayı dizisinin tüm elemanlarını dolaşmak isteyen bir programcı kaç adet for döngüsünü iç içe kullanmalıdır? A) 2 *M B) 2 aof.sorular.ne C) M* N D) M2 E) N2 - 7

Soru metni
Bir bağlı listenin dairesel bağlı liste sınıfına girebilmesi için listenin hangi özelliğe sahip olması gerekmektedir? A) Listedeki ilk düğümde liste sonunu işaret eden bir gösterici olmalıdır. B) Liste elemanları küçükten büyüğe doğru sıralı olmalıdır. C) Listenin son düğümü, liste başını işaret eden bir göstericiye sahip olmalıdır. D) Liste yapısında, listenin eleman sayısını saklayan bir tamsayı değişkeni tanımlanmalıdır. E) Listenin sabit bir uzunluğu olmalıdır. - 8
![8. soru: #include < stdio.h > #define N 8 int main(void) { int dizi [N] = (1,2,3,4); int a=1, i; for (i=0; iN; i++) { a *= diz…](/gorsel/ybs204u-algoritmalar-ve-programlama/cikmis-2016-2017-ara-12748/q46oTgRXo5qb.png)
Soru metni
#include < stdio.h > #define N 8 int main(void) { int dizi [N] = (1,2,3,4); int a=1, i; for (i=0; iN; i++) { a *= dizi [i]; printf ( " % d", a); return O; Yukarıdaki programda bir dizi tanımlaması yapılmış ve bu dizinin elemanları ile işlemler yapılmıştır. Buna göre, program çalıştırıldığında ekrana basılan değer kaç olur? A) 0 B) 4 C) 10 D) 16 E) 24 - 9

Soru metni
Dizilerde, dizi elemanlarına doğrudan erişimde kullanılan sayısal değerlere ne ad verilir? A) Duğüm B) Fonksiyon C) Tepe noktası D) Gösterici E Indis - 10

Soru metni
#include < stdio.h> struct Node ( int data; struct Node* next; struct Node* top = NULL; void push (int a) { struct Node* t = (struct Node*) malloc(sizeof(struct Node)); t->data = a ; if (top == NULL) { top = t; I/ Kuyruk boşken eleman eklemede bir eksiklik bulunuyor. else { t->next = top; top = t; Yığın veri yapısı üzerinde çalışan bir programcı, geliştirdiği programın push fonksiyonunda (kuyruğa eleman ekleme) bir eksiklik olduğunu fark etmiş ve bu durumu kod içerisinde bir yorum ile belirtmiştir. Fonksiyonun işlevini doğru olarak yerine getirebilmesi için programcinin yorum satırının altına eklemesi gereken komut aşağıdakilerden hangisidir? A) top-next = a; B) t->data = NULL; C) t-›data = top; D) top->next = NULL; E) free(top); - 11

Soru metni
void foo (TreeNode *root) { if (root != NULL) { foo (root->left); printf("%d ", root->data); foo (root->right); Ikili ağaç veri yapısı için tanımlanmış foo fonksiyonunun görevini en doğru şekilde tanımlayan ifade aşağıdakilerden hangisidir? A) Ağaçta yer alan düğüm sayısını hesaplamak B) Ağacın tüm düğümlerini gezinip, en küçük elemanı bulmak C) Önce sol alt ağacı, sonra kökü, en son olarak da sag alt ağacı gezinmek D) Ağacın kökünde yer alan elemanın değerini bulmak E) Once sol alt ağacı, sonra sağ alt ağacı, en son olarak da kökü gezinmek - 12

Soru metni
E F H D Yukarıda verilen ikili.S ağaç, Postorder gezinme yöntemi ile dolaşıldığında hangi harf dizilimi elde edilir? A) ABCDEFGH B) CBADFGHE C) CEGFBAHD D) FEBDHAGC E) FECBGHDA - 13

Soru metni
Ağaç veri yapılarında ağacın en üst noktasında bulunan düğüme ne ad verilir? A) Sag çocuk B) Sol çocuk C) Yükseklik D) Kok E) Dal - 14

Soru metni
3 7 12 9 Yukarıda gösterilen yığın ağacı, program içerisinde isminde bir dizi içerisinde saklanmaktadır. Bu dizinin indileri ve indilere karşılık gelen dizi elemanları için aşağıdakilerden hangisi söylenemez? A) A[O] = 3 B) A[1] = 3 C) A[2]= 7 D) A[3]= 5 E) A[4] = 12 - 15

Soru metni
Boş durumdaki bir ikili arama ağacına sırasıyla 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 sayıları ekleniyor. Oluşan son durum için ağacın yüksekliği kaç olur? A) 4 B) 5 C) 9 D) 10 E) 11 - 16

Soru metni
I. Problemi anla. II. Algoritma tasarım tekniğine karar ver. III. Algoritmayı analiz et ve kodunu yaz. IV. Algoritmayı tasarla ve doğruluğunu kanıtla. Algoritma tasarım ve analiz işleminin doğru sıralaması aşağıdakilerin hangisinde doğru olarak verilmiştir? A) I - II - III - IV B) I - II - IV - III C) III - IV - I - II D) IV - I - II - III E) IV -I-III - II - 17

Soru metni
Başlangıç: 34 15 20 27 46 30 17 95 1. Adım : 15 34 20 27 46 30 17 95 Araya sokma sıralama algoritmasında başlangıçtaki dizi ve birinci adım sonucu verilmiştir. Buna göre ikinci adımda elemanların sıralaması nasıl olur? A) 15, 20, 34, 27, 46, 30, 17, 95 B) 20, 34, 17, 27, 15, 30, 95, 46 C) 30, 17, 95, 15, 20, 34, 27, 46 46, 30, 17, 95, 15, 20, 34, 27 E) 95, 15, 20, 34, 27, 46, 30, 17 - 18

Soru metni
Aşağıdakilerden hangisi bir Fibonacci dizisidir? A) 0, 1, 1, 2, 3, 5, 8, 13, ... B) 1,2, 2, 4, 6, 10, 16, 26, ular.net C) 1,2, 4, 3, 5, 8, 9, 10, ... D) 2, 5, 7, 12, 19, 31, 49, E) 3, 5, 8, 13, 0, 1, 1, 2 - 19
![19. soru: int Sir3 (int Al ], int N) { if (N == 1) return A[O]; int orta = N / 2; int local1 = Sir3 (&A [O], orta); int local2…](/gorsel/ybs204u-algoritmalar-ve-programlama/cikmis-2016-2017-ara-12748/qeHDrrh3Z7jl.png)
Soru metni
int Sir3 (int Al ], int N) { if (N == 1) return A[O]; int orta = N / 2; int local1 = Sir3 (&A [O], orta); int local2 = Sir3 (&A [orta], N - orta); return local1 + local2; Yukarıdaki fonksiyon aşağıdakilerden hangisini hesaplamaktadır? A) Bir dizideki eleman sayısını B) Bir dizinin elemanları toplamını C) Bir dizideki pozitif sayıların toplamını D) Bir dizideki tek sayıların çarpımını E) Bir dizideki elemanların çarpımını - 20
![20. soru: int sir (int A[], int N) int i; int cvp; cvp = A[O] : for (i = 1; i < N; i++) { if (cvp < A[ i]) cvp = A[i] ; return…](/gorsel/ybs204u-algoritmalar-ve-programlama/cikmis-2016-2017-ara-12748/jl7IvtM2w2UG.png)
Soru metni
int sir (int A[], int N) int i; int cvp; cvp = A[O] : for (i = 1; i < N; i++) { if (cvp < A[ i]) cvp = A[i] ; return cvp; Yukarıdaki fonksiyona A=(4, 6, 10, 20, 1, 50} dizisi ve N=5 tamsayısı girdi olarak verilirse programın çıktısı aşağıdakilerden hangisi olur? A) 1 B) 4 C) 10 D) 20 E) 50
Bir şıkka dokun; doğru cevap hemen görünür.