21 Ocak 2014 Salı

C dersi çalışma soruları

  1. Daha az sayıda döngü adımı ile asal sayı bulabilen bir algoritma geliştiriniz.
  2. 1 ile 1000 arasındaki asal ve mükemmel sayıları bulan ve ekranda görüntüleyen programı yazınız. (Mükemmel sayı: bölenlerinin toplamı kendisine eşit olan sayı... 28 = 1+2+4+7+14).
  3. Kullanıcıdan 2 sayı alıp bu sayıların en büyük ortak bölenini ve en küçük ortak katını bulan programı yazınız.
  4. Fibonacci serisi 1 ve 1 ile başlayıp, bir elemanın değerinin kendisinden önceki iki elemanın toplanması ile oluşturulduğu bir seridir:
               
                Kullanıcının klavyeden girdiği sayıda Fibonacci serisi elemanını gösteren programı yazınız.
  1. 10 elemanlı bir dizinin elemanlarının aritmetik ortalamasını bulan programı yazınız.
  2. Matris Çarpımı programı yazınız.
    1. Matrislerin boyutlarını kullanıcı belirleyecek ve sonrasında değerleri girecektir.
    2. Matrislerin boyutları çarpma işlemine göre uygun olması için ilk matrisin sütun değeri ile ikinci matrisin satır değeri eşit girilmesi sağlanacaktır.
  1. Kullanıcının ENTER tuşuna basana kadar klavyeden girdiği her şeyi tersten (sondan başa doğru) gösteren programı yazınız.
  2. 100 Adam ve 100 kapımız var. 1. adam 1’in katları olan kapılardan, 2. adam 2’nin katları olan kapılardan, ...., N. Adam N’in katları olan kapılardan, ... , 100. Adam 100’ün katları olan kapılardan geçerek kapıların konumlarını değiştiriyor. (Kapı açıksa kapatıyor, kapalıysa açıyor). En başta bütün kapıların kapalı olduğunu kabul edersek, 100. adam da geçtikten sonra hangi kapıların açık olduğunu bulan programı yazınız.
  3. Romalı problemi: Roma’da Kral 21 kişinin öldürülmesine karar veriyor. Cellat fazla yorulmamak için öldürülecek olanları çember biçiminde diziyor. Herkesin eline bir balta veriyor. Öldürme kuralı olarak da 2. Kişi 3. Kişiyi öldürüyor. 5. Kişi 6. Kişiyi öldürüyor. Yani 2 kişi atlayıp 3. kişi öldürülüyor. Bu son iki kişi kalana kadar sürüyor. Son kalan iki kişi serbest bırakılacaktır. Serbest bırakılan kişilerin hangi numaralar olduğunu bulan programı yazınız.
  4. M.Ö. 2589-2566 yılları arasında yapıldığı tahmin edilen dünyanın 7 harikasından biri olan Keops Piramdi’nin en az 2.3 milyon taş bloktan oluştuğu tahmin edilmektedir.Piramidin tabanında kare biçiminde yerleştirilmiş N*N adet, ikinci katında (N-1)*(N-1), üçüncü katında (N-2)*(N-2), ... , N. katında (son kat) 1 taş blok olduğu kabul edilirse, piramitin kaç taş bloktan oluştuğunu ve kaç katlı olduğunu bulan programı yazınız (2.3 milyondan büyük olacak şekilde en az kaç kat olmalıdır).Piramidin tam 24 yılda bittiğini ve işçilerin günde 10 saat çalıştıklarını düşünelim. İşçilerin bir saatte ortalama kaç blok yerleştirdiklerini bulan SaatBasinaBlok fonksiyonu yazınız (1 yıl = 365 gün + 6 saat kabul edilecek).

11. Dışarıdan girilen sayının faktoriyelini WHILE döngüsüyle bulan programı yazınız.(0 sayısının faktoriyeli 1 negatif sayıların faktoriyeli olmaz)

12. int sayac[2]={0,1};
       for(int i=0;i<10;i++)
       {sayac[0]++;
       for(int j=i;j<10;j++)
       if(sayac[0]%7==0)
       sayac[1]++;
               }   
       for(int k=0;k<2;k++)
       printf("\n %d",sayac[k]);
            
               getche();  

Yukarıdaki program parcacıgının cıktısını yazınız ve algoritmik karmaşıklığını belirtiniz.

13. 5*5 lik matrisi
a) 25 elemanlı tek boyutlu diziye çeviriniz.
b) matirisi büyükten küçüğe doğru sıralayınız.
c) Matrisin formatlı çıktısını ekrana yazdıran program parçacığını yazınız.

14- 0 ile 10.000 arasında hem üçe hem 7 ' ye tam bölünebilen kaç adet sayı olduğunu ekrana yazdıran C programını yazınız.

15- 1+3+5+7+9+11 .... 2*N-1 dizisinin sonucunu ekrana yazdıran programı yazınız.

16- Dışarıdan girilen M ve N sayılarını * operatörü kullanılmadan çarpan programı yazınız ve algoritmik karmaşıklığını belirtiniz.

17- 100 -999 arasındaki armstrong sayıları bulan programı yazınız


1 yorum:

  1. hocam sizi internetten buldum ben lise öğrencisiyim bir ödevim var yardımcı olursanız çok sevineceğim çok acil bir ödev.
    ) Aynı firmada çalışan (Ahmet ve Hasan) iki işçiden birincisinin (Ahmet’in) aylık ücreti bir ay %50 artmakta, sonraki ay %25 azalmaktadır. Diğerinin (Hasan’ın) ise ücreti her ay %25 artmaktadır. Her ikisinin de yılbaşındaki başlangıç ücretleri ve hesaplanacak ay bilgisi klavyeden girildikten sonra ay ay ücretlerinin ne olacağını ve en sonunda hangi işçinin daha fazla (veya eşit) ücret alacağını hesaplayan programı yazınız.

    YanıtlaSil