فرض کنید چند نفر دور هم حلقه زده اند . نفر اول یک تفنگ دارد که به نفر دوم شلیک کرده  و سپس اسلحه را به نفر بعدی میدهد . وی نیز نفر بعد خود را کشته و اسلحه را به نفر بعدی خود میدهد . این چرخه به همین صورت ادامه پیدا میکند تا در نهایت یک نفر زنده میماند .

برنامه ای بنویسید که تعداد افراد را بگیرد و نفر برنده را معرفی کند .


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();

}