GCSE Pseudocode: практичний посібник до стилю екзамену
Вивчіть точні конвенції псевдокоду, які очікують екзаменаційні комісії, з опрацьованими прикладами змінних, циклів, масивів і функцій.
Щороку бали за псевдокод викидаються з дивних причин: неправильний символ присвоєння, пропущені двокрапки, недбале відступання. Цей посібник описує конвенції, які використовуються на екзаменах GCSE Computer Science (стиль найбільше схожий на довідкові листи OCR та AQA), і показує, як писати псевдокод, що насправді заробляє баали, а не втрачає їх через нюанси форматування.
Присвоєння, порівняння та вивід
Найчастіша помилка — плутанина між присвоєнням і рівністю. Псевдокод використовує <- або = для присвоєння залежно від комісії, тому перевірте вашу специфікацію, але логіка залишається однаковою в будь-якому випадку.
score = 0
score = score + 10
OUTPUT score
Для введення та виведення використовуйте INPUT та OUTPUT великими літерами — екзаменатори шукають ці точні ключові слова, а не print() або console.log(). Якщо ви напишете синтаксис у стилі Python у питанні про псевдокод, деякі схеми оцінювання все ще прийматимуть його, якщо логіка правильна, але не ризикуйте. Дотримуйтесь викладеної конвенції.
Порівняння використовують == для рівності в більшості псевдокодів комісій, а також !=, <, >, <=, >= як ви очікуватимете. Не використовуйте один = для порівняння — це класична помилка у стилі C, яка коштує балу в операторі IF.
Вибір: IF, ELSE IF, ELSE
IF age < 13 THEN
OUTPUT "Child"
ELSE IF age < 18 THEN
OUTPUT "Teenager"
ELSE
OUTPUT "Adult"
ENDIF
Кожен IF потребує відповідного ENDIF (або ENDIF/END IF залежно від специфікації — AQA, як правило, просто закриває з відступанням без явного кінцевого маркера в деяких версіях, тому перевірте довідковий лист вашої комісії перед екзаменом). Робіть відступ послідовно: два або чотири пробіли, не має значення яка, але виберіть один і дотримуйтесь його протягом усієї відповіді. Екзаменатори читають структуру через відступання так само, як через ключові слова.
Ітерація: три типи циклів, три завдання
Псевдокод GCSE передбачає, що ви знаєте, коли використовувати кожен цикл, а не просто як його писати.
З лічильником — використовуйте FOR, коли ви точно знаєте, скільки разів повторити:
FOR i = 1 TO 10
OUTPUT i * i
NEXT i
Залежно від умови, перевірка спочатку — використовуйте WHILE, коли цикл може не виконатися взагалі:
WHILE total < 100
total = total + 10
ENDWHILE
Залежно від умови, перевірка в кінці — використовуйте REPEAT...UNTIL, коли цикл повинен виконатися принаймні один раз, наприклад під час валідації введення:
REPEAT
INPUT password
UNTIL LEN(password) >= 8
Часта пастка на екзамені: екзаменатори просять вас побачити, чому цикл WHILE ніколи не виконується, або чому цикл REPEAT виконується на один раз більше. Трасуйте з реальними значеннями на папері перед тим, як відповідати — не просто читайте код.
Масиви та 2D масиви
Масиви майже завжди індексуються з нуля в екзаменаційному псевдокоді, що відповідає умовам Python, викладеним поряд з ним.
names = ["Alex", "Sam", "Jo"]
OUTPUT names[0]
FOR i = 0 TO LEN(names) - 1
OUTPUT names[i]
NEXT i
Для 2D масивів ви побачите нотацію grid[row][col] та вкладені цикли FOR:
FOR row = 0 TO 2
FOR col = 0 TO 2
OUTPUT grid[row][col]
NEXT col
NEXT row
Добийтесь правильного порядку циклів — рядки зовні, стовпці всередині є стандартом, але уважно читайте питання, тому що деякі схеми оцінювання навмисне це міняють, щоб перевірити, чи ви насправді трасуєте логіку.
Процедури та функції
Знайте різницю: процедура щось робить і не повертає значення, функція повертає одне.
PROCEDURE greet(name)
OUTPUT "Hello " + name
ENDPROCEDURE
FUNCTION square(n)
RETURN n * n
ENDFUNCTION
result = square(5)
greet("Priya")
Параметри передаються за значенням, якщо у питанні не сказано інше. Якщо вас просять написати функцію, завжди включайте RETURN — функція без неї — це втрачений бал, навіть якщо розрахунок усередині правильний.
Таблиці трасування: ваша найкраща зброя на екзамені
Коли питання дає вам псевдокод і просить вивід, не гадайте — побудуйте таблицю трасування. Стовпці для кожної змінної, один рядок на ітерацію циклу, заповнюючи значення в міру їх зміни. Це повільніше, ніж читати код у своїй голові, але набагато надійніше, особливо з вкладеними циклами або помилками на одиницю у межах масиву.
Правильне практикування
Пишіть псевдокод від руки перед тим, як набирати його — на екзамені немає автозаповнення. Потім перетворіть кілька власних відповідей у реальний Python і запустіть їх; якщо вивід збігається з тим, що ви передбачали, ваше розуміння твердо. Якщо ні, ви знайшли точно, де ваша логіка ламається.
Для більш структурованої практики з циклами, масивами та функціями в реальному коді перевірте сегменти Python та Computer Science на Korra Studio.
Написано з допомогою штучного інтелекту, перевірено та опубліковано Мішалем Пільчем (CISSP), Korra Studio.
Це одна замітка з бази знань Korra Studio — платформа поєднує кожну тему з 1-на-1 менторингом.
Початок безплатноarrow_forward