길동이는 커피숍에서 아르바이트를 하고 있습니다. 손님이 와서 콜라와 사이다를 주문하였는데~ 길동이는 잠깐 다른 생각을 하느라고 콜라잔에 사이다를 채우고 사이다잔에 콜라를 채웠습니다. 이대로 손님에게 드린다고 하면 손님은 항의를 할것 이고~ 이것을 다시 버리고 새로 사이다 콜라를 따르게 되면 길동이의 아르바이트 비용에서 사이다 콜라 값을 변상해야 됩니다. 우리가 길동이의 고민을 풀어 주세요. |
문제풀이 |
1단계) 빈 컵을 가져 와서 콜라잔에 든 사이다를 붓고 콜라잔을 깨끗이 씻는다.
2단계) 사이다잔에 든 콜라를 콜라잔에 붓고 사이다잔을 깨끗이 씻는다.
3단계) 빈컵에 있던 사이다를 사이다잔에 붓는다.
컴퓨팅 사고력 |
이 문제는 프로그래밍 구현시에 다음과 같이 두개의 변수값을 변경하는 경우에 사용되는 방법입니다.
scanf("%d %d",&a,&b);
이때 a = 100, b= 10 을 입력 받았습니다.
이때 a부터 b까지 어떤 처리를 하려고 하는데~
a가 b보다 항상 작은 값으로 해서 a부터 b 까지 커지는 순서대로 처리를 해야 됩니다.
그러면 고객에게 당신은 순서가 바뀌었으니 다시 입력해 주세요. 라는 문구를 띄우는 것 보다는
프로그램에서 a와 b의 값을 변경하는 것이 더 올바른 작업입니다.
따라서 위의 사이다 콜라를 응용해서 임시변수 c를 만들어서 다음과 같이 처리하면 됩니다.
1
2
3
4
5
6
|
if(a>b)
{
c=a;
a=b;
b=c;
}
|
cs |
이러한 유형의 문제가 정보올림피아드 예선문제중 2018년 고등부 2번 유형으로 제출된적이 있어서 소개해 드립니다.
(2018년 고등부 2번) 한 프로그래머가 온라인 상점(스토어)에서 판매하는 게임의 매뉴얼을 제작하였다. 하지만 곧 매뉴얼 전체에서 “염소”와 “양”의 역할을 반대로 작성하였다는 것을 발견하였다. 이 프로그래머는 “염소”라고 작성된 것을 “양”으로 바꾸어야 하고, “양”이라고 작성된 것을 “염소”로 바꾸어야 한다. 이때, 프로그래머는 “여우”라는 단어가 매뉴얼에서 한번도 사용되지 않은 사실을 알고 있다. 다음 보기 중에서 어떤 알고리즘이 프로그램의 오류를 정확하게 고칠 수 있을까?
|
오늘도 최선을 다하는 우리 학생들을 응원합니다.
인천 서구 검단신도시 원당컴퓨터학원
사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기
'강의자료 > 알고리즘 수학' 카테고리의 다른 글
[컴퓨팅사고력] 길동 형사를 도와 주세요. (5) | 2021.03.23 |
---|---|
[컴퓨팅 사고력] 컴퓨터 비밀번호를 풀어 보자 (6) | 2021.02.26 |
[컴퓨팅 사고력]해시(Hash)테이블 이해하기 (6) | 2021.02.15 |
[컴퓨팅 사고력] 피보나치 수열 (5) | 2021.02.01 |
[초등 사고력 풀이비법] 합과 차의 관계를 이용해 해결하기 (295) | 2021.01.28 |