CONVERT질문드립니다.

  • leesangwon5911
    leesangwon5911
    #include<iostream>
    #include<string.h>
    #include <iomanip>  
    using namespace std;
    
    
    int main(void)
    {
    
        double K= 2.2046;
        double P= 0.4536;
        double L= 0.2642;
        double G= 3.7854;
        char KG[3]="kg";
        char LITER[2]="l";
        char POUND[3]="lb";
        char GALLON[2]="g";
        int a=0;
            int num=1;
    
    
        do{
            cin>>a;
            cout<<endl;
        }while(a<1 || a>1000);
        while(a--)
        {
            double b=0;
            char string[5]={'\0'};
            double sum=0;
            std::cout.precision(4);
            cin>>b;
            cout<<" ";
            cin>>string;
            cout<<endl;
            if(strcmp(string,KG)==0)
            {
    
                cout<<num++<<" ";
                sum=(double)b*K;
                cout <<sum<<" "<<POUND<<endl<<std::fixed;
    
            }
            if(strcmp(string,LITER)==0)
            {
    
                cout<<num++<<" ";
    
                sum=(double)b*L;
                cout << sum<<" "<<GALLON<<endl<<std::fixed;
            }
            if(strcmp(string,POUND)==0)
            {   
    
                cout<<num++<<" ";
    
                sum=(double)b*P;
                cout <<sum<<" "<<KG<<endl<<std::fixed;
            }
            if(strcmp(string,GALLON)==0)
            {   
    
                cout<<num++<<" ";
    
                sum=(double)b*G;
                cout<<sum<<" "<<LITER<<endl<<std::fixed;
            }
        }
        return 0;
    }
    

    스트링을 입력받아서 문자열 검사후에 입력한 b(개수)와 곱한후 출력을 보내는데 오답이라고 뜨는지 이유를 모르겠어요..ㅠㅠ


    5년 전
1개의 댓글이 있습니다.
  • newcomet
    newcomet

    cin>>b;
    //cout<<" ";
    cin>>string;
    //cout<<endl;
    입력 받는 부분에서 문제에서 요구하지 않는 결과 출력이 있네요. 이 부분 제거하고 한번 확인해 보세요.


    5년 전 link
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.