본문 바로가기

프로그래밍, 쉽게 배워보자

무한루프와 반복의 중첩(네스트) 무한루프 '오후 1시까지 크리스마스카드를 쓴다.' 는 명령을 실행한다고 가정해 봅시다. 여기에서 크스리스마스카드를 쓰는 행위는 반복(루프) 명령에 해당합니다. 그런데 반복 횟수가 정해지지 않는 명령에 해당합니다. 이럴때 조건문은 '오후 1시까지'가 됩니다. 논리 흐름도를 만들어 보면 위 그림처럼 만들어질텐데, 앞의 것을 '선조건판단', 뒤의 것을 '후조건판단'이라 합니다. 그런데 조건판단문을 만들 때 주의할 점이 있습니다. 반복하는 횟수가 정해져 있을 때, 반복횟수를 세는 카운터를 "카운터의 값이 □□에서 □□사이" 라는 횟수를 지정해 조건문을 달게 됩니다. 보통은 카운터 횟수를 한 번 실시할 때마다 숫자가 하나씩 올라가는 것이 일반적이지만, 프로그래밍언어 중에는 카운터 횟수를 세는 숫자가 하나씩 증가하.. 더보기
반복구조(루프구조) 컴퓨터에게 '1을 다섯번 더하시오' 라는 명령을 내릴 경우, 1. 0+1을 A에 넣으시오. 2. A+1을 B에 넣으시오. 3. B+1을 C에 넣으시오. 4. C+1을 D에 넣으시오. 5. D+1을 E에 넣으시오. 하지만 이것을, '바로 앞의 답에 1을 더하는 일을 다섯번 반복하시오'라고 명령하면 훨씬 간단해집니다. 이렇게 같은 논리로 반복해서 실행하는 구조를 반복구조, 반복구조를 모식도로 그리면 마치 갈고리처럼 생겼다하여 루프구조라고 합니다. 예를 들어, '코끼리코 모양을 한 채, 제자리에서 열바뀌를 뱅뱅 돈 후, 제기차기''를 하는 게임이 있습니다. '뱅뱅 맴돈다.' 라는 동작을 할 때, 1, 2, 3 ... 숫자를 샌다. 컴퓨터가 같은 일을 정해진 숫자만큼 실행할때마다 1, 2, 3 숫자가 하나씩 늘.. 더보기
조건판단 구조와 비교하기! 만약~라면 1. 만약 비가 온다면, 2. 부침개를 만들어 먹는다. 3. 만화책이나 소설책을 읽는다. 4. 청소를 한다. * 2~3번의 부분이 들여쓰기되어 있다는 점에 주의하시길. 들여쓰기를 하면 그 부분이 '만약' 구조문의 일부분임을 한 눈에 알기 쉽습니다. 만약~라면..., 그 이외의 경우는 '내일은 책을 읽자. 만약 비가 오면 부침개를 만들어 먹고 책을 읽자구. 그렇지않으면 청소를 하고 책을 읽자.'도 조건판단구조입니다. '만약'이 많을 때 1. 만약 아이디어 시상식에서 1등이면, 2. 상금 1억원을 받는다. 3. 만약 아이디어 시상식에서 2등이면, 상금 7천만원을 받는다. 4. 만약 아이디어 시상식에서 3등이면, 상금 5천만원을 받는다. 5. 모두 다함께 모여 축하 파티를 한다! 조건판단의 중첩 '.. 더보기
프로그래밍의 흐름 컴퓨터의 제어 구조 : 컴퓨터가 일을 하는 순서를 결정하는 구조. 1. 위에서부터 순서대로 실행한다 - 순차실행 2. 조건을 판단해서 일의 순서를 변경한다 - 조건 판단 3. 동일한 일을 반복해서 실행한다 - 반복 점프 명령을 사용할 때도 있습니다. 예를 들어 프로그램 실행 도중, 에러 발생시 '만약 에러가 검출되면, 에러용 명령으로 점프하시오.' 라는 처리를 실행시키는데요, 이 에러용 명령은 일반적으로 프로그램의 가장 마지막에 기술합니다. 무슨 말인지 잘 모르시죠?^^ 실망마시길~ ... 순차실행 컴퓨터의 명령을 실행할 때는, 아~주 쉽고 자세하게 순서대로 차근차근 말해 줘야 컴퓨터가 혼란을 겪지 않아요! 순서대로 차근차근, 바로 순차실행을 의미합니다. 예를 들어, '청소하라'는 명령을 실행하기 위한 .. 더보기
프로그래밍 기초 용어! 자, 이제 프로그래밍 언어가 어떻게 생격먹었는지 살펴 볼까요? 아래는 프로그래밍 언어 중, C언어를 예로 들어 보겠습니다. 우리가 자판으로 문자를 전송한다 할지라도, 컴퓨터는 기계어(2진수로 된)로 이 정보를 이해하는데, 우리가 기계어를 자유롭게 조작할 수 있다면 프로그래밍 언어는 필요없을 것입니다. 더욱 심각한 문제는, 이 기게어 또한 모든 컴퓨터의 공용어가 아니라는 사실. 그 복잡한 기계어를 익힌다해도 컴퓨터를 바꾸면 무용지물이 될 것입니다. 그래서 만들어진 것이 프로그래밍언어입니다. 우리가 프로그래밍언어로 컴퓨터에 명령을 내리면, 이 '언어'를, 컴파일러나 인터프리터라는 '번역 프로그램'이 기계어로 번역해 줍니다. 자, 이제 프로그래밍 언어가 어떻게 생격먹었는지 살펴 볼까요? 아래는 프로그래밍 언어.. 더보기
컴퓨터는 어떻게 숫자를 세고, 문자를 표현할까? 컴퓨터는 어떻게 숫자를 셀까? 1. 우리는 10단위로 숫자를 셉니다. 이것을 십진법이라고 합니다. 하지만 엿날옛적, 일부 고대 문화권에서는 2개 단위로 숫자를 묶어 센 적이 있습니다. 이것을 이진법이라 하는데요, 컴퓨터는 이 2진법 즉 2진수를 사용합니다. 2. 2진수란: 0과 1, 단 두개의 숫자만을 사용하는 수입니다. 그래서 2진수라고 부릅니다. 아래는 2진수를 0부틔 15까지 나열해봅니다. 여러분이 보기 편하시도록, 가로안에 십진수를 써보겠습니다. 0, 1, 10(십진수의 10이 아닙니다. 이진수에서는 2입니다), 11(십진수의 3), 100(4), 101(5), 110(6), 111(7) 1000(8), 1001(9), 1010(10), 1011(11), 1100(12), 1101(13), 111.. 더보기
컴퓨터 본체 부품과 컴퓨터를 움직이는 프로그램! 컴퓨터 본체를 구성하는 부품 1. 메모리(memory): 메모리란, 처리중인 데이터나 실행중인 프로그램을 나열해 둔 작업대와 같은 역할을 합니다. 그래서 주기억장치라고 부릅니다. 메모리에는 램(Ram-Random Acess Memory)과 롬(Rom-Read only Memory)등이 있습니다. 램(Ram-Random Acess Memory )은 정보를 전기 신호로 기억합니다. 따라서 RAM은 전기가 흐르는 동안만 사용할 수 잇으며 전기를 끄면 기억하던 모든 내용은 소실됩니다. 롬(Rom-Read Only Memory)은 우리가 자유롭게 사용할 수 없는 특수한 메모리. 컴퓨터를 켰을 때 연결된 기기를 확인하고 문제가 없다면 OS(Operation System)를 가동하라는 프로그램이 내장된 메모리 장치입.. 더보기