Professional Documents
Culture Documents
Part1. 개념
1 장 . 프로그래밍 절차
용어
◦ program
n. 계획 , 예정 , 스케줄 , 일정 , 행사 계획 ( 연극 , 음악회 , 운동
회 등의 ) 프로그램 , 예정표 ,
계획표 , 진행 순서 , 차례 (plan)
◦ 컴퓨터 프로그램 (program)
컴퓨터에게 동작과 순서와 방법을 지시하는 명령어의 집합
◦ 소프트웨어 (software)
프로그램과 프로그램의 수행에 필요한 절차 , 규칙 , 관련 문서 등
의 총칭 . 보통 프로그램과 같은 의미로 쓰임 . 시스템 소프트웨
어는 운영체제와 같이 컴퓨터를 동작시키고 응용
소프트웨어는 문서 편집기처럼 사용자가 원하는 일을 수행함 .
2
1 장 . 프로그래밍 절차
프로그램을 작성하려면 프로그램 언어가 필요하다 . 프로그램 언어는 알고리
즘 ( 문제를 해결하기 위해 정해진 일련의 절차 ) 이나 자료 구조 ( 데이터와
데이터간 관계의 개념적 표현 ) 를 서술하기 위한 임의의 기호로서 영어를
이용한다 . 프로그램 언어는 다음과 같이 나뉜다 .
역사
◦ C 는 DEC PDP-11 기종에서 UNIX 의 운영체제를 구현하는 데 사용되었다 .
◦ Martin Richards 가 BCPL 이라는 언어를 개발하였고 , 이 언어에 이어서 Ken
Tompson 은 B 라는 언어를 만들었다 .
◦ ( 벨연구소에서 딴 B) B 언어는 1970 년대에 C 의 개발로 이어졌다 .
◦ C 언어라는 말은 B 언어 다음의 언어라는 뜻으로 ( 알파벳상 ) 명명되었다 .
3
1 장 . 프로그래밍 절차
문제이해 논리설계 코딩 번역 실행 활용
1) 직원의 의미에서 정규직외에 계약직도 포함하는가 ?
2) 직원의 의미에서 시간제 (Part-Time) 근무자도 포함하는가 ?
1. 문제 이해 3) 5 년이상을 계산할 때 오늘기준으로 또는 저녁식사일 기준으로 해야
“ 토요일에 5 년이상 근무한 직원들을 저 하나 ?
녁식사 초대하려는데 명단이 필요하다” 4) 5 년이상을 계산할 때 불연속적으로 합산하여 5 년인 경우도 포함하
나 ?
5) 명단에는 이름과 부서와 전화번호만 포함하면 되나 ?
2. 논리 설계
어떤 단계로 나누어서 어떤 순서로 처리할 것인가를 계획
한다 . 일상에서도 여행가기전에 계획을 세우고 , 요리를
하기 전에 재료와 순서를 기록해 보는 것과 유사하다 .
3. 코딩
선택한 프로그래밍 언어를 이용하여 프로그램을 작성한
다 . 텍스트 편집기 또는 개발도구를 이용한다 .
4. 번역 ( 컴파일 )
고급 언어로 쓰인 프로그램을 컴퓨터에서 즉시 실행될 수 있는 형태의 목적 프로그램
( 기계어 ) 으로 바꾸어 준다 . 그 과정에서 구문에러 (syntax error) 를 발견하면 이
를 고쳐나간다 . 컴파일 , 링크 , 빌드 등의 용어를 사용한다 . 개발도구의 사용이
필수적이다 .
5. 실행 6. 활용
기계어로 만들어진 최종 본을 수행시키 사용설명서를 제작하여 배포하고 사용자를 교육시
는 작업이다 . 개발도구를 사용하거나 킨다 . 개발과정에서 만들어진 명세서를 정리한다 .
독립적으로 실행시킬 수 있다 . 작성된 프로그램이 잘 활용되도록 관리한다 . 4
2 장 . 논리의 설계 – 일반 순서도
5
2 장 . 논리의 설계 – 일반 순서도
6
2 장 . 논리의 설계 – 일반 순서도
순서도를 작성하려면
주어진 문제를 작은 단위로 나누어 순서대로 나열하는 첫 번째 단계와
순서도 기호에 맞추어 표현하는 두번째 단계로 나뉜다 .
1. 작은 단위로 나누기
1.섞는다
2.2 개의 개란을 추가한다
3.휘발유 1 리터를 추가한다 오류 찾아 고치기
4.350 도에서 45 분 굽는다
5.밀가루 세 스푼을 추가한다 1.우유가 있는가
2.그렇다면 우유를 한 컵 붓는
다 .
3.아니라면 물을 한컵 붓는다 .
4.밀가루 세컵을 추가한다 .
5.2 개의 계란을 추가한다 .
6.섞는다
7.350 도에서 45 분 굽는다 .
7
2 장 . 논리의 설계 – 일반 순서도
2. 순서도 그리기
8
3 장 논리의 설계 - 프로그램 순서도
1. 입출력 기호
문제 : 3 과 4 를 더해
라 .
9
3 장 논리의 설계 - 프로그램 순서도
10
4 장 . 프로그램 번역 - 출력 프로그램 코딩과 번역
2. 프로그램 번역
(Microsofot Visual C++ 6.0 사용
법 )
1)소스생성 – 상단메뉴 이용 ( 방법 1)
소스이름을 미리 정함 .
확장자는 .c 가 되도록 함 .
11
4 장 . 프로그램 번역 - 출력 프로그램 코딩과 번역
1)
1) 소스생성
12
4 장 . 프로그램 번역 - 출력 프로그램 코딩과 번역
2) 컴파일
프로그램 소스 입력 후 Build 메뉴에서 Compile 클릭한다 .
13
4 장 . 프로그램 번역 - 출력 프로그램 코딩과 번역
> 오류가 난 경우
> 성공한 경
우
14
4 장 . 프로그램 번역 - 출력 프로그램 코딩과 번역
3) 링크
Build 메뉴에서 Build 클릭하여 링크를 실행한다 . 오류없이 성공하면 .exe 가 생성된다 .
대부분 링크에서 오류가 나지는 않는다 . 따라서 2) 컴파일만 하고 오류가 없을 때 바로
4) 실행을 하면 링크는 자동으로 수행된다 .
15
4 장 . 프로그램 번역 - 출력 프로그램 코딩과 번역
4) 실행
Build 메뉴에서 !Execute 클릭하여 수행한다 . 참고로 이 명령은 ctrl+F5 를 단축키로 눌러도 된다 .
물론 컴파일의 경우는 ctrl+F7 을 누르면 된다 . 자주 사용하니까 단축키를 알아두는 것도 유용하다 .
반대로 소스 수정되었는데 컴파일 안하고 실행을 누르면 , “Would you like to build
다시 컴파일을 할 필요는 없다는 의미이다
는데. 컴파
일 다시 할래 ?“ 질문이 나오므로 그때 OK 하면 된다
16
5 장 . 프로그램 코딩 - 변수의 사용
1. 변수 이름
17
5 장 . 프로그램 코딩 - 변수의 사용
2. 변수 선언
> 선언방
법
int inum; 정수형 변수는 inum 이고
float fnum;
double dnum; 실수형 변수는 fnum 과 dnum 이고
char ch; > 자료 형 종류
문자형 변수는 ch 임 자료형 키워드 크기
자료형 변수이름 ;
문자 char 1 바이트
정수 int 4 바이트
int inum1; → int inum1, inum2, inum3; (short 2 바이트 , long 4 바이
int inum2; 실수 float, double 트바이트
4 ) , 8 바이트
int inum3;
18
5 장 . 프로그램 코딩 - 변수의 사용
3. 변수치환
19
5 장 . 프로그램 코딩 - 변수의 사용
메모리
20
6 장 . 프로그램 코딩 - 입출력 함수
1. 출력
21
6 장 . 프로그램 코딩 - 입출력 함수
2. 입력
치환
정해진 상수 넣기 (pi = 3.14;), 초기값 넣기 (int num = 0;)
계산에 의해 넣기 (area = width * height;)
입력
프로그래머가 임의로 정할 수 없는 값을 사용자로부터 입력 받아 넣기
예 ) 학생성적 , 물건 값 , 은행 입출금액 등
%d 10 진 정수 int
%c 문자 char
%f 실수 float
%lf 실수 double
22
6 장 . 프로그램 코딩 - 입출력 함수
용어
한줄 예 ) /*This is a comment*/
여러줄 예 ) /*
This is a comment
*/
23
6 장 . 프로그램 코딩 - 입출력 함수
문제
24
6 장 . 프로그램 코딩 - 입출력 함수
> 순서도
모두 실수형
> DFD
25
6 장 . 프로그램 코딩 - 입출력 함수
> 코딩
#include <stdio.h>
main()
{
float weight, height, bimando;
1 printf (" 몸무게를 입력하시오 \n");
2 scanf ("%f", &weight);
3 printf (" 키를 입력하시오 \n");
4 scanf ("%f", &height);
5 bimando = (height - 110) / weight;
6 printf (" 몸무게는 %.0fkg 이고 키는 %.0fcm 이므로 당신
의 비만도는 %.2f 입니다 \n",weight, height, bimando);
} > 디버깅
표
step weigh height bimando 화면출력 화면입력
t
1 몸무게를 입력하시오
2 47.0 47
3 47.0 키를 입력하시오
26