Uyanık Asker (Kısa Kod)

Soru ?

Kral askerlerinden 1000 tanesinin yolsuzluk yaptığını öğrenir ve onları kılıca dizmeye karar verir. İçlerinden bir tanesi krala “Kralım! Hepimizi öldüreceksiniz ama benim bir fikrim var. Bir halka oluşturalım ve birimiz kılıcı alıp sağındaki askeri öldürsün ve kılıcı sağındaki sağ askere versin. O şekilde 1 kişi kalıncaya kadar devam edelim. Son kalan askeri de bağışlayın.” diyerek bir teklifte bulunur. Her askerin cezasını arkadaşı vereceği için bu fikir kralın aklına yatar. Bu durumda ilk kılıcı alan askere 1 numara dersek kaç numaralı askerin hayatta kalacağını hesaplayan C/C++ programını yazınız.

Cevap

for(int kes,ks=2,kesil=2;ks<=1024;kesil=ks+1,ks*=2)
{
for(kes=1;kesil<=1000; kes+=ks,kesil+=ks)
printf( “%d.Adam %d. adami keser\n”,kes,kesil);
printf(”%d Sag Kaldi\n”,kes-ks);
}

Hüseyin Bora ABACI
Sorunun Sorulduğu yer

Sorunun Cıktısı

Sorunun diğer cevapı C programı

0 Yanıt, “Uyanık Asker (Kısa Kod)”


  1. Yorum yapılmamış

Yorum Yapın

Yorum yapabilmeniz için giriş yapmanız gerekli.




 

Mayıs 2008
M T W T F S S
« Aug    
 1234
567891011
12131415161718
19202122232425
262728293031  

Top Clicks

  • Hiçbiri