Программирование играет важную роль в современной жизни, а его изучение становится неотъемлемой частью образования. Для успешной сдачи ЕГЭ по информатике необходимо понимать основы программирования, владеть синтаксисом популярных языков и уметь анализировать алгоритмы.
Прежде, чем начать разбирать сами языки и изучать примеры несложных задач, необходимо разобраться с основными терминами, которые используются в среде программистов.
Прежде чем углубляться в конкретные языки программирования, разберем основные понятия:
Алгоритм — последовательность действий для решения задачи.
Переменная — именованная область памяти, хранящая данные.
Типы данных — категории значений (числа, строки, логические значения и др.).
Операторы — элементы языка, выполняющие операции (арифметические, логические и др.).
Условные конструкции — позволяют выполнять код в зависимости от условий.
Циклы — обеспечивают повторное выполнение блока кода.
Функции — фрагменты кода, выполняющие определенные действия.
Даже такой небольшой базис уже позволяет успешно решать задания ЕГЭ.
При подготовке к ЕГЭ чаще всего используются Python и PascalABC.NET. Однако, для общего понимания полезно сравнить их с другими популярными языками, такими как C++, Java и JavaScript, чтобы представлять, насколько велика «пропасть» между разными языками, и есть ли она вообще.
На самом деле, стоит отметить сразу, глобальная разница есть. Но она скрыта от глаз и относится не к синтаксису языков, а к тому, как они работают с ресурсами системы. В теме инверсия, была раскрыта такая особенность операции алгебры логики, как потенциальная экономия ресурсов. Например, если предположить, что при выполнении условия трудоемкая операция выполняется часто, не будет ли разумно инвертировать условие таким образом, чтобы уменьшить количество переходов к условию.
Таким образом и языки программирования также по-разному работают с процессором и памятью, выделяя и сохраняя ресурсы для программ, а также выполняя очистку памяти.
В разных языках программирования переменные объявляются по-разному:
Язык |
Объявление переменной |
Python |
x = 10 |
PascalABC.NET |
var x: integer := 10; |
C++ |
int x = 10; |
Java |
int x = 10; |
JavaScript |
let x = 10; |
Типы данных также различаются по названию и возможностям:
Тип данных |
Python |
PascalABC.NET |
C++ |
Java |
JavaScript |
Целые числа |
int |
integer |
int |
int |
number |
Вещественные |
float |
real |
double |
double |
number |
Строки |
str |
string |
string |
String |
string |
Логические |
bool |
boolean |
bool |
boolean |
boolean |
Условные конструкции позволяют выполнять код в зависимости от заданного условия.
Python:
x = 10
if x > 5:
print("Число больше 5")
else:
print("Число меньше или равно 5")
PascalABC.NET:
var x: integer := 10;
if x > 5 then
writeln('Число больше 5')
else
writeln('Число меньше или равно 5');
C++:
int x = 10;
if (x > 5) {
cout << "Число больше 5";
} else {
cout << "Число меньше или равно 5";
}
Циклы позволяют выполнять повторяющиеся действия.
Цикл for (вывод чисел от 1 до 5):
Python:
for i in range(1, 6):
print(i)
PascalABC.NET:
for i := 1 to 5 do
writeln(i);
C++:
for (int i = 1; i <= 5; i++) {
cout << i << endl;
}
Цикл while (вывод чисел от 1 до 5):
Python:
i = 1
while i <= 5:
print(i)
i += 1
PascalABC.NET:
var i: integer := 1;
while i <= 5 do
begin
writeln(i);
i := i + 1;
end;
C++:
int i = 1;
while (i <= 5) {
cout << i << endl;
i++;
}
Функции позволяют структурировать код и избежать дублирования. Кроме того, они значительно облегчают код, позволяют его грамотно расширить и уменьшить время, необходимое на его редактирование.
Python:
def sum(a, b):
return a + b
print(sum(3, 4))
PascalABC.NET:
function Sum(a, b: integer): integer;
begin
result := a + b;
end;
begin
writeln(Sum(3, 4));
end.
C++:
int sum(int a, int b) {
return a + b;
}
int main() {
cout << sum(3, 4);
return 0;
}
Для успешной подготовки к ЕГЭ важно не только запомнить синтаксис языков программирования, но и понимать логику алгоритмов. В заданиях к ЕГЭ в тестовой форме можно проверить собственные знания, однако для того чтобы составлять работающие программы, необходимо понимать еще и общие принципы работы языков программирования.
Какой тип данных используется для хранения целых чисел в Python?
a) int
b) float
c) str
d) bool
Какой оператор используется для вывода данных на экран в PascalABC.NET?
a) print
b) write
c) echo
d) display
Какой из следующих языков программирования является интерпретируемым?
a) C++
b) Java
c) Python
d) PascalABC.NET
Как обозначается логический тип данных в C++?
a) boolean
b) bool
c) logic
d) bit
Какой оператор используется для организации цикла с предусловием в Python?
a) for
b) do while
c) while
d) repeat
Какая функция используется для ввода данных с клавиатуры в Python?
a) input
b) read
c) cin
d) scan
Каким символом в Python обозначаются блоки кода внутри условий и циклов?
a) {}
b) []
c) :
d) ;
Как в C++ объявить функцию, которая принимает два целых числа и возвращает их сумму?
a) int sum(int a, int b) { return a + b; } ✅
b) void sum(int a, int b) { return a + b; }
c) function sum(a: int, b: int) -> int { return a + b; }
d) sum(int a, int b) -> int { return a + b; }