| English | 의미 |
|---|---|
| variable/ˈveərɪəbl/ | 변수 |
| data type/ˈdeɪtə taɪp/ | 데이터 타입 |
| constant/ˈkɒnstənt/ | constant: 상수 |
| flowchart/ˈfləʊtʃɑːt/ | 플로우차트 |
| structured English/ˈstrʌktʃəd ˈɪŋɡlɪʃ/ | 구조화 영어 |
| pseudocode/ˈsuːdəʊkəʊd/ | 가짜 코드 |
| assignment/əˈsaɪnmənt/ | 대입 |
| identifier/aɪˈdentɪfaɪə/ | identifier: 식별자 |
| operators/ˈɒpəreɪtəz/ | operators: 연산자 |
| precedence/ˈpresɪdəns/ | 우선순위 |
| concatenation/kənˌkætəˈneɪʃn/ | concatenation: 연결 |
| library routines/ˈlaɪbrəri ruːˈtiːnz/ | 라이브러리 루틴 |
| program library/ˈprəʊɡræm ˈlaɪbrəri/ | 프로그램 라이브러리 |
| insert/ˈɪnsɜːt/ | insert: 삽입 |
fitting하지 못한 숫자
- 1996년 6월 4일, 최초의 아리안 5 로켓이 궤도를 벗어나 발사 37초 만에 파괴되었으며, 4개의 위성이 탑승 중이었습니다.
- 원인은 하나의 변환이었으며, 로켓의 횡방향 속도를 설명하는 64비트 소수값이 16비트 정수로 복사되었습니다. 아리안 5는 아리안 4보다 빨랐으므로, 숫자가 상자에 너무 커져 가이드 컴퓨터가 종료되었습니다.
- 모든 변수에는 데이터 타입이 있으며, 타입이 what fits를 결정합니다. 선택하는 것은 디자인을 코드로 전환하는 첫 번째 작업입니다.
- 이 교재는 기본 사항입니다: 상수, 변수, 타입, 표현식, 입력 및 출력, 그리고 호출할 수 있는 미리 만든 루틴들.
디자인에서 코드로
- 디자인은 플로우차트 또는 구조화 영어로 도착합니다. 이를 가상 코드로 변환하고, 나중에 실제 언어로 만듭니다.
- 변수와 그类型을 찾으십시오. 입력 및 출력 상자는 **
INPUT**과 **OUTPUT**으로, 결정 다이아몬드는IF … ELSE … ENDIF또는 **CASE**으로, 루프 화살표는WHILE,REPEAT … UNTIL또는 **FOR**로, 프로세스 상자는 할당으로 바뀝니다. - 완성되었다고 판단하기 전에 작은 입력을 가상 코드를 통해 trace하여 확인하십시오.

각 플로우차트 기호가 하나의类型的가상 코드 문장으로 바뀜
상수와 변수
- 상수는 프로그램 실행 중 변하지 않는 값을 유지합니다:
CONSTANT Pi = 3.14159. 변수는 변할 수 있는 값을 가지며, 타입과 함께 선언됩니다:DECLARE Radius : REAL. - 여러 곳에서 나타나는 고정된 값(예: 세금율 또는 최대 점수)에는 상수를 사용하십시오.
- 평가 기준에서 나열되는 장점: 한 번 설정되어 실수로 변경될 수 없으며; 변경은 한 곳에서 이루어져, 사용하는 모든 문장에 영향을 미치며; 식별자가 값에 의미 있는 이름을 부여합니다.

변수는 재할당될 수 있지만, 상수는 불가능함
변수는 레이블이 붙은 상자입니다
각 할당은 이름이 붙은 상자에 하나의 값을 저장하며, 동일한 이름을 다시 할당하면 덮어씁니다. 프로그램을 단계별로 추적하여 각 상자가 현재 값을 갖도록 확인하십시오.
상수는 프로그램 실행 중 변하지 않는 고정된 값을 유지하는 반면, 변수는 재할당이 가능합니다.
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
상수(예: Pi 또는 최대 점수)는 코드를 명확하게 하고 반복되는 값을 한 곳에서 변경할 수 있게 합니다.
세금율과 같은 값에 상수를 사용하는 장점이 무엇입니까? 모든 해당 항목을 선하십시오.
난이도 2/5 · 140 코인 + 오늘 첫 완료 시 소액 보너스
세 가지 채점 기준은 안전성, 단일 변경 지점, 가독성입니다. 속도는其中之一가 아닙니다.
여섯 가지 데이터 타입
INTEGER는 정수(카운트, 인덱스, 루프 카운터)에 사용합니다.REAL는 소수부가 있는 숫자(가격, 평균)에 사용합니다.CHAR는 단일 Quotes(')로 감싼 한 글자에 사용합니다.'A'는 이 경우입니다.STRING는 더블 Quotes(")로 감싼 텍스트에 사용합니다."Hello"는 이 경우입니다.BOOLEAN는TRUE또는FALSE에 사용합니다(예:Found같은 부호).DATE는 날짜에 사용합니다.- 변수가 사용되는 방식에서 유형을 판별하세요: 소수점은
REAL,TRUE은BOOLEAN, 단일 따표는CHAR, 배열 인덱스 또는DIV와MOD은INTEGER임을 의미합니다. 가이드가 표기한 대로 대문자로 유형을 쓰십시오.
풀이 예제: 적절한 데이터 유형 명시하기
Found ← FALSE는BOOLEAN입니다: 참/거짓 값을 저장합니다.Initial ← 'K'는CHAR입니다: 단일 따옴표 속 한 문자입니다.Name ← "Li Wei"은STRING입니다: 이중 따옴표 속 텍스트입니다.Price ← 12.99는REAL입니다: 소수부가 있습니다.Count ← Count + 1은INTEGER입니다: 정수 단위로 증가하는 카운터입니다.- 올바른 유형당 1점씩 부여하므로, 불확실할 때도 모든 줄에 답해야 합니다. 빈칸은 점수가 없습니다.
각 값을 변수로 선언할 데이터 타입과 매칭하십시오.
난이도 2/5 · 140 코인 + 오늘 첫 완료 시 소액 보너스
소수점, 단일 인용부호, 이중 인용부호와 논리값은 각각 하나의 타입을 가리킵니다.
할당 및 식
- 할당에는 화살표가 사용됩니다:
Total ← Total + 1,Average ← Sum / Count. - 산술 연산자는
+ - * /이며, 정수除法를 위한DIV과 나머지를 위한MOD가 추가됩니다:7 DIV 2 = 3와7 MOD 2 = 1. - 비교는
=,<>,<,>,<=,>=; 논리는AND,OR,NOT입니다. - 우선순위, 가장 높은 것부터:
NOT, 다음으로* / DIV MOD, 다음으로+ -, 다음으로 비교 연산자, 다음으로AND, 다음으로OR. 불확실하면 괄호를 사용하세요.
7 DIV 2의 값은 무엇입니까?
난이도 2/5 · 140 코인 + 오늘 첫 완료 시 소액 보너스
DIV는 정수 나눈 값입니다: 7 ÷ 2 = 3 나머지 1이므로, DIV는 3을 줍니다.
7 MOD 2의 값은 무엇입니까?
난이도 2/5 · 140 코인 + 오늘 첫 완료 시 소액 보너스
MOD는 나머지를 줍니다: 7 ÷ 2는 나머지 1을 남깁니다.
이 가위코드에서 변수에 값을 할당하는 기호는 무엇입니까?
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
할당은 ←을 사용합니다; =는 비교입니다.
각 가위코드 연산자를 그 기능과 매칭하십시오.
난이도 2/5 · 140 코인 + 오늘 첫 완료 시 소액 보너스
← 은 저장하고, = 은 비교하며; DIV는 유효숫자를, MOD는 나머지를 줍니다 (7 DIV 2 = 3, 7 MOD 2 = 1).
입력 및 출력
OUTPUT "Enter your name:"는 프롬프트를 표시하고;INPUT Name은 키보드로부터 입력하여 변수에 읽습니다;OUTPUT "Hello, ", Name는 콤마로 구분된 여러 항목을 출력합니다.- 문자열은 **연결(concatenation)**이라고 불리는
&로 연결됩니다:"A" & "BC"은"ABC"입니다. - 따옴표를 명확히 유지하십시오:
"7"는 문자열이고,7은 숫자이며,'7'은 단일 문자입니다.
내장 함수 및 라이브러리 rutin
- 프로그램 라이브러리는 이미 작성, 컴파일 및 테스트된 rutin을 포함하고 있어 직접 작성하는 것보다 호출 시 빠르고 안전합니다. Paper 2 삽입 목록에는 사용 가능한 라이브러리 rutin의 정확한 이름이 나옵니다.
- 문자열:
LENGTH(s),LEFT(s, n),RIGHT(s, n),MID(s, start, n)(위치는 1부터 세고),TO_UPPER(s),TO_LOWER(s). 변환:NUM_TO_STR(x),STR_TO_NUM(s),IS_NUM(s),ASC(c),CHR(n). - 숫자와 날짜:
INT(x)는 정수 부분으로 잘라냅니다;RAND(n)은 0부터 n까지(포함하지 않음)의 실수를 제공하므로INT(RAND(6)) + 1은 주사위 굴리기 결과입니다;DAY,MONTH,YEAR,DAYINDEX,SETDATE,TODAY;EOF(f)은 파일용입니다.

s = "COMPUTER"에 제시된 일반적인 문자열 rutin, 위치 1부터 8까지
9618 가위코드에서 문자열을 대문자로 변환하는 루틴은 무엇입니까?
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
UCASE는 IGCSE 명칭이며 여기서는 인정되지 않습니다. Paper 2 삽입지에 인쇄된 정확한 명칭을 사용하십시오.
풀이 예제: 각 식 평가하기
Word ← "Program",Code ← 'Q',N ← 7가 주어졌습니다. 안쪽에서 바깥쪽으로 계산하세요.LENGTH(Word)은7임.MID(Word, 4, 2)는"gr": 위치 4의 두 문자.LEFT(Word, 3) & "!"은"Pro!"임.TO_UPPER(RIGHT(Word, 2))은"AM"입니다: 내부 함수가 먼저 실행됨.ASC(Code) - ASC('A')은16입니다. 왜냐하면'Q'은 81이고'A'은 65이기 때문입니다.N DIV 2 + N MOD 2은3 + 1 = 4입니다.NUM_TO_STR(N) & "th"은"7th"입니다.INT(N / 2)은3로, 3.5의 정수 부분입니다.
Word ← "Program"와 함께, MID(Word, 4, 2)의 값은 "____"입니다.
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
위치 1부터 세기: P-r-o-g-r-a-m, 따라서 위치 4는 g이고 그로부터 두 글자는 gr입니다.
풀이 예제: 오류 찾기
- 각 문장은 함수나 연산자를 잘못 사용할 수 있습니다. 오류를 설명하거나 NO ERROR를 쓰세요.
Result ← 2 & 4:&은 문자열을 결합하지만, 2와 4는 정수이므로+가 필요합니다.SubString ← MID("pseudocode", 4, 1): NO ERROR, 위치 4에서 한 글자를 가져옴,"u".Answer ← LENGTH(42):LENGTH은 정수가 아닌 문자열을 accept합니다.Flag ← "TRUE": 부울린 값은 따옴표 없이TRUE이며, 따옴표가 있으면 문자열입니다.
Result ← 2 & 4는 Result에 6을 올바르게 저장합니다.
난이도 1/5 · 100 코인 + 오늘 첫 완료 시 소액 보너스
&는 문자열을 결합합니다. 두 정수에 대해서는 연산자가 +입니다; 이것이 시험에서 설명하라는 오류입니다.
놓칠 수 있는 점
- IGCSE에서는
UCASE,LCASE,VAL,STR이라는 명칭이 A-Level에서 허용되지 않습니다. 대신TO_UPPER,TO_LOWER,STR_TO_NUM,NUM_TO_STR을 사용하십시오. - 단일 Quotes는
CHAR를 생성하고, 더블 Quotes는STRING을 생성합니다.'A'와"A"는 다른 유형입니다. - 1에서 시작하는 문자열 위치는 0이 아닙니다. **
MID(s, 1, 1)**는 첫 번째 문자입니다. RAND(n)는 n 자체를 반환하지 않으며,INT은 반올림이 아닌 소수부를 잘라냅니다.
이해했습니다
- 디자인 → 가상의 코드: 변수와 유형을 찾고, 각 플로우차트 기호를 문장으로 매핑한 후 작은 입력으로 추적을 수행하세요.
- 상수: 한 번 설정되어 한 곳에서 변경되며 명명함; 변수: 사용법에 따라 여섯 가지 유형 중 하나로 선언함
- **
←**는 할당, **DIV**은 정수 나눈 값, **MOD**는 나머지를 의미합니다. 우선순위:NOT→* / DIV MOD→+ -→ 비교 연산자 →AND→OR - 삽입의 라이브러리 rutin을 정확한 9618 명칭으로 사용하세요:
LENGTH,MID,TO_UPPER,NUM_TO_STR,INT,RAND