자기가 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
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180664 [컴퓨터] SSD를 마이그레이션 떴는데 부팅 선택이 안됨 2 참치는동원 0 4 시간 전 46
180663 [컴퓨터] 이제 논KCPU는 기본쿨러+HB보드로만 조립해야할듯 Vv연옥의사신vV 0 5 시간 전 72
180662 [컴퓨터] 중국 모니터 살까 생각중임 3 너가전부옳아 0 6 시간 전 105
180661 [컴퓨터] 얼마전에 고장나서 다 뒤집어깠다던 개붕이인데 1 밀실심사 0 7 시간 전 96
180660 [잡담] 15일에 ㄷㄱㄷㄱ 첫조립 해야지 1 함박눈 0 7 시간 전 60
180659 [잡담] 스피커 소리가 안ㄴ남 ㅜㅜ 도움!! 匠人 0 8 시간 전 40
180658 [컴퓨터] 5700x3D가 작업에서 그리 못써먹을정돈가?? 5 포츈아그렇구나 0 9 시간 전 183
180657 [컴퓨터] 애플 매직트랙패드 이거 재밌다 4 해날 0 10 시간 전 140
180656 [컴퓨터] 컴터 업글 질문좀 받아줘 5 lake 0 10 시간 전 67
180655 [컴퓨터] 유튜브 재생 버벅임/렉 문제 개인해결함 6 GLaDOS 0 12 시간 전 123
180654 [잡담] 스위치2 나오면 사려는데 7 00원짜리 0 12 시간 전 128
180653 [잡담] 배틀메이지랑 셀레스티얼 연기루머 뭐임ㅋㅋㅋㅋㅋㅋㅋ 3 Gargantua 1 13 시간 전 68
180652 [컴퓨터] 노트북 선택좀 도와주세요! 2 두부는초장에찍먹 0 13 시간 전 87
180651 [모바일] 이심에서 유심으로 이식하는거 좀 아는 사람 있음까.. 6 ULTEGRA 0 14 시간 전 89
180650 [잡담] 시놀로지 223j랑 베스테이션이랑 뭐가 더 좋음?? 10 고민된다여 0 16 시간 전 91
180649 [컴퓨터] 2.5 SSD -> M.2 체감됨? 13 스피오스피오스피... 0 16 시간 전 253
180648 [모바일] 아이폰16 VS SE4 + 워치 6 누군가는해야하잖아 0 17 시간 전 210
180647 [컴퓨터] 형님들 급함!! 기존 HDD사용중 SDD추가 할려는데 윈도우 2 아응에 0 17 시간 전 93
180646 [컴퓨터] 와이파이에서 직결로 바꾸니 빠르네 즈기 0 17 시간 전 167
180645 [컴퓨터] 모니터가 눈이 아픈데 조정가능함?? 정글은언제나맑음... 0 17 시간 전 42