1’den 20’ye kadar numaralandırılmış anahtarlar ve yine 1’den 100’e kadar numaralandırılmış kapılar bulunmaktadır. Anahtar numarası kapı numarasını tam bölebiliyor ise anahtar kapıya uymaktadır. İlk anahtardan başlanarak bütün anahtarlar bütün kapılara denenmektedir. Anahtarın kapıya uyması durumunda kapı açık ise kapatılır, kapalı ise açılır. Bu işlem sonucunda açık bulunan kapılar kaç numaralı olanlarıdır?
#include <cstdlib>
#include <iostream>
using namespace std;
int main(void)
{
int kapi[100];
for(int i=0;i<100;i++){
kapi[i] = -1; } //Bütün kapılar kapalı
cout << “Acik Kapilar: \n”;
for(int i=0;i<100;i++){
for(int a=1;a<=20;a++){
if((i+1)%a==0)
kapi[i] *=-1;
}}
for(int i=0;i<100;i++){
if(kapi[i]==1)
cout << i+1 << “\t”;}
cout << “\n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}