3.2. Языковой алфавит. Синтаксис
Информатика, 6 класс. Учебник: Кадыркулов Р. А., Нурмуханбетова Г. К. (Алматыкітап баспасы, 2023). Раздел 3: Программирование на языке Python. Страницы 77–81.
Чему научишься
- Называть, из чего состоит алфавит языка Python.
- Придумывать правильные имена переменных (идентификаторы) и знать, какие слова занять нельзя.
- Записывать в Python несколько команд в строке и понимать, зачем нужны отступы.
- Использовать
//и%, а такжеinput()иint(input()). - Писать простые линейные программы: площадь, периметр, сумма цифр.
Разминка
- Как посадить цветок по картинкам? Правильный порядок: 3 (высыпаем семена), 1 (поливаем), 4 (появился росток), 2 (вырос цветок). Порядок важен: если полить после цветка, толку не будет.
- Что такое алгоритм? Чёткая последовательность шагов, которая приводит к результату. Рецепт плова — тоже алгоритм.
- Что такое линейный алгоритм? Шаги идут один за другим, без «если» и без повторов. Как раз как посадка цветка.
- Что нужно знать, чтобы учить любой язык? Алфавит, потом слова, потом предложения. С языком программирования всё так же.
Разбираемся
Алфавит Питона: из каких «кирпичиков» он собран
Чтобы писать по-русски, нужны буквы. Чтобы писать на Python, нужен его алфавит. В нём четыре группы символов.
💡 Служебные слова (их ещё называют зарезервированными) уже заняты самим Питоном:
if,class,def,inputи другие. Использовать их как имена своих переменных нельзя.
Имя переменной: как назвать «коробочку»
Переменная — это как подписанная коробочка в памяти компьютера. Внутри лежит значение, а на коробке написано имя. Значение можно менять по ходу программы, а имя остаётся. Такие имена называют идентификаторами.
Правила имени:
- используй латинские буквы, цифры и нижнее подчёркивание
_; - начинай с буквы;
- помни про регистр:
komp1иKOMP1— это две разные переменные; - не бери служебные слова.
Хорошие имена: A, s25, a1b88, tri_plus_dv, zzz.
⚠️ Частая ошибка. Имя не может начинаться с цифры (
1abc), содержать пробел (my age) или совпадать со служебным словом (aиA: Питон считает их разными.
Как пишется программа
Есть два правила «грамматики» (синтаксиса), которые нужно запомнить сразу.
- Несколько команд в одной строке разделяют точкой с запятой:
a = 4; b = 12; c = 10. - Отступы. Некоторые команды содержат внутри себя другие (их называют составными). Для них внутренние строки сдвигают вправо на 4 пробела или на одну табуляцию. Дальше в учебнике ты это встретишь, а пока запомни: ровная строка начинается с самого края, лишний пробел в начале строки приведёт к ошибке.
Где писать: открой среду IDLE (она поставляется вместе с Python). В ней выбери File → New File, набери программу, запусти через Run → Run Module. Если файл ещё не сохранён, программа попросит его сохранить.
Что происходит в памяти шаг за шагом
Возьмём программу:
a = 4; b = 12; c = 10 # три коробочки со значениями 4, 12 и 10
a = a + b + c # сложили всё и положили обратно в коробочку a
print(a) # показали содержимое a
Ввод данных: input() и int(input())
Команда input() просит пользователя что-нибудь набрать. Но она всегда получает текст (строку), даже если ты набрал цифры.
# Пример 1: данные считаются строками
a = input()
b = input()
c = a + b
print(c) # ввели 4 и 12, получили 412 (строки склеились)
# Пример 2: данные превращаем в целые числа
a = int(input())
b = int(input())
c = a + b
print(c) # ввели 4 и 12, получили 16
📌
input()читает строку. Чтобы получить число, оберни её:int(input()). Тогда+складывает, а не склеивает.
Целая часть и остаток
Кроме обычных действий, в Python есть два особых:
x // y— целая часть от деления (сколько раз y полностью поместилось в x);x % y— остаток от деления.
Примеры: 25 // 7 = 3, 25 % 7 = 4; 15 // 20 = 0, 15 % 20 = 15; 8 // 8 = 1, 8 % 8 = 0.
Представь, что у тебя 25 конфет и ты раскладываешь их по пакетам по 7. Целых пакетов получится 3 (//), а 4 конфеты останутся лишними (%).
💡 Последняя цифра любого целого числа — это остаток от деления на 10. Например,
348 % 10 = 8. А первая цифра трёхзначного числа — это348 // 100 = 3.
👨👩👧 Родителю. Попросите ребёнка разложить 25 мелких предметов (карандаши, конфеты) по группам по 7. Пусть сам скажет, сколько групп получилось и сколько осталось. Так
//и%перестают быть «непонятными значками».
Проверь, как понял
Проверь себя
- Какова структура алфавита языка Python? Четыре части: латинские буквы (большие и маленькие), арабские цифры, специальные символы (знаки действий, скобки, знаки препинания) и служебные слова (
for,if,print,inputи другие). - В чём разница между языком программирования и обычным языком? В обычном языке можно ошибиться, и тебя всё равно поймут. Компьютер понимает только строгие команды по точным правилам, нужна абсолютная точность.
- Как объяснить линейный алгоритм и линейную программу? Это шаги, которые идут строго один за другим, без «если» и без повторов. Линейная программа записывает такой алгоритм на языке программирования.
Решаем упражнения
№ 1
(Примени на практике, «Определение площади классной комнаты».) Даны длина a и ширина b комнаты. Составь программу, которая считает периметр P и площадь S.
Как думать. Из математики: P = 2 · (a + b), S = a · b. В Python умножение пишется звёздочкой *.
Решение.
a = int(input()) # длина комнаты
b = int(input()) # ширина комнаты
P = 2 * (a + b) # периметр
S = a * b # площадь
print('Периметр =', P)
print('Площадь =', S)
Если ввести 5 и 7, получится: периметр 2 · 12 = 24, площадь 35.
Ответ: программа выводит Периметр = 24 и Площадь = 35 для a = 5, b = 7.
№ 2
(Примени на практике, «Сумма цифр».) Дано трёхзначное число N. Выведи сумму его первой и последней цифр.
Как думать. Первая цифра (сотни) — это N // 100. Последняя — остаток от деления на 10, то есть N % 10.
Решение.
N = int(input()) # трёхзначное число
a = N // 100 # первая цифра (сотни)
b = N % 10 # последняя цифра (единицы)
print(a + b)
Для 456: a = 4, b = 6, сумма равна 10. Для 348: 3 + 8 = 11.
Ответ: для N = 456 программа выведет 10.
№ 3
(Примени на практике, задание без номера в учебнике: «Приведи по 3 примера использования // и %».)
Как думать. Возьми любые два целых числа и подели нацело, потом найди остаток. Проверь себя: делитель умножить на целую часть и прибавить остаток, должно получиться первое число.
Решение. Например:
30 // 4 = 7,17 // 5 = 3,100 // 9 = 11;30 % 4 = 2,17 % 5 = 2,100 % 9 = 1.
Проверка: 4 · 7 + 2 = 30, 5 · 3 + 2 = 17, 9 · 11 + 1 = 100.
Пример ответа: любые три верных пары, как выше.
№ 4
(Вопросы для размышления, № 1.) Какова структура алфавита языка?
Как думать. Вспомни схему с четырьмя блоками.
Решение. Латинские буквы, арабские цифры, специальные символы, служебные слова.
Ответ: алфавит Python состоит из четырёх частей: латинские буквы (прописные и строчные), цифры 0–9, специальные символы и зарезервированные слова.
№ 5
(Вопросы для размышления, № 2.) В чём разница между языком программирования и обычным языком?
Как думать. Подумай, что будет, если в сообщении другу забыть запятую, и что будет, если забыть скобку в программе.
Пример ответа. Человек поймёт предложение даже с ошибками. Компьютер не угадывает: у языка программирования очень строгие правила и небольшой набор слов. Любая лишняя буква, пробел или забытая скобка, и программа не запустится.
Ответ: язык программирования строгий и точный, а в обычном языке ошибки не мешают понять смысл.
№ 6
(Вопросы для размышления, № 3.) Как бы ты объяснил линейный алгоритм и линейную программу?
Как думать. Приведи пример из жизни: как ты собираешься в школу.
Пример ответа. Линейный алгоритм — это шаги по порядку: встал, умылся, позавтракал, собрал рюкзак. Нет вопросов «если» и нет повторов. Линейная программа — запись такого алгоритма на Python: команды выполняются сверху вниз по одной.
Ответ: линейный алгоритм выполняется строго последовательно, без ветвлений и повторов, а линейная программа — его запись на языке программирования.
№ 7
(Задания, № 1*.) Найти ошибки в трёх кодах.
Как думать. Проверяй по строчкам: скобки, названия команд, регистр букв, отступы, нужные знаки.
Решение.
Код 1. Ошибки:
a = int input()— не хватает скобок, правильноa = int(input());b = int intut()— опечатка, должно бытьint(input());t = A + B— переменные названыaиb, а неAиB. Питон различает регистр;print (c)— переменнойcнет, надоprint(t);- в строках
t = ...иprintлишние пробелы в начале.
a = int(input())
b = int(input())
t = a + b
print(t)
Код 2. Ошибки:
a = 8: b = 118— между командами нужна точка с запятой, а не двоеточие;c := a + b— такой знак здесь не нужен, присваивание пишетсяc = a + b;- лишние пробелы перед
cиprint.
a = 8; b = 118
c = a + b
print(c)
Код 3. Ошибки:
- переменная
bнигде не вводится, надо добавитьb = int(input()); - в выражении
3 · (a + b) − 4abзаписаны точка-умножение и «4ab» как в математике. В Python нужно3 * (a + b) - 4 * a * b; - лишние отступы в начале строк.
a = int(input())
b = int(input())
k = 3 * (a + b) - 4 * a * b
t = a * b
print(k); print(t)
Ответ: все найденные ошибки перечислены выше, исправленные коды приведены.
№ 8
(Задания, № 2**.) Даны целые числа a, b, c. Вычисли произведение и сумму этих чисел. В каждом результате выдели последнюю цифру и сложи эти цифры.
Как думать. Последняя цифра числа — это остаток от деления на 10. Найди произведение и сумму, возьми у каждого % 10 и сложи.
Решение.
a = int(input())
b = int(input())
c = int(input())
p = a * b * c # произведение
s = a + b + c # сумма
print(p % 10 + s % 10) # последняя цифра произведения + последняя цифра суммы
Проверка на примере 9, 4, 2: произведение 72, последняя цифра 2. Сумма 15, последняя цифра 5. Итого 2 + 5 = 7.
Ответ: для 9, 4, 2 программа выводит 7.
№ 9
(Задания, № 3***.) Айдын, Санжар и Аскар поймали k, l и m рыб. Они делят весь улов поровну. Сколько рыб получит каждый и сколько останется? Напиши программу.
Как думать. Сначала найди весь улов: k + l + m. Потом подели на 3: целая часть — это рыбы каждому, остаток — это оставшиеся.
Решение.
k = int(input())
l = int(input())
m = int(input())
total = k + l + m # весь улов
print(total // 3) # сколько получит каждый
print(total % 3) # сколько останется
Для 8, 7, 11: всего 26, 26 // 3 = 8, 26 % 3 = 2.
Ответ: каждому по 8 рыб, останется 2.
№ 10
(Домашнее задание.) Грузовик и мотоцикл встретились и поехали в противоположные стороны. а) Составь код, который считает расстояние между ними через 6 часов (грузовик 67 км/ч, мотоцикл 53 км/ч). б) Составь линейную программу для расстояния через k часов при скоростях A и B км/ч.
Как думать. Они удаляются друг от друга, поэтому скорости складываются: скорость удаления равна 67 + 53 = 120 км/ч. Расстояние = скорость · время.
Решение.
а) со значениями:
print((67 + 53) * 6) # расстояние через 6 часов
б) с переменными:
A = int(input()) # скорость грузовика
B = int(input()) # скорость мотоцикла
k = int(input()) # время в часах
print((A + B) * k)
Ответ: а) 720 км; б) расстояние равно (A + B) * k.
Шпаргалка
Термины: переменная, идентификатор, служебное слово, оператор, присваивание, линейный алгоритм, целочисленное деление, остаток.