취미생활2009. 12. 20. 17:28


로또 프로그램을 짜 보았습니다!!!

C++로 로또프로그램을 짠 것이고.

작동 환경은 VS2005이상 입니다.

VS 6++(?) 에서는 헤더를 바꾸어 주셔야 합니다.----어디까지나 cpp파일을 쓸 사람만.

참고로 15분작이라서.. 퀄리티는 보장 못 함

#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;

class rotto{
 int a[7],b[7];

public :

 rotto();
 void check();
};


rotto::rotto(){
 int i,j;

 srand(time(0));

 cout<<"로또 번호를 랜덤으로 추첨합니다."<<endl;

 for(i=0;i<7;i++){
xx:
  a[i]=rand()%45+1;
  for(j=0;j<i;j++)
   if(a[i]==a[j])
    goto xx;
 }

 for(i=0;i<6;i++)
  cout<<a[i]<<" ";

 cout<<endl;

 cout<<"보너스 번호는 "<<a[6]<<"입니다"<<endl;
}

void rotto::check(){
 int i,j,sum=0;
 char s;
 cout<<endl;
 cout<<endl;
 cout<<"귀하가 로또를 할 때 입력한 번호를 입력해 주세요"<<endl;
 cout<<"숫자 한 개 입력 후 엔터(예 : 7 엔터 8엔터...)이런 식으로 6번을 입력 하시면 됩니다."<<endl;

 for(i=0;i<6;i++)
  cin>>b[i];

 for(i=0;i<6;i++)
  for(j=0;j<6;j++)
   if(a[i]==b[j])
    sum+=1;

 if(sum==3)
  cout<<"로또 5등에 당첨 되셨습니다."<<endl;
 else if(sum==4)
  cout<<"로또 4등에 당첨 되셨습니다."<<endl;
 else if(sum==5){
  if(a[6]==b[5])
   cout<<"로또 2등에 당첨 되셨습니다."<<endl;
  else
   cout<<"로또 3등에 당첨 되셨습니다."<<endl;
 }
 else if(sum==6)
  cout<<"로또 1등에 당첨 되셨습니다."<<endl; 
 else
  cout<<"당첨되지 않으셨습니다."<<endl;

 cout<<"아무키나 누르면 종료 됩니다.(글자&숫자)"<<endl;
 cin>>s;
 exit(0);

}

 


int main(){
 rotto s;

 s.check();
}



프로그램 소스와

실행파일(exe)을 동봉합니다.

심심하시면 한 번 해보세요.

..........................................

수정 사항

2등과 3등이 제대로 나누어 지지 않는 것을 수정하였습니다.






Posted by 희망단풍