자기가 c++ 고수다 들어오삼 살려줘 제발

int main()
{
string s;
cout << "ex)2+2-4*3/2" << endl;
getline(cin, s, '\n'); 
int sum = 0;
int a = 0;
int con;

while (1)
{  
if (s[a] != '+' || s[a] != '-' || s[a] != '*' || s[a] != '/')
{
con = stoi(s);  //2 입력했잖어 
}
else if (s[a] == '+')
{
con = con + s[a + 1];                 //2 + s[2] ->'3'   그럼 2+3은 5잖아 왜안대 ㅅㅂ 
cout << con;
break;
}
a++;                         
}
    return 0;
}


2+3 하고싶음 그럼 답이 5잖아 

근데 자꾸 오류떠서 안돼 뭐가 잘못된껄까 

15개의 댓글

2018.04.17
왜아래껀 stoi안하냐
0
2018.04.17
@HIGH SIERRA
글고일단 스트링은안다뤄바서모르겠지만
'3'과 3은 다르니깐
'3'-'0' 이용해서 숫자3으로만드러보셈
0
@HIGH SIERRA
저러면 s[1] 일 때 +나오면

어떻게해야할지 막막해서
0
2018.04.17
@일동안치킨먹음
먼말인지모르게따 자로간다
0
2018.04.17
더하기가 아니거나 빼기가 아니거나 이거 or 가 아니라 and 여야하는거 아님?
0
2018.04.17
@학구
if (s[a] != '+' || s[a] != '-' || s[a] != '*' || s[a] != '/')

이조건에서 2+3을 입력했을때
2 는 조건에 맞아서 con = 2
두번째 문자 + 가 들어왔어도
s[a] != '-' || s[a] != '*' || s[a] != '/' 해당 조건을 충족하기때문에
stoi('+') 가 실행될거 같은데 ?
0
2018.04.17
@학구
결론적으로 고치면

if (s[a] != '+' && s[a] != '-' && s[a] != '*' && s[a] != '/')
{
con = stoi(s); //2 입력했잖어
}
else if (s[a] == '+')
{
con = con + (int)s[a + 1]; //2 + s[2] ->'3' 그럼 2+3은 5잖아 왜안대 ㅅㅂ
cout << con;
break;
}

이렇게 돌려보면?
0
@학구
아 and는 고마워 근데

con = con + (int)s[a+1];

이거 아스키코드값으로 나오는거 같아 아무튼 and는 고맙
0
2018.04.17
@일동안치킨먹음
char(s[a+1]) 아니면 atoi(s[a+1]) 시도해보셈
된다면 구글신은 위대한것
0
2018.04.17
그냥 한줄한줄 디버깅하는게 더빠르겟다
0
2018.04.17
아니 s값이 "2+2"를 넣은거임 ㅋㅋ? 당연히 atoi에서 에러나짘ㅋㅋㅋ
0
2018.04.17
con = con + s[a + 1]; // con = 2 + 50 이니까 52로 출력될라나?

// 위에서 첫번째 숫자는 문자에서 숫자로 변환해놓고 두번째 숫자는 왜 변환안하고 그냥 더하려함?
0
@아무무무
stoi(s[a+1]) 이게 안되더라고... ;; 아직 초보라..
0
@일동안치킨먹음
그럴거면 굳이 스트링 쓰지말고 간단한 char 문자열 쓰고
atoi쓰자
0
2018.04.17
@일동안치킨먹음
stoi()안에 들어가는 스트링이 인트가 아닌게 껴있어서 그런거 같음

string str = "8282";
int temp = stoi(str);

이런 형태로 써야 할 것 같은데 연산자를 변환할 수 없어서 펑하는것 같음
임시 변수 하나 만들어서 그 숫자만 받도록 고쳐봅시다

if (s[a] != '+' || s[a] != '-' || s[a] != '*' || s[a] != '/')
{
string temp;
temp = s[a];
con = stoi(temp); //2 입력했잖어
}
0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180506 [컴퓨터] 저전력,배터리 오래가는 노트북 찾아요! 2 sgfkshj 0 5 시간 전 92
180505 [잡담] 유튜브 프리미엄 우회 질문드립니당 3 개드립눈팅4년 0 7 시간 전 151
180504 [잡담] 블랙샤크v2 pro 2023 vs 소니 mv1 추천좀 게임게임하자 0 7 시간 전 53
180503 [컴퓨터] 인텔 그래픽 드라이버 최신화 인식 왜이따위임? 2 넌뭔데시비냐 0 8 시간 전 111
180502 [모바일] 안드로이드 카메라 어플중에 쓸만한거 뭐있음? 1 일째다이어트하는중 0 8 시간 전 57
180501 [컴퓨터] 집에서 투 컴퓨터 사용시 키보드 마우스 세팅 5 해물잠봉 0 10 시간 전 112
180500 [잡담] 동글 사려는데 싼거사도됨? 7 제로콜라는닥터페... 0 12 시간 전 112
180499 [컴퓨터] 가난개붕이 글카샀다 11 69746974 0 12 시간 전 204
180498 [컴퓨터] 로지텍 무선마우스가 g502x 이거 많이씀?? 10 울그락푸르락 1 13 시간 전 131
180497 [컴퓨터] DDR5는 렘오버한거 차이많이남? 15 창원토박이 0 15 시간 전 227
180496 [컴퓨터] 형들 제품키만 파는것들 써도 되는거야? 4 우루루옳지 0 15 시간 전 108
180495 [잡담] 시네빔 써본 개붕이 있어? 5 따뜻한젤라또 0 15 시간 전 54
180494 [컴퓨터] 다나와에서 컴터 하나 사려고하는데 6 바나나사탕 0 15 시간 전 64
180493 [잡담] 게이밍 노트북 중고 가성비 어때보임? 6 ST11223 0 16 시간 전 164
180492 [컴퓨터] 책상 인증 5 69746974 0 17 시간 전 185
180491 [컴퓨터] 프레임 고정하는 이유가 뭔가요? 5 우루루옳지 0 18 시간 전 174
180490 [모바일] 통신사에 공유기 교체해달라하면 해주나? 5 뱅갈고양이육성중 0 18 시간 전 149
180489 [모바일] 중고폰 선택장애 도와주세요 5 호래빙 0 18 시간 전 80
180488 [컴퓨터] 캐붕이 컴퓨터 어떠냐 10 Benetton 0 20 시간 전 180
180487 [컴퓨터] 형들 컴퓨터 파워가 문제일 가능성이 있을까요? 10 부터시작하는이세... 0 20 시간 전 129