من هم یه برنامه ارم که با ++c نوشتم. درباره فروش بلیط اتوبوس هست. جالبه
#include <iostream>
#include <conio.h>
#include <stdlib.h>
using namespace std;
int main ()
{
char bus[46]={'\0'} ;
int av=0,men=0,women=0,option,req=0 ;
int x,y,z ;
while (1)
{

cout<<"\n 1-Buy New Ticket\t2-View Sold Seats\t3-Exit\n" ;
cout<<" ----------------------------------------------------\n" ;
cout<<" Select Your Operation : " ;
cin>>option ;
switch (option)
{
case 1 :
{
/*clrscr() ;*/
for (int i=0 ; i<46 ; ++i)
{
if (bus[i]=='\0')
{
av=i ;
break;
}
}
cout<<"\n "<<45-av<<" tickets are available\n" ;
if (45-av==0)
{
getch() ;
break ;
}
cout<<"\n Enter the number of tickets you want : " ;
cin>>req ;
if (45-av<req)
{
cout<<"\n The tickets are not available !!! " ;
getch() ;
break ;
}
cout<<"\n Enter the number of men & women by the pattern " ;
cin>>men>>women ;
if (av==0)
{
x=av;
for (y=0 ; y<women ; ++y,++x)
{
bus[x]='f' ;
}
for (z=0 ; z<men ; ++z,++x)
{
bus[x]='m' ;
}
break;
}
if (av>=40)
{
///
if (av==40)
{
x=av;
for (y=0 ; y<women ; ++y,++x)
{
bus[x]='f' ;
}
for (z=0 ; z<men ; ++z,++x)
{
bus[x]='m' ;
}
break;
}
///
if (men>0 && women>0)
{
if (bus[av-1]=='f')
{
x=av;
for (y=0 ; y<women ; ++y,++x)
{
bus[x]='f' ;
}
for (z=0 ; z<men ; ++z,++x)
{
bus[x]='m' ;
}
break;
}
if (bus[av-1]=='m')
{
x=av;
for (y=0 ; y<men ; ++y,++x)
{
bus[x]='m' ;
}
for (z=0 ; z<women ; ++z,++x)
{
bus[x]='f' ;
}
break;
}
}
//////
if (men==0 ||women==0)
{
x=av ;
if (men==0)
{
if (bus[av-1]=='f')
{
for (z=0 ; z<women ; ++z,++x)
{
bus[x]='f' ;
}
}
else
{
cout<<"\n This Seat is not available !!" ;
getch() ;
break ;
}
}
if (women==0)
{
if (bus[av-1]=='m')
{
for (y=0 ; y<men ; ++y,++x)
{
bus[x]='m' ;
}
}
else
{
cout<<"\n This Seat is not available !!" ;
getch() ;
break;
}
}
break ;
}
}
if (men>0 && women>0)
{
if (bus[av-1]=='f')
{
x=av;
for (y=0 ; y<women ; ++y,++x)
{
bus[x]='f' ;
}
for (z=0 ; z<men ; ++z,++x)
{
bus[x]='m' ;
}
break;
}
if (bus[av-1]=='m')
{
x=av;
for (y=0 ; y<men ; ++y,++x)
{
bus[x]='m' ;
}
for (z=0 ; z<women ; ++z,++x)
{
bus[x]='f' ;
}
break;
}
}
if(men==0 || women==0)
{
if (av%4==0)
{
x=av;
if (women==0)
{
for (y=0 ; y<men ; ++y,++x)
{
bus[x]='m' ;
}
}
if (men==0)
{
for (z=0 ; z<women ; ++z,++x)
{
bus[x]='f' ;
}
}
break ;
}
//
if (av==2 ||av%4==2)
{
x=av;
if (women==0)
{
for (y=0 ; y<men ; ++y,++x)
{
bus[x]='m' ;
}
}
if (men==0)
{
for (z=0 ; z<women ; ++z,++x)
{
bus[x]='f' ;
}
}
break;
}
//
if (av==1 || av==3 || av%4==1 || av%4==3)
{
x=av;
if (women==0)
{
if (bus[av-1]=='m')
{
for (y=0 ; y<men ; ++y,++x)
{
bus[x]='m' ;
}
}
else
{
cout<<"\n This Seat is not available !!" ;
getch() ;
break;
}
}
if (men==0)
{
if (bus[av-1]=='f')
{
for (z=0 ; z<women ; ++z,++x)
{
bus[x]='f' ;
}
}
else
{
cout<<"\n This Seat is not available !!" ;
getch() ;
break ;
}
}
break;
}
//
}
break;
}
case 2 :
{
/*clrscr() ;*/
for (int j=0 ; j<45 ; ++j)
{
if (j<=40)
{
if (j%4==0)
cout<<"\n " ;
if (bus[j]!='\0')
cout<<bus[j] ;
else
cout<<"0" ;
if (j==1 || j%4==1)
cout<<" " ;
}
else
{
if (bus[j]!='\0')
cout<<bus[j] ;
else
cout<<"0" ;
}
}
getch() ;
break ;
}
case 3 :
{
exit(1) ;
}
}
}
return 0 ;
}