Tekil Mesaj gösterimi
c++ romalı asker programı
Alt
  (#1)
em3 is Offline
[10]Yeni Üye
em3 will become famous soon enoughem3 will become famous soon enough
 
em3 - ait Kullanıcı Resmi (Avatar)
 
>Mesaj Sayısı: 672
>Açtığı Konu: 199

Level: 23 [♥ Bé-Yêu ♥]
Paylaşım: 113 / 565
Güç: 224 / 1851
Tecrübe: 60%

Üyelik tarihi: Jul 2007
Kullanıcı No: 105085
Nerden: evden
Rep Puani: 100
Rep Derecesi : em3 will become famous soon enoughem3 will become famous soon enough
   
Standart c++ romalı asker programı - 12-18-2007


#include"stdio.h"
#include"conio.h"
#include"stdlib.h"

int tarat(char *ptarat,char *pilk,int kisi)
{
int kalanlar=0; ptarat=pilk;

for(int i=0; i<kisi; i++,ptarat++)
{
if( *ptarat == 1 )
kalanlar++;
}
return kalanlar;
}
///////////////////////////////////////

void roma(char *pilk,char *pson,char *pgez,int kac,int kisi)
{//fonk.
char *ptarat; int kalanlar, sayac=1;
pgez = pilk; ptarat = pilk;
for( int h=0 ; h < kac+50 ; h++)
{//for
pgez = pilk;
for( int i=1; i < kisi+1 ; pgez++, sayac++, i++)
{//for
switch (*pgez){
case 0 : if(pgez == pson) pgez = pilk ; sayac-- ; break;

case 1 : if(sayac == kac ){*pgez = 0 ; sayac = 0 ;}
kalanlar = tarat(ptarat,pilk,kisi);
if(kalanlar < kac) goto cikis; }
}//for
}//for
cikis :
}//fonk.

////////////////////////////////////////


void main(void)
{
char *pilk,*pson,*pgez;
int kisi,kac;
clrscr();
printf("\n\tka‡ kisi? : ");
scanf("%d",&kisi);
printf("\n\tka‡nc vurulacak? :");
scanf("%d",&kac);
pgez = (char *)malloc(kisi);
pilk = pgez;
pson = pgez + kisi;

for( int i=0; i<kisi; i++)
pilk[i]=1;

roma(pilk,pson,pgez,kac,kisi);

pgez = pilk;
for(int k=0 ; k<kisi; k++,pgez++)
if(*pgez == 1)
printf("\n %d. yer msait!",k+1);

getch();
}


(GK)em3
  
Alıntı ile Cevapla