Algoritma Soru Örnekleri # Part 1

BAMSI

Uzman üye
5 Ocak 2016
1,283
2
Nereye..


Benim gibi algoritma çözmeyi sevenler ve kendini geliştirmek isteyenler kolay,orta ve zor düzeyde olmak üzere sırasıyla örnek soruları sizin için paylaşıyorum..



1: Dışardan girilen sayının ikinin kuvveti olup olmadığını bulan programı yazınız.
2: Saat ve dakika değerleri dışardan girilecektir. Bu değerler kullanılarak akrep ve
yelkovan arasındaki açıyı bulan programı gerçekleştiriniz.
3: x ve y pozitif tamsayı olmak üzere, x sayısının çarpanları toplamı y sayısına eşit ise
bu iki sayı arkadaştır. 100 ile 999 arasındaki arkadaş sayıları programın algoritmasını
ve akış diyagramını çiziniz.
4: 3. Soruyu C dilinde yazınız.
5: Dışardan girilen sayının basamaklarını ekrana yazdıran programı yazınız.
6: 2, 10.000 arasında bulunan ve tüm basamak değerleri asal sayı olan sayıları ekrana
yazdıran programı yazınız.
7: Dışardan girilen sayıyı ikili tabana çerine programı yazınız.
8: Dışardan derecesi girilen binom üçgenini ekrana yazdıran programı yazınız.
9: Dışardan girilen sayının asal toplamlarını bulup ekrana yazdıran programı yazınız.
10: Craps oyunu dünyanın her yerinde oynanan en basit kumar oyunudur. Bu oyun iki
zarla oynanan bir oyundur. Oyuncu bu oyunu kasaya karşı oynanmaktadır.
Zarları atacak oyuncu oyunu kasaya (kumarhaneye) karşı oynar. Atılan iki zarın
toplam değeri
7 ya da 11 ise oyuncu kazanır.
2, 3, 12 ise oyuncu kaybeder. (Buna craps denir!)
İki zarın toplam değeri yukarıdakilerin dışında bir değer ise (yani 4, 5, 6, 8, 9, 10)
oyun şu şekilde devam eder:
Oyuncu aynı sonucu buluncaya kadar zarları tekrar atar. Eğer aynı sonucu bulamadan
önce oyuncu 7 atarsa (yani atılan iki zarın toplam değeri 7 olursa) oyuncu kaybeder.
Eğer 7 gelmeden önce oyuncu aynı sonucu tekrar atmayı başarırsa ,kazanır.
Birkaç örnek :
Oyuncu zarları attı, zarların toplam değeri :
11 oyuncu kazandı. Yeni oyun oynanacak.
3 oyuncu kaybetti. Yeni oyun oynanacak
12 oyuncu kaybetti. Yeni oyun oynanacak
7 oyuncu kazandı. Yeni oyun oynanacak.
9 sonuç belli değil, oyuncu tekrar zar atacak.
8 sonuç belli değil, oyuncu tekrar zar atacak.
11 sonuç belli değil oyuncu tekrar zar atacak.
5 sonuç belli değil oyuncu tekrar zar atacak.
9 oyuncu kazandı. (7 atmadan aynı zarı tekrar attı). Yeni oyun oynanacak.
6 sonuç belli değil, oyuncu tekrar zar atacak.
3 sonuç belli değil, oyuncu tekrar zar atacak.
10 sonuç belli değil, oyuncu tekrar zar atacak.
7 oyuncu kaybetti. (Aynı zarı tekrar atamadan 7 geldi)
Böyle bir oyunu bir kez oynadığınızda kazanma olasılığınız nedir?
Bu oyunu simüle ederek bilgisayara 100.000 kez oynatan, ve oyuncunun kazanma
olasılığını hesaplayan bir C programı yazınız.
11: Girilen sıcaklık değerini Celciustan Fahrenheita çeviren programı yazınız.
12: 10.000 elemanlı ve değerler [0,100] arasında rastgele üretilmiş dizide en çok
yinelenen elemanı bulan C programını yazınız.
13: Dışardan girilen bir dizinin en büyük ve en küçük ikinci elemanlarını bulan
programı yazınız.
14: Dışarıdan girilen bir dizinin tek ve çift elemanlarını kendi arasında sıralayan
programı yazınız.
15: Matematikte sıklıkla kullanılan e sayısı yaklaşık olarak 2.7 olarak
hesaplanmaktadır. e sayısının formülü ise olarak hesaplanmaktadır. Dışardan e = Σ
n
i=0
1
i!
girilen n değerine göre e sayısını hesaplayan programı yazınız.
16: Dışardan girilen 1’den büyük tamsayıya en yakın asal sayıyı bulan programı
yazınız.
17: Aşağıdaki denklemin sonucunu hesaplayıp ekrana yazdıran programı yazınız.
Π 20
n=2
Σ n
i=1
i+n
i−n
18: Vergi iadesini hesaplayan programı yazınız. ( Emekli aylığı alanlar için: 0-180
milyon arası %10, 180-360 milyon arası %20, 360-600 milyon arası %12, 600 milyon
üzeri % 5)
19: Dışardan girilen iki sayının OBEB ve OKEK’ini bulan programı yazınız.
20: Kenar uzunlukları dışardan girilen üç sayının üçgen oluşturup oluşturmadığını,
üçgen oluşturuyorsa üçgenin tipini ekrana yazdıran programı yazınız.
21: 100 tane kapı var. Bu kapılar 1'den 100'e kadar numaralandırılmış. Kapıların hepsi
kilitli. Elimizde 1'den 20'ye kadar numaralandırılmış 20 tane anahtar var. Bir kapının
numarası bir anahtarın numarasına tam bölünüyorsa o anahtar o kapıyı açabiliyor (ya
da kilitleyebiliyor!) 1 numaralı anahtardan başlayarak her anahtar için kapıları
dolaşılıyor. Anahtar ile kapı açılıyor ya da kilitleniyor. Yani kapı açıksa kilitleniyor kapı
kilitli ise kapı açılıyor.
20. turdan sonra, yani son anahtarın kullanılmasından sonra hangi kapılar açık hangi
kapılar kilitlidir? Bir C programı yazarak açık olan kapıların numaralarını ekrana
yazdırın.
22: [100,999] arasında rastgele sayı üretilecektir. Kullanıcı sayıyı tahmin etmek için
dışardan on adet tahmin girecektir. Program tahmin ve girilen değere göre arttır veya
azalt uyarısını verecektir. Eğer kullanıcı ilk tahminde sayıyı tahmin ederse 100 puan 2.
Tahminde 90, 10. Tahminde ise 10 puan verecektir. Bu şartları sağlayan programı C
dili kullanarak yazınız.
23: asalx fonksiyonu kendine gönderilen sayının asal olup olmadığını sınar eğer sayı
asal ise sayının basamak değerlerinin toplamının asal olup olmadığını sınar, bu işlem
tek basamağa indirgenene dek sürer. Bu tip sayılar asaloğulları denmektedir. 10.001
ile 19500 arasında kaç tane asaloğlu sayı olduğunu bulan programı asalx
fonksiyonunu kullanarak yazınız.
24: Çağrıldığında 01.01.1900 ile 31.12.2015 tarihleri arasında rastgele bir tarih
üretecek fonksiyonu C programı kullanarak yazınız.
25: 1 den büyük asal olmayan bir tamsayının rakamlarının toplamı, sayı asal
çarpanlarına ayrılarak yazıldığında bu yazılışta bulunan tüm asal sayıların
rakamlarının toplamına eşit oluyorsa bu tür sayılara Smith sayısı denir.
Örneğin:
728 = 2 * 2 * 2 * 7 * 13
7 + 2 + 8 = 2 + 2 + 2 + 7 + 1 + 3
olduğundan 728 bir Smith sayısıdır. 1 ile 10000 arasındaki tüm smith sayılarını
bularak ekrana yazdıran bir C programı yazınız.
26: strncat fonksiyonunu kullanmadan bu fonksiyonun görevini yapan metodu
yazınız.
27: strncmp fonksiyonunu kullanmadan bu fonksiyonun görevini yapan metodu
yazınız.
28: strncpy fonksiyonunu kullanmadan bu fonksiyonun görevini yapan metodu
yazınız.
29: strrev fonksiyonunu kullanmadan bu fonksiyonun görevini yapan metodu yazınız.
30: Kendisine gönderilen katardaki Türkçe karakterleri (Ç, Ğ, İ, Ö, Ş, Ü, ç, ğ, ı, ö, ş, ü)
İngilizceye çeviren metodu yazınız.
31: Bir tombala torbasında 1'den 99'a kadar numaralanmış (99 dahil) pullar
bulunmaktadır. Bu tombala torbasıyla aşağıdaki oyunlar oynanmaktadır:
Çekilen bir pul torbaya geri atılmamak üzere;
1. Oyun: Torbadan 3 pul çekiliyor. Çekilen pulların toplamı 150'den küçük ise oyuncu
kazanıyor.
2. Oyun: Torbadan 3 pul çekiliyor. Çekilen pulların toplamı asal sayı ise oyuncu
kazanıyor.
3. Oyun: Torbadan 3 pul çekiliyor. En büyük değerli pul ile en küçük değerli pul
arasındaki fark ortanca değerli puldan büyükse oyuncu kazanıyor.
Oynanacak her bir oyun için oyuncunun kazanma olasılığını en az 30000 oyunu simule
ederek hesaplayınız!

 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.