디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅇㅇ(125.138) 2011.12.25 23:44:45
조회 99 추천 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/03 - -
AD 저녁 뭐먹지? 오늘의 메뉴 추천! 운영자 25/10/31 - -
295918 이클립스 잘 하는 형들 있남??? 돌긋네(14.51) 11.12.26 52 0
295917 근디 죶도 말 틀린거 없는데 왜케 욕을 하냐 [1] 시불라미갤로그로 이동합니다. 11.12.26 67 0
295916 죳뻔데기 말하는거말야 잣고딩(58.233) 11.12.26 52 0
295914 아 .. 패기보소.. [4] 그러함(112.150) 11.12.25 133 0
C++ 공부 어케해야되냐 ? [3] ㅇㅇ(125.138) 11.12.25 99 0
295912 마크 주커버그, 스티브 워즈니악 이런애들은 두뇌의 어떤데가 뛰어난 거임? [15] ㅁㅁ(121.164) 11.12.25 335 0
295910 파일업로드 클래스 만드려는데 이렇게 설계하려는데 어떤지 봐주셈 [2] 니 코 가 뭐갤로그로 이동합니다. 11.12.25 62 0
295908 이직했는데 여기 회사 사람들은 딴짓을 안한다. [1] 이메지네이션(211.187) 11.12.25 119 0
295907 컴퓨터공학과..한단어로표현해줄게 [2] 신비의섬죶도갤로그로 이동합니다. 11.12.25 179 0
295906 한국어OS에서는 \n하고 역슬래시n하고 완벽하게 호환되네... [9] 분당살람갤로그로 이동합니다. 11.12.25 261 0
295905 미안. 치킨집 창업은 반 강제였구나? ㅋㅋㅋㅋㅋㅋㅋ [2] sasd(175.199) 11.12.25 104 0
295904 방학동안 블로그를 직접 만들어보려고 하는데... HJH_갤로그로 이동합니다. 11.12.25 78 0
295902 질문있어요,,! [2] 지나가는늅늅(118.223) 11.12.25 62 0
295901 선배,형님들 비트학원 강좌 C programing 2 자료구조 어떰 공부하고싶음(211.222) 11.12.25 139 0
295899 아무글만 클릭하면 악성코드떠서 강종되 이거왜이러냐(211.222) 11.12.25 31 0
295898 죶뻔데기야 니 짤 안보인다 [1] dlbo갤로그로 이동합니다. 11.12.25 73 0
295897 컴퓨터과의 현실 [5] 신비의섬죶도갤로그로 이동합니다. 11.12.25 338 0
295896 웹프로그래밍언어 공부법 [2] 등골브레이커갤로그로 이동합니다. 11.12.25 206 0
295895 죶도 소환글 [3] 나리링갤로그로 이동합니다. 11.12.25 108 0
295894 으아 내일은 즐거운 출근 +어게인갤로그로 이동합니다. 11.12.25 46 0
295892 군대에서 자바스크립트 공부를 하려는데 좋은 웹컴파일러 없을까? [4] 위디안갤로그로 이동합니다. 11.12.25 140 0
295891 웹에서 원하는 부분만 긁어오는 프로그램 c#으로 만들라고 하거든 [3] 김프갤(61.40) 11.12.25 140 0
295890 더스틴스니퍼 쓰는방법 아는사람잇어? [1] ㅇ.ㅇ(116.36) 11.12.25 1266 0
295889 어제 렌트해서 여친이랑 놀러갔던 칭구 사고남.. [1] 므해?갤로그로 이동합니다. 11.12.25 153 0
295888 분노의 파워코딩 7일차, 마무리 [3] [성대아싸]갤로그로 이동합니다. 11.12.25 166 0
295887 리눅스 질문입니다 [2] 123(218.49) 11.12.25 67 0
295886 넷북으로 웹 제작 가능한가요? [2] 볼일같은잠(118.41) 11.12.25 133 0
295885 ASProtect MUP으로 언패킹해주실분 구합니다. ㅇㅇ'ㅅ갤로그로 이동합니다. 11.12.25 87 0
295884 「우분투」로 달린다. [1] 때릴꺼야?(116.40) 11.12.25 91 0
295883 안드로이드앱개발 자바부터 배우고해야되나요? [1] ㅇㅇ(122.34) 11.12.25 154 0
295882 크리스마스인데, 설마 집에만 있는건 아니지? [1] 므해?갤로그로 이동합니다. 11.12.25 71 0
295881 \n과 관련된 질문 [4] 분당살람갤로그로 이동합니다. 11.12.25 118 0
295880 한국사회 최고의 승자는 분당살람갤로그로 이동합니다. 11.12.25 93 0
295879 메리!! 짭컹갤로그로 이동합니다. 11.12.25 48 0
295878 치킨집 차리는거는 돈을 위해 꿈을 파는것 아님? [11] sasd(175.199) 11.12.25 166 0
295874 하.. 레드블랙트리 3일에 걸쳐서 겨우 끝났네 [4] (218.209) 11.12.25 117 0
295873 군대에서 2년간 웹프만했다. [2] 니 코 가 뭐갤로그로 이동합니다. 11.12.25 224 0
295872 크리스마스 프로그램 목욕의신갤로그로 이동합니다. 11.12.25 63 0
295871 안녕하세요,질문하나만 할게요 전자10(115.21) 11.12.25 77 0
295870 메서드 구현? 정의? [1] 흥잉(222.107) 11.12.25 57 0
295869 오토핫키에서 계속해서 입력할수 있게 하는 명령어좀 알려주세요 팥트랏슈갤로그로 이동합니다. 11.12.25 56 0
295868 c언어는 독학하면 프로그래밍 스킬 전혀 안늘던데 ㅋㅋㅋ [5] ㅁㄴㅇㅁㄴㅇ(175.199) 11.12.25 406 0
295866 형들 안녕 ? ~ 좋은아버지갤로그로 이동합니다. 11.12.25 51 0
295865 윤성우 C책 좋은거 맞음? [5] 1(121.146) 11.12.25 276 0
295864 아놔ㅠㅠ 오토셋이랑 PHP연동해서 다른 서버에서 들어가면 한글깨지는데.. [2] 전설의대지갤로그로 이동합니다. 11.12.25 68 0
295863 내가 짠 소스인데 왜 오류나는거임? [9] ㅁㄴㅇㅁㄴㅇ(175.199) 11.12.25 150 0
295862 님들아... 토렌트같이 공유 프로그램 만드는거 U2(14.51) 11.12.25 39 0
295861 오토셋에 PHP 연동하는거 질문좀.. [2] 전설의대지갤로그로 이동합니다. 11.12.25 57 0
295860 html 못쓰는 게시판에 브금 넣는 방법 아는 사람 답변좀. zed(59.151) 11.12.25 70 0
295858 「우분투」로 달린다. 때릴꺼야?(116.40) 11.12.24 120 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2