디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅇㅇ(125.138) 2011.12.25 23:44:45
조회 112 추천 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 - -
공지 프로그래밍 갤러리 이용 안내 [97] 운영자 20.09.28 48702 65
2903030 퇴사 절차 맥북 초기화 진행 ㅋㅋㅋㅋ 프갤러(218.154) 12:10 12 0
2903029 ❤✨☀⭐⚡☘⛩☃나님 시작합니당☃⛩☘⚡⭐☀✨❤ ♥KiTTY냥덩♥갤로그로 이동합니다. 11:02 12 0
2903028 드라이버 개발하다보면 cpp도 [4] 루도그담당(211.184) 09:34 66 0
2903027 러스트는 항상 승리하네 [1] 프갤러(218.154) 09:27 46 1
2903026 애널두 나님 특별한 하룽~☀+ [2] ♥KiTTY냥덩♥갤로그로 이동합니다. 07:56 40 0
2903022 건물 창에 비친 또다른 건물..ㅇㅅㅇ [1] 헤르 미온느갤로그로 이동합니다. 07:10 30 0
2903021 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 07:08 16 0
2903020 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 07:07 35 0
2903014 나는조현병이야 나는내향적이야 손발이시립디다갤로그로 이동합니다. 06:58 31 0
2903012 ❤✨☀⭐⚡☘⛩☃나님 시작합니당☃⛩☘⚡⭐☀✨❤ ♥KiTTY냥덩♥갤로그로 이동합니다. 06:48 32 0
2903007 본능적 연출 (출처 : 네이버 쇼핑) 발명도둑잡기(118.216) 05:50 14 0
2903006 취미코딩 갤러리가 오픈했습니다 Mosaic갤로그로 이동합니다. 05:41 30 0
2902995 건축계 노벨상 ‘프리츠커상’ 야마모토 리켄 오세훈 종묘 초고층 건물 비판 발명도둑잡기(118.216) 05:04 24 0
2902994 살인적인 베를린 주거비‥시민들 "민간 주택 공공 소유로 바꾸자" 발명도둑잡기(118.216) 05:02 17 0
2902992 성 ㅍㅎ 가해자가 살고있는 ㅇㅇ(123.111) 04:16 30 0
2902990 민주당 맘다니 논평 검색 결과 발명도둑잡기(118.216) 03:51 44 0
2902980 시험성적만으로는 인성에 문제있는 사람을 못 거르는데 방법은? 발명도둑잡기(118.216) 03:29 29 0
2902966 러스트 빠돌이들, 수년간 나 열라 까더니만 ㅋㅋㅋ [1] 나르시갤로그로 이동합니다. 02:58 44 0
2902965 박근혜 풍자 논란 '공주는 외로워' 김자옥 별세 11 주기 발명도둑잡기(118.216) 02:57 23 0
2902943 젤렌스키 측근 집에는 ‘황금 변기’… 우크라 비리 일파만파 발명도둑잡기(118.216) 02:05 24 0
2902940 바보도 이해하는 conservative 가버너 - 기본만이라도 이해해보자 파란빤스갤로그로 이동합니다. 02:00 37 0
2902939 천안 이랜드 물류센터 화재 사실상 '전소'…보험사는 '한화손보' 발명도둑잡기(118.216) 01:59 22 0
2902933 러스트를 할 줄 안다면 현상금 사냥꾼이 되어보자! [3] 에이도비갤로그로 이동합니다. 01:48 59 1
2902931 막상 오늘이 마지막 출근이라 생각하니 기분이 묘하구나. [5] 프갤러(110.8) 01:33 58 2
2902930 미국을 뒤흔드는 도박, 성산업, 마약 발명도둑잡기(118.216) 01:24 19 0
2902924 주작기 사고싶은데 어디서 구함? [1] ㅇㅇ(118.235) 00:55 34 0
2902918 아 이제 이해했다. 요즘 왜 백엔드에 파이썬을 쓰는지. [1] 프갤러(110.8) 00:44 68 1
2902914 근데 모던 cpp는 실패할 수밖에 없어 [11] 프갤러(110.8) 00:36 92 1
2902907 나도 현역땐 왜 기업들이 모던 C++의 가치를 안알아주지? 억울해했는데 [6] chironpractor갤로그로 이동합니다. 00:22 86 0
2902901 나도 이제 새 직장 구해야해서 잡코리아 쭉 보는데 [20] 프갤러(110.8) 00:06 114 0
2902897 불가능한거 할수있냐고하는데 [10] ㅇㅇ(219.248) 11.16 77 0
2902893 여자한테 인기 많은 남자 특징 발명도둑잡기(118.216) 11.16 31 0
2902892 C랑 CPP도 이제 정복되나? [1] ㅇㅇ(125.251) 11.16 66 0
2902890 법과 기관의 도움을 받는 걸 꺼리면 안돼 [3] 에이도비갤로그로 이동합니다. 11.16 62 1
2902879 전자공, 컴공, 솦웨학과 각 학과 차이점이 뭐냐? [1] ㅇㅇ(125.251) 11.16 48 0
2902878 한국 한국은행과 기타 상업은행의 신용창출 액수 비교 발명도둑잡기(118.216) 11.16 26 0
2902875 이기적인 사람 중간, 이타적인 사람 비율 [1] 발명도둑잡기(118.216) 11.16 60 0
2902872 오래간만에 왔는데 ㅆㅇㅆ 어디감? [2] 프갤러(183.101) 11.16 61 0
2902870 ai로 코딩하니까 큰일이네 프갤러(125.131) 11.16 47 0
2902867 가난의 근본적인 해결법 당사자와 사회의 책임 다 발명도둑잡기(118.216) 11.16 38 0
2902866 가난으로 불안하고 무서워하는 사람을 위로하는 태도 전문적으로 발명도둑잡기(118.216) 11.16 19 0
2902864 토끼가 발명도둑잡기(118.216) 11.16 15 0
2902862 코인 패닉장인데 돈을벌고있어요 ㅇㅅㅇ [1] hiya갤로그로 이동합니다. 11.16 65 1
2902860 레미레미놀래미 ♥KiTTY냥덩♥갤로그로 이동합니다. 11.16 17 0
2902859 경제 불황 시기에 인기 더 높아지는 노래, 영상 특징 발명도둑잡기(118.216) 11.16 55 0
2902858 어디 새로운 도파민 새로운 감정 없낭? ♥KiTTY냥덩♥갤로그로 이동합니다. 11.16 58 0
2902856 님들 html 첨 배웠는데 [6] 2D전도사갤로그로 이동합니다. 11.16 70 0
2902855 광해 영화도 지금 다시 보니까 [1] 프갤러(211.210) 11.16 34 0
2902854 홈페이지 제작만 외주로 하고 [3] 프갤러(211.234) 11.16 59 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2