디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅇㅇ(125.138) 2011.12.25 23:44:45
조회 86 추천 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);
 }
 system("cls"); // 화면 초기화
}

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);
 }
 system("cls"); // 화면 초기화
}

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;
   }

 system("cls"); // 화면 초기화

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

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

 while(1)
   {
  cin>>j;
  if(j==1)
   break;
   }
 system("cls"); // 화면 초기화
}

 

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)
     {
        system("cls");
      metropolitancity();
     }

    }
 
 system("cls");

}

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

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;
  system("cls");
 
  if(a==1)
  {
   charge * aaa=new charge(0,2300,0,0,0,0,0,0,0);
   ROAD * kk= aaa;
   kk->a();
   aaa->racing();
   system("cls"); // 화면 초기화
   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();
    system("cls"); // 화면 초기화
   delete aaa;
  }
  else if(a==4)
   k.metropolitancity();
  else if(a==5)
   break;
  else
   cout<<"다시 입력하시오 "<<endl;
    
 }
 
 return 0;
}




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

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

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

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 가족과 완벽하게 손절해야 할 것 같은 스타는? 운영자 24/06/24 - -
297263 컴맹이 질문 [8] 꼬치먹고맴맴갤로그로 이동합니다. 12.01.05 95 0
297262 뭘하면 될까요..?? [3] 맨탈붕괴(221.140) 12.01.05 60 0
297261 SK C&C 뭐하는 회사인가여 [6] (220.94) 12.01.05 310 0
297260 영어는 열혈강의 같은책 없냐 ㅋㅋㅋ [7] (183.109) 12.01.04 116 0
297259 아 먼가 공부하고싶은데 머하면 좋을까 [1] (183.109) 12.01.04 43 0
297258 프밍할때 알면 도움이 되는 수학 [6] 으아아(121.142) 12.01.04 194 0
297256 난 당구가 싫다 [8] 쿄스케갤로그로 이동합니다. 12.01.04 158 0
297255 c#에서 동영상 자막 어떻게 처리해? c++은 SAMI 필터있던데 [2] ㅇㅇ(61.75) 12.01.04 572 0
297254 GNU MP MPIR MPFR 등을 비주얼스튜디오에서 사용하는법? [1] 연산자(121.157) 12.01.04 36 0
297253 깜짝???.......... 학교가자갤로그로 이동합니다. 12.01.04 12 0
297251 봐요?........지구가 깜짝놀라요??...// 학교가자갤로그로 이동합니다. 12.01.04 24 0
297250 봐요?........지구가 깜짝놀라요??...// 학교가자갤로그로 이동합니다. 12.01.04 13 0
297249 그리드 완성 [4] [성대아싸]갤로그로 이동합니다. 12.01.04 123 0
297248 봐요?............여기!!!!!!....... 학교가자갤로그로 이동합니다. 12.01.04 17 0
297247 솔직히 지금 멘붕 상태.. 일광면(119.198) 12.01.04 78 0
297244 질문글 타임인가 그럼 나도 질문해야징ㅋ [2] 나리링갤로그로 이동합니다. 12.01.04 54 0
297242 수학공부를 해야할거같다 [45] g.w.갤로그로 이동합니다. 12.01.04 307 0
297240 C초보는 보시오 [2] SeHwa갤로그로 이동합니다. 12.01.04 218 0
297237 아 그럼 결론이.... [13] C초보(114.206) 12.01.04 127 0
297232 아 stdio 이거 함수 아니야? [3] C초보(114.206) 12.01.04 91 0
297231 내가 왜 굳이 sqrt를 버리고 루트 구하는걸 알려달라고 하는건... [19] C초보(114.206) 12.01.04 173 0
297230 진짜로 솔직히 난 C 배워서 [9] lucy_han갤로그로 이동합니다. 12.01.04 194 0
297229 오늘 완전 초보적인거에 막혀서 시간 꽤버림 [3] 영어쓰던남자갤로그로 이동합니다. 12.01.04 54 0
297228 프갤이 가장 잔인해지는 시간 [2] [성대아싸]갤로그로 이동합니다. 12.01.04 104 0
297226 낚시 같은 소리 하고 앉았네 [8] C초보(114.206) 12.01.04 101 0
297225 씨발 디씨에 질문하는 새끼나 대답해주는 새끼나 [5] PoRO갤로그로 이동합니다. 12.01.04 78 0
297224 구글링은 커플링!? [4] C_Perl갤로그로 이동합니다. 12.01.04 77 0
297223 이쯤에서 나도 묻힌 나의 질문 투척 [2] lucy_han갤로그로 이동합니다. 12.01.04 50 0
297221 인생을 자료구조라고 하면 [2] PoRO갤로그로 이동합니다. 12.01.04 79 0
297220 C언어 배운지 이제 1달밖에 안됬는데 알고리즘은 또 뭐냐? [15] C초보(114.206) 12.01.04 185 0
297219 휴 퇴근 [5] +어게인갤로그로 이동합니다. 12.01.04 71 0
297218 책을 봐도 의문점이 생기니까 그렇지 [7] C초보(114.206) 12.01.04 80 0
297217 여기다 물어본 내가 상등신이지.... [10] C초보(114.206) 12.01.04 117 0
297216 C초보님께 필요한 자료 여기있어요 [2] 영어쓰던남자갤로그로 이동합니다. 12.01.04 56 0
297215 프로그램 끝낼때 리턴값 받는거.. [6] ㅋㄱ(183.96) 12.01.04 55 0
297214 다들알겟지만 [2] lucy_han갤로그로 이동합니다. 12.01.04 39 0
297213 디시 유명한데인줄 알았는데 별거 없네 [6] C초보(114.206) 12.01.04 142 0
297212 C언어에서 루트 표현 [10] C초보(114.206) 12.01.04 252 0
297210 대학다닐때 친구들이랑 이런농담 많이했었는데 영어쓰던남자갤로그로 이동합니다. 12.01.04 74 0
297209 컴갤러님들 자살하는방법 가르쳐드림 [4] zvcx(121.157) 12.01.04 111 0
297208 배틀필드4를 만들어보고싶습니다 도와주세요 [3] BF4(121.157) 12.01.04 81 0
297207 Picking 테스트.. (크롬, 파폭) [3] [성대아싸]갤로그로 이동합니다. 12.01.04 97 0
297205 학점올랐당! [3] elwlwlwk갤로그로 이동합니다. 12.01.04 81 0
297204 배열질문한애 해결했다는글 올라오지 않았었나? [7] 영어쓰던남자갤로그로 이동합니다. 12.01.04 80 0
297201 초대졸 전공자인데 SI그렇게 개 씨레기인가요? [2] 배지홍(210.205) 12.01.04 182 0
297200 고닉부심따위.. [1] ㅋㄱ(183.96) 12.01.04 36 0
297199 안드로이드 Context가 도대체 뭐하는애야 [2] belkin갤로그로 이동합니다. 12.01.04 84 0
297198 다들 퇴근 안하냐? [1] □ㅁ갤로그로 이동합니다. 12.01.04 37 0
297196 아스트라로테 횽이 프갤이랑 제일 잘 맞는듯.. [5] ㅁㄴㅇㄹ(59.30) 12.01.04 62 0
297195 아 안드로이드 소켓 왜이런다냐;; [8] lucy_han갤로그로 이동합니다. 12.01.04 99 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2