디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

C++ 공부 어케해야되냐 ?

ㅇㅇ(125.138) 2011.12.25 23:44:45
조회 113 추천 0 댓글 3

#include <iostream>
#include <stdio.h>
#include <time.h> // 타임함수 설정
#include <windows.h> // 컬러설정
#include <conio.h>
using namespace std;

void color(int number)
{
 SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),number);  // 컬러 설정함수
};


class ROAD  // 거리 정보 클래스
{
private:
 float road; //거리  맴버 생성 2개
 int h; // 할증 여부
 int z,x,m;
public:
 ROAD(float a,int b)
  :road(a),h(b) //이니셜라이저
 {
 }
    void a(); //
 void b();
 float Distance(); // 거리정보 리턴
 int hal(); // 할증 정보 리턴
};
void ROAD::b() // 거리 정보 입력 받는 함수
{
 color(10);
 cout<<"이동 거리를 설정해 주세요(km) :";
 cin>>road; // 거리정보 입력


 for(z=0; z<1; z++) // 딜레이 함수
 {
  cout<<" 택시가 출발합니다. "<<endl;
  Sleep(500);
 }

 for(x=0; x<1; x++)
 {
  cout<<" 요금 계산중 입니다 ";
     Sleep(500);
 }
 for(m=0; m<10; m++)
 {
  cout<<" * ";
     Sleep(500);
 }
 [...]; // 화면 초기화
}

void ROAD::a() // 거리 정보 입력 받는 함수
{
 color(10);
 cout<<"이동 거리를 설정해 주세요(km) :";
 cin>>road; // 거리정보 입력
 cout<<"선택하세요 1.일반요금 , 2.할증요금 :";
 cin>>h; // 요금계산방식 입력

 for(z=0; z<1; z++)
 {
  cout<<" 택시가 출발합니다. "<<endl;
  Sleep(500);
 }

 for(x=0; x<1; x++)
 {
  cout<<" 요금 계산중 입니다 ";
     Sleep(500);
 }
 for(m=0; m<10; m++)
 {
  cout<<" * ";
     Sleep(500);
 }
 [...]; // 화면 초기화
}

float ROAD::Distance() // 거리 정보 리턴
{
 return road; 
}

int ROAD::hal()
{
 return h;// 할증여부
}

/* ****************************대전지역 택시  요금 클래스********************* */

class taxi : public ROAD// 대전 지역 실제 택시 요금
{
protected:
 float road; // 거리 정보
    float BaseCharge;  // 기본요금
 int Break,delay;  // 정차 , 지연시간
 int s,e,t,total; 
 int a;
public:
 taxi( float a,float b,int c, int d,int e,int f,int g,int h,int j)
  : ROAD(a,j),BaseCharge(b),Break(c),delay(d),s(e),e(f),t(g),total(h)//생성자와 이니셜라이져
 {
 }
 // 거리입력 함수
 void show2(); // 택시요금 출력함수
 void racing2(); // 택시 요금 계산 함수
 void stop11(); // 택시 정차계산 함수
    void stop2();
};


void taxi::stop11()
{

   Break=rand()%10; //랜덤함수이용 정차 랜덤 
      if(Break/3==0)
   {
    e++;
    
    if(hal()==1) // 일반 요금
    {
     delay=rand()%170; // 대기시간 랜덤하게 지정 최대 약 2분 정도
     s=(delay/36);
     total=s*100;   // 36초당 추가 요금  (정상 요금 시)
     t+=delay;  // 지연시간 총 합
     BaseCharge+=total;
    }

    if(hal()==2) // 할증 요금
    {
     delay=rand()%100; // 대기시간 랜덤하게 지정 최대 약 2분 정도
     s=(delay/36);
     total=s*120;   // 할증 상황시 추가요금
     t+=delay;  // 지연시간 총 합
     BaseCharge+=total;
    }

   }

}


void taxi::stop2()
{
  
   Break=rand()%10; //랜덤함수이용 정차 랜덤
 
      if(Break%2==0)
   {
    e++;
    delay=rand()%150; // 대기시간 랜덤하게 지정 최대 약 2분 정도
    s=(delay/20); // 20초당 추가요금 (불량 요금시)
    if(hal()==1)
    {
     total=s*200; 
     t+=delay;
     BaseCharge+=total;
    }

    if(hal()==2)
    {
     total=s*120; // 할증 상황시 추가 요금
     t+=delay;
     BaseCharge+=total;
    }

   }

}


void taxi::racing2()
{
 int seed = (int)time(NULL);
 srand(seed); //정차를 랜덤하게 하기위해 필요
  
 float c=(Distance()-2); // 2km까진 기본요금
    a=rand()%2;// 실제 택시 양심 , 양심 불량 나눔 

 if(hal()==1)
 {
  while(1)
  {
   c=c-0.153; // 미터당 거리계산 식

   if(c<=0)
   {
    taxi::show2();
    break;
   }
  
   BaseCharge+=100;
 
   if(a==1) // 불량 택시
   {
         taxi::stop2();
   }
   else // 양심 택시
   {
      taxi::stop11();
   }
  }
 }
 
 if(hal()==2) // 할증 시
 {
  BaseCharge+=460; // 할증 기본요금
  
  while(1)
  {
   c=c-0.153; // 미터당 거리계산 식
   if(c<=0)
   {
    taxi::show2();
    break;
   }
  
   BaseCharge+=120;
 
   if(a==1) // 불량 요금 택시 시
   {
  
    taxi::stop2();
   }
   else
   {
    taxi::stop11();
   }

  }
 }
 
}


void taxi::show2()
{  
 cout<<"-------------------------------------------"<<endl;
 cout<<"실제 택시 요금  : "<<BaseCharge<<"원 입니다."<<endl; // 가상으로  실제 택시 요금 출력 
}

 

class charge : public taxi // 대전 지역 택시 요금
{
private:
 float road; // 거리 정보
    float BaseCharge;  // 기본요금
 int Break,delay;
 int s,e,t,total;
public:
 charge(float a,float b,int c,int d,int e,int f,int g,int h,int j)
  : taxi(a,b,c,d,e,f,g,h,j),BaseCharge(b),Break(c),delay(d),s(e),e(f),t(g),total(h) // 생성자와 이니셜라이져
 {
 }
    // 거리입력 함수
 void show(); // 택시요금 출력함수
 void racing(); // 택시 요금 계산 함수
 void stop(); // 택시 정차계산 함수
    void aaa(); // 비교 출력함수
};


void charge::aaa()
{
 if(BaseCharge>=taxi::BaseCharge) // 실제요금이 낮을때
 {
  color(11);
  cout<<" 정상 요금 택시 입니다 .(약간의 오차 있음) "<<endl;
 }
 else if((BaseCharge+=500)<taxi::BaseCharge) // 실제요금이 높을때
 {
  color(12);
  cout<<" 불량 요금 택시 입니다 .(약간의 오차 있음) "<<endl;
 }

 else
 {
  color(11); 
  cout<<" 정상 요금  택시 입니다 .(약간의 오차 있음) "<<endl;
 }

}


void charge::stop()
{

 Break=rand()%10; // 랜덤함수이용 정차 랜덤 

 if(Break/3==0)
 {
  e++; // 정차 회수 알려주는 거
  delay=rand()%150; // 대기시간 랜덤하게 지정 최대 약 2분 정도
        s=(delay/36);// 20초당 추가요금 (불량 요금시)
  if(hal()==1)
  {
   total=s*100; 
   t+=delay;
   BaseCharge+=total;
  }

  if(hal()==2)
  {
   total=s*120; 
   t+=delay;
   BaseCharge+=total;
  }


 }

}


void charge::racing()
{
 int seed = (int)time(NULL);
 srand(seed); //정차를 랜덤하게 하기위해 필요
 
 float c=(Distance()-2); // 2km까진 기본요금
 
 if(hal()==1)
 {
  while(1)
  {
   c=c-0.153; // 미터당 거리계산 식
   if(c<=0)
   {
    charge::show();
  
    break;
   }
  
   BaseCharge+=100;
 
   charge::stop();
  }
 }
 if(hal()==2)
 {
  BaseCharge+=460;
   
  while(1)
  {
   c=c-0.153; // 미터당 거리계산 식
  
   if(c<=0)
   {
    charge::show();
    break;
   }
 
   BaseCharge+=100;
   charge::stop();
  }
    }
 
}

 

void charge::show()
{
 cout<<"*************************************************************"<<endl;
 racing2(); // 실행함수 호출
 cout<<"계산된 택시 요금  : "<<BaseCharge<<"원 입니다. "<<endl;// 도착시 요금 출력 및 종료  (계산 식 택시요금 )
    aaa(); // 비교 함수 호출
 color(10);
 cout<<"총 정차 횟수 : "<<e<<"번 입니다."<<endl; // 정차 횟수 변수 출력
 cout<<"정차로 인한 지연시간 : "<<t/3600<<"시간 "<<(t%3600)/60;
    cout<<"분 "<<t%60<<"초"<<endl; // 시간 변형

 cout<<"*************************************************************"<<endl;
 cout<<endl<<endl;
 cout<<"메뉴얼로 돌아가시려면 1을 눌러주세요 :";

 while(1)
 {
  int j;
  cin>>j;
   
  if(j==1)
  break;
   }
 
}

/* ****************************메뉴얼 및 광역시 기본요금 정보********************* */
class manual
{
public: //전부 참조 가능
 void show(); //출력함수
    void location(); // 위치 재설정 함수
 void Talocation();
 void metropolitancity(); // 광역시 별 요금 함수
};


void manual::show(void) // 메뉴 출력함수
{
 cout<<"********************************"<<endl;
 cout<<"       1. 택시   출발           "<<endl;
        cout<<"       2. 현 위치 재설정         "<<endl;
 cout<<"       3. 타 지역 이동시         "<<endl;
 cout<<"       4. 광역시 별 기본요금     "<<endl;
 cout<<"       5. 종          료         "<<endl;
 cout<<"********************************"<<endl;
}


void manual::location() // 위치 재설정
{
 int j;

    cout<<" 현재는 대전 지역밖에 설정 하실수 없습니다 ."<<endl<<endl;;
 cout<<"메뉴얼로 돌아가시려면 1을 눌러주세요 :";

 while(1)
   {
  cin>>j;
  if(j==1)
   break;
   }

 [...]; // 화면 초기화

}
void manual::Talocation()
{
 int j;

 cout<<"죄송합니다. 현재 이서비스는 지원 예정입니다. "<<endl;
 cout<<"메뉴얼로 돌아가시려면 1을 눌러주세요 :";

 while(1)
   {
  cin>>j;
  if(j==1)
   break;
   }
 [...]; // 화면 초기화
}

 

void manual::metropolitancity() // 광역시별 기본요금
{

 int n;
 cout<<"****광역시 별 요금관련 정보*** "<<endl;
 cout<<"**원하시는 광역시를 선택하세요***"<<endl;
 cout<<" 1.서울  2.대전  3.대구  4.부산  5.울산"<<endl;
 cout<<" 6.광주  7.인천  8.경기  9.강원  10.충북"<<endl;
 cout<<" 11.충남 12.전북 13.전남 14.경북 15.경남 16.제주 : ";
 cin>>n;
 cout<<" "<<endl;

 if(n==1)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************서  울******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,400원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 144m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 35초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }

 else if(n==2)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************대  전******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,300원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 153m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 36초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }

 else if(n==3)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************대  구******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 150m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 36초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }

 else if(n==4)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************부  산******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 143m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 34초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }

 else if(n==5)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************울  산******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 141m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 34초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }

 else if(n==6)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************광  주******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 150m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 36초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }

 else if(n==7)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************인  천******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,400원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 148m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 37초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==8)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************경  기******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,300원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 144m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 35초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==9)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************강  원******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 165m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 40초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==10)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************충  북******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 150m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 36초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==11)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************충  남******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,300원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 163m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 39초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==12)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************전  북******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 150m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 26초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==13)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************전  남******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,300원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 164m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 39초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==14)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************경  북******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 145m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 35초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==15)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************경  남******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 143m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 34초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 else if(n==16)
 {
  cout<<"-2011년 03월 기준-"<<endl;
  cout<<" ********************제  주******************** "<<endl<<endl;
  cout<<" -기본요금 : 2,200원(2km까지) "<<endl<<endl;
  cout<<" -주행요금 : 146m당 (+100원) "<<endl<<endl;
  cout<<" -시간요금 : 38초당 (15km/h이하 주행시 +100원) "<<endl<<endl;
  cout<<" -심야  및 사업구역외 운행 : 20% 할증 "<<endl<<endl;
 }
 
 else
 {
  cout<<"숫자를 잘못 입력하셨습니다. 다시 입력하시기 바랍니다."<<endl<<endl;
 }

 cout<<"*본 자료는 전국택시운송사업조합연합회의 자료를 토대로 작성하였습니다.*"<<endl<<endl;
 cout<<"*본 요금은 각 시도별 중형택시 요금만을 표기했습니다."<<endl<<endl;

 cout<<"메뉴얼로 돌아가시려면 1을 눌러주세요 ,다시하려면 2번 입력  : ";


    while(1)
    {
     int j;
     cin>>j;
     if(j==1)
    
      break;
     else if(j==2)
     {
        [...];
      metropolitancity();
     }

    }
 
 [...];

}

/* ****************************대전지역에서 타지역 나갈 때  요금 클래스********************* */

class taxi2 : public ROAD // 타 지역 나갈 때  실제 택시 요금
{
protected:
 float road; // 거리 정보
    float BaseCharge;  // 기본요금
 int Break,delay;  // 정차 , 지연시간
 int s,e,t,total; 
 int a;
public:
 taxi2( float a,float b,int c, int d,int e,int f,int g,int h,int j)
  : ROAD(a,j),BaseCharge(b),Break(c),delay(d),s(e),e(f),t(g),total(h)//생성자와 이니셜라이져
 {
 }
 // 거리입력 함수
 void show22(); // 택시요금 출력함수
 void racing22(); // 택시 요금 계산 함수
 void stop112(); // 택시 정차계산 함수
    void stop22();
 void stop1122();
};


void taxi2::stop112()
{

   Break=rand()%100; //랜덤함수이용 정차 랜덤 
      if(Break/3==0)
   {
    e++;
    
  
     delay=rand()%170; // 대기시간 랜덤하게 지정 최대 약 2분 정도
     s=(delay/36);
     total=s*100;   // 36초당 추가 요금  (정상 요금 시)
     t+=delay;  // 지연시간 총 합
     BaseCharge+=total;
  

   }

}
void taxi2::stop1122()
{

   Break=rand()%10; //랜덤함수이용 정차 랜덤 
      if(Break/3==0)
   {
    e++;
    
  
     delay=rand()%170; // 대기시간 랜덤하게 지정 최대 약 2분 정도
     s=(delay/36);
     total=s*120;   // 36초당 추가 요금  (정상 요금 시)
     t+=delay;  // 지연시간 총 합
     BaseCharge+=total;
  

   }

}


void taxi2::stop22()
{

   Break=rand()%10; //랜덤함수이용 정차 랜덤 
      if(Break%2==0)
   {
    e++;
    delay=rand()%150; // 대기시간 랜덤하게 지정 최대 약 2분 정도
    s=(delay/20); // 20초당 추가요금 (불량 요금시)
   
     total=s*220; 
     t+=delay;
     BaseCharge+=total;
  

 

   }

}


void taxi2::racing22()
{
 int seed = (int)time(NULL);
 srand(seed); //정차를 랜덤하게 하기위해 필요
  
 float c=(Distance()-2); // 2km까진 기본요금
 float d=0;
    a=rand()%3; // 실제 택시 양심 , 양심 불량 나눔 
 
 
  while(1)
  {
   c=c-0.153; // 미터당 거리계산 식
            d=d+0.153;
   if(c<=0)
   {
    taxi2::show22();
    break;
   }
         if(d<3)
   BaseCharge+=100;
         else
            BaseCharge+=120;
   if(a==1) // 불량 택시
   {
         taxi2::stop22();
   }
   else // 양심 택시
   {
    if(d<3)
      taxi2::stop112();
    else
    taxi2::stop1122();
   }
  }
 
 
 
}
void taxi2::show22()
{  
 cout<<"-------------------------------------------"<<endl;
 cout<<"실제 택시 요금  : "<<BaseCharge<<"원 입니다."<<endl; // 가상으로  실제 택시 요금 출력 
}

class charge2 : public taxi2// 대전 지역 택시 요금
{
private:
 float road; // 거리 정보
    float BaseCharge;  // 기본요금
 int Break,delay;
 int s,e,t,total;
public:
 charge2(float a,float b,int c,int d,int e,int f,int g,int h,int j)
  : taxi2(a,b,c,d,e,f,g,h,j),BaseCharge(b),Break(c),delay(d),s(e),e(f),t(g),total(h) // 생성자와 이니셜라이져
 {
 }
    // 거리입력 함수
 void show3(); // 택시요금 출력함수
 void racing3(); // 택시 요금 계산 함수
 void stop3(); // 택시 정차계산 함수
    void aaa3(); // 비교 출력함수
 void stop4();
};


void charge2::aaa3()
{
 if(BaseCharge>=taxi2::BaseCharge) // 실제요금이 낮을때
 {
  color(11);
  cout<<" 정상 요금 택시 입니다 .(약간의 오차 있음) "<<endl;
 }
 else if((BaseCharge+=500)<taxi2::BaseCharge) // 실제요금이 높을때
 {
  color(12);
  cout<<" 불량 요금 택시 입니다 .(약간의 오차 있음) "<<endl;
 }

 else
 {
  color(11); 
  cout<<" 정상 요금  택시 입니다 .(약간의 오차 있음) "<<endl;
 }

}

 

void charge2::stop3()
{

 Break=rand()%10; // 랜덤함수이용 정차 랜덤 

 if(Break/3==0)
 {
  e++; // 정차 회수 알려주는 거
  delay=rand()%150; // 대기시간 랜덤하게 지정 최대 약 2분 정도
        s=(delay/36);//
  
   total=s*100; 
   t+=delay;
   BaseCharge+=total;


 }

}

void charge2::stop4()
{

 Break=rand()%10; // 랜덤함수이용 정차 랜덤 

 if(Break/3==0)
 {
  e++; // 정차 회수 알려주는 거
  delay=rand()%150; // 대기시간 랜덤하게 지정 최대 약 2분 정도
        s=(delay/36);// 20초당 추가요금 (불량 요금시)
  
   total=s*120; 
   t+=delay;
   BaseCharge+=total;


 }

}

void charge2::racing3()
{
 int seed = (int)time(NULL);
 srand(seed); //정차를 랜덤하게 하기위해 필요
 
 float c=(Distance()-2); // 2km까진 기본요금
    float d=0;

  while(1)
  {
   
   c=c-0.153; // 미터당 거리계산 식
   d=d+0.153;
   if(c<=0)
   {
    charge2::show3();
  
    break;
   }
         if(d<3)
   {
   BaseCharge+=100;
   charge2::stop3();
   }
         else
   {
      BaseCharge+=120;
   charge2::stop4();
   }
   
  }
 
 
}

 

void charge2::show3()
{
 cout<<"*************************************************************"<<endl;
 racing22(); // 실행함수 호출
 cout<<"계산된 택시 요금  : "<<BaseCharge<<"원 입니다. "<<endl;// 도착시 요금 출력 및 종료  (계산 식 택시요금 )
    aaa3(); // 비교 함수 호출
 color(10);
 cout<<"총 정차 횟수 : "<<e<<"번 입니다."<<endl; // 정차 횟수 변수 출력
 cout<<"정차로 인한 지연시간 : "<<t/3600<<"시간 "<<(t%3600)/60;
    cout<<"분 "<<t%60<<"초"<<endl; // 시간 변형
 cout<<"*************************************************************"<<endl;
 cout<<endl<<endl;
 cout<<"메뉴얼로 돌아가시려면 1을 눌러주세요 :";

 while(1)
 {
  int j;
  cin>>j;
   
  if(j==1)
  break;
   }
 

/* ****************************메인 함수 ********************* */    
int main()
{
    color(10);

    int a;
 manual k;

 while(1)
 {
  k.show();
  cout<<"1부터 5까지 원하시는 메뉴를 선택하세요: ";
  cin>>a;
  [...];
 
  if(a==1)
  {
   charge * aaa=new charge(0,2300,0,0,0,0,0,0,0);
   ROAD * kk= aaa;
   kk->a();
   aaa->racing();
   [...]; // 화면 초기화
   delete aaa;
  }
  else if(a==2)
   k.location();
  else if(a==3)
  {
          charge2 * aaa=new charge2(0,2300,0,0,0,0,0,0,0);
    ROAD * kk= aaa;
    kk->b();
    aaa->racing3();
    [...]; // 화면 초기화
   delete aaa;
  }
  else if(a==4)
   k.metropolitancity();
  else if(a==5)
   break;
  else
   cout<<"다시 입력하시오 "<<endl;
    
 }
 
 return 0;
}




대충이정도는짤수있음 
택시요금 gps 가정하에 
택시 출발시 눌렀을때 택시요금 계산하는 프로그램 짜봣어 
실제택시요금 역시 가상으로 랜덤함수로 돌린거  ㅇㅇ

이정도 실력이면 개 발톱 수준이지만 

암튼 요점은 뭐냐면 이정도 수준에서 어케공부해야되냥? 
때려쳐야됨?

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 대박 날 것 같아서 내 꿈에 나와줬으면 하는 스타는? 운영자 25/11/17 - -
AD 겨울가전 SALE! 쿨한 겨울 HOT세일 운영자 25/11/12 - -
296690 16진수랑 10진수 이해안되는게 하나 있음 [14] 애슐리_그린갤로그로 이동합니다. 11.12.31 215 0
296689 오랜만에 아머드코어3를 잡고 놀고있음. 땡칠도사갤로그로 이동합니다. 11.12.31 71 0
296688 웹크롤러를 만들고있습니다 [1] 크롤러(61.37) 11.12.31 134 0
296687 윈도우 api관련 소스를 우린 못 구할까? [2] C언어찌랭이갤로그로 이동합니다. 11.12.31 98 0
296685 열혈 C 프로그래밍 있으신분 [3] 이힝(121.177) 11.12.31 119 0
296684 오빠들 궁굼한게 이는데.. [6] 도와줘요(175.116) 11.12.31 130 0
296682 홈페이지 만드는데 db는 얼마나 깊이 공부해야 되나요? [5] 수내고오르막(218.147) 11.12.30 131 0
296679 컴공 나오면 일찍 잘린다 망한다 하는데 [2] 질문좀요(121.167) 11.12.30 229 0
296678 프갤에 올만에 글 쓰네... 난 여러 일들이 있었음... [2] coding갤로그로 이동합니다. 11.12.30 76 0
296676 VB질답 많이 올라오는 커뮤니티 어디있음요? ㅠㅠ? [5] ㅇㅇㅇ(121.144) 11.12.30 97 0
296675 아톰 요즘 모델은 P4 2.4GHz하고 비교해서 어떰? [8] 분당살람갤로그로 이동합니다. 11.12.30 122 0
296674 프갤횽들 iPhone 개발 관련 커뮤니티 유명한 곳 좀 알려주세요(조공) ㅇㅅㅇ(125.129) 11.12.30 101 0
296672 난 대마법사닷! [1] 앗살라무알라이쿰갤로그로 이동합니다. 11.12.30 80 0
296671 형님들 c언어 열혈강의가 이 책 맞나요?? [4] 나도야(61.74) 11.12.30 108 0
296665 여친있는 공돌이 vs 프로그래밍일찐 공돌이 [4] ㅁㄴㅇㄻㅇ(121.183) 11.12.30 147 0
296664 운영체제, DB, 자료구조 책 뭐가 좋음? [1] 광란의디씨질갤로그로 이동합니다. 11.12.30 135 0
296663 심은경 귀엽다 하얀사람갤로그로 이동합니다. 11.12.30 135 0
296662 다들 영어 얼마나 하세여? [5] 한마음택배(114.202) 11.12.30 128 0
296661 미래엔 인공 뇌 개발되서 사이보그 될것 같지 않음? 1(121.146) 11.12.30 68 0
296660 수능끝난 고3 할짓없어서 오토핫키 좀 배우는데 질문점요 [2] 수능끝난고3(222.112) 11.12.30 125 0
296659 여긴 다 천재형들뿐이니까 시간남는형은 이 문제좀 봐줘염 기본문제임 [5] 니애미(61.109) 11.12.30 117 0
296656 윈api로 3d엔진 만들어볼까 [2] elwlwlwk갤로그로 이동합니다. 11.12.30 99 0
296654 우왕... html5 잠깐 공부했는데... 대박이다... [1] 흠냐(221.147) 11.12.30 170 0
296649 그럭저럭대학 컴공 vs 유동(125.142) 11.12.30 119 0
296647 퇴사한다고 했는데 1시간 넘게 설교 들으면 내가 인재라서 붙잡을려는거냥 [6] 므해?갤로그로 이동합니다. 11.12.30 204 0
296645 와 컴터 고쳤다! [3] 외계달팽갤로그로 이동합니다. 11.12.30 107 0
296644 이번 주말은 연말더하기 신년이네 간지어갤로그로 이동합니다. 11.12.30 58 0
296643 컴퓨터과학과 우선선발 됐는데 [2] 종간이갤로그로 이동합니다. 11.12.30 134 0
296641 나만 TV를 안 보는 게 아니었어 [1] 분당살람갤로그로 이동합니다. 11.12.30 88 0
296640 수학을 다시 공부하기로 했습니다. 늦깎이 입니다. 도와주세요. [1] 홍성대(182.215) 11.12.30 125 0
296639 한국엔 대단한 사람들이 참 많아 [1] 분당살람갤로그로 이동합니다. 11.12.30 168 0
296638 프갤형들 로그파일에 아이피도 찍힘? [1] 뻘찔죶중딩갤로그로 이동합니다. 11.12.30 73 0
296637 형들 지방 국립대컴공은 별로야?? [5] 유동(125.142) 11.12.30 181 0
296636 ^-^ [5] 바보플머(222.121) 11.12.30 110 0
296635 개인사업 하기 전후 비교 [2] .3(36.38) 11.12.30 148 0
296633 프로그램 뭐있냐. 버그 안나고 돌아가기만 하면되지 [2] White_Wolf(58.102) 11.12.30 77 0
296632 다들 칼퇴해서 그런가 [1] Dawnwalkre갤로그로 이동합니다. 11.12.30 50 0
296631 HTML5 발전방향은? 데헷(119.82) 11.12.30 48 0
296629 다들 퇴근하네 부럽다... [2] 쿄스케갤로그로 이동합니다. 11.12.30 79 0
296628 현업에 종사하시는 웹 프로그래머 형님들... 도와 주세요 [3] 안성철(211.197) 11.12.30 165 0
296627 개발은 97%의 디버깅과 3%의 코딩으로 이루어진다 [3] ㅁㄴㄻㄹ갤로그로 이동합니다. 11.12.30 215 0
296626 메일 왔다 [1] ㅇㅇㅇ(59.150) 11.12.30 63 0
296625 형들 안녕? [5] 좋은아버지갤로그로 이동합니다. 11.12.30 108 0
296624 잘생겨지고 싶다.. [1] Lover♥갤로그로 이동합니다. 11.12.30 51 0
296621 제로보드 그누보드 같은 보드를 자체 제작하기 힘든가요? [3] (49.143) 11.12.30 93 0
296620 아 형들 저 퇴근해요ㅜ [1] 개떙보갤로그로 이동합니다. 11.12.30 57 0
296619 프로그래머들이 나중에 치킨집 전향한다는게 [3] 쿠마코갤로그로 이동합니다. 11.12.30 195 0
296618 다음학기 그래픽스 과목 듣는데.... 땡칠도사갤로그로 이동합니다. 11.12.30 99 0
296616 아직도 메일 5분마다 확인하는 사람 있냐?? [3] ㅇㅇㅇ(59.150) 11.12.30 94 0
296614 정상근무라는 회사 공지에 분노한 우리팀은 퀘이크 라이브를 하기로 했다 [2] 거칠게갤로그로 이동합니다. 11.12.30 112 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2