فرض کنید چند نفر دور هم حلقه زده اند . نفر اول یک تفنگ دارد که به نفر دوم شلیک کرده و سپس اسلحه را به نفر بعدی میدهد . وی نیز نفر بعد خود را کشته و اسلحه را به نفر بعدی خود میدهد . این چرخه به همین صورت ادامه پیدا میکند تا در نهایت یک نفر زنده میماند .
برنامه ای بنویسید که تعداد افراد را بگیرد و نفر برنده را معرفی کند .
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 11
1 2 3 4 5 6 7 8 9 10 11 12
1 2 3 4 5 6 7 8 9 10 11 12 13
1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#include <iostream.h>
#include <stdio.h>
main()
{
int n=1,a,i;
cout<<"Please Enter Number of Player : ";
cin>>a;
for (i=1;2*n<=a;++i)
n*=2;
a=((a-n)*2)+1;
cout<<"The winner is Player Number "<<a;
getchar();
}