알고리즘 교안 질문
339
작성한 질문수 115
p.22 입력이 계속해서 이어질때
1안)
문자를 입력했을 때 1이라는 문자열이 줄바꿈이 되면서 계속 출력됩니다.
2안)
문자를 한번 입력하고 바로 프로그램이 끝납니다.
두 안에 대해 위와같은 차이를 보이는데 정상인가요?
답변 1
0
1. scanf로 할 때와 cin으로 할 때 맞으신가요?
2. 문자를 넣으셨다는데 int형으로 선언을 한 것이기 때문에 숫자를 넣어야 하는데 숫자를 넣으신거 맞나요?
3. 스샷 부탁드립니다.
감사합니다.
강사 큰돌 올림.
0
감사합니다 선생님. 조언주신대로 문자를 입력하지 말고 숫자를 입력하니 원하는 결과가 잘 나왔습니다.
하지만, 문자(예: 'a')또한 아스키코드 정수값이라서 괜찮을 것이라 생각했는데, 1안 과 2안 모두 예상과는 다른 결과를 보이고 있습니다. 왜 이런 결과를 보이는지 궁금합니다.
0
안녕하세요. ㅎㅎ
아스키코드는 문자로 받았고 그 이후 숫자로 변환했을 때 아스키코드가 출력이 되는 겁니다.
자, 예를 들어
#include <bits/stdc++.h>
int a;
using namespace std;
int main() {
cin >> a;
cout << a << '\n';
return 0;
}
다음과 같은 코드에서 a를 입력하면 0이 됩니다. 이는 잘못된 입력값 때문입니다.
C++의 경우 입력에 대한 부분이 잘못되었다고 판단되면 값에 0을 쓰고 오류 비트를 설정합니다. 추출 결과 값이 너무 크거나 작아서 값을 유지할 수 없으면 std::numeric_limits::max() 또는 std::numeric_limits::min()이 기록되고 오류 비트 플래그가 설정됩니다. (C++11이상부터 이렇게 됩니다.)
감사합니다.
큰돌 올림.
1-E질문입니다!
0
533
2
3-L 틀린 부분 피드백 부탁드립니다.
0
836
2
1-A문제 순열재귀함수 질문입니다.
0
396
1
1-A 일곱난쟁이문제입니다
0
471
1
문제 풀 때 방향성에 대해
0
811
1
맥에서 vs code로 실행 관련 질문입니다
0
530
1
17071번 메모리 초과
0
390
1
1-C질문입니다!
0
428
2
2-B BFS 시간초과질문
0
638
2
1-O 13번 라인
0
447
1
6-J 놀이공원 문제 질문
0
390
1
구현관련 질문
0
492
1
강의 교안
0
322
1
실력을 더 올리고나서 강의를 보는 것이 맞을까요?
0
550
1
안녕하세요! 재귀함수에 관해서 질문드립니다
0
540
1
1-K
0
481
2
3-G번 질문있습니다.
1
481
3
3-C 실행 시간 질문드립니다.
0
504
1
4-A 문제 풀이 질문있습니다.
0
602
2
비트마스킹 연산자 "1의 보수" 영문 표기법
0
441
1
격자탐색 문제에서 BFS 시간복잡도 질문드립니다.
0
349
1
3-O go 함수 질문 드립니다.
1
453
2
4-A 출력 질문
0
308
1
1주차 1-O 질문드립니다
0
266
1





