Логотип Магариф уку
Цитата:

Какой язык программирования изучать в средней школе?

Раздел «Алгоритмы и элементы программирования» в курсе информатики средней школы является одним из самых сложных для изучения. Тем не менее, в требованиях ФГОС среди планируемых предметных результатов...

Раздел «Алгоритмы и элементы программирования» в курсе информатики средней школы является одним из самых сложных для изучения. Тем не менее, в требованиях ФГОС среди планируемых предметных результатов есть следующее: «создавать на алгоритмическом языке программы для решения типовых задач». Я знаю примеры, когда в школах отказываются от изучения языка программирования и рассматривают поверхностно только алгоритмические конструкции, основываясь на нехватке времени и сложности изучаемой темы.
На мой взгляд, это глубоко ошибочная позиция. Сегодня современные дети владеют IT-технологиями зачастую лучше, чем учитель, поскольку они погружены в них, это часть их жизни. Но развитие алгоритмического и логического мышления отстает от сверстников поколением старше. Именно математика и программирование может спасти ситуацию.
Но какой язык программирования изучать в школе? Сейчас в большинстве случаев это Pascal, реже можно встретить С++ и Python. На языке Pascal выросло целое поколение программистов. Преклоняюсь перед его компиляторами, которые «терпят» самые непредсказуемые эксперименты детей, а в ответ на них просто и спокойно «отвечают», что те сделали не так.
Куда сложнее с С++ и Python. Необходимо целое искусство установить среду программирования (IDE) и компилятор на свой компьютер. Но с этим стоит помучиться! Мы будем вознаграждены практически неограниченными возможностями системы, быстродействием в случае с С++ и универсальностью работы с данными в случае с Python. А что Pascal? Pascal сегодня скорее мертв, чем жив. Сейчас он не применяется на практике, и ребята это знают. Мотивация как таковая пропадает напрочь.
Мне в своей практике приходилось использовать все три языка. Хочу поделиться некоторыми своими размышлениями по этому поводу.
Сравним некоторые функциональные возможности и удобство применения.
Ввод/вывод. В С++ используется потоковый ввод/вывод данных. Первоначально ребятам нужно объяснить, что такое поток, формат операторов ввода/вывода, не забыть про стандартную библиотеку iostream. Затем нужно рассмотреть форматный вывод данных с использованием библиотеки iomanip, управляющие последовательности и манипулятор endl.
В языке Pascal используются аналогичные конструкции, за исключением потоков ввода/вывода. С этим здесь, пожалуй, проще.
Наиболее простой вход в язык все же у Python. Пара строк – и программа готова! Но не стоит относиться к нему легковесно. Это мощнейшая система для разработки проектов. И что легко вначале, не означает, что так же будет в дальнейшем. Также важно предупредить ребят, что ввод данных осуществляется в строковом типе.
Типы данных. В С++ и Pascal есть множество различных типов данных. Наиболее используемые на начальном этапе представлены в таблице. В Python же с этим все просто: тип данных определяется системой автоматически. Следует обратить внимание на хранение переменных в Python, оно отличается ссылочным типом.
Алгоритмические конструкции в представленных языках работают без особенностей, отличия только в синтаксисе. В Python важны отступы в 4 пробела во вложенных структурах. Он относится к интерпретируемым языкам, это придает особую гибкость, программу можно выполнять построчно.
Что касается среды программирования, я не берусь в данной статье давать какие-либо рекомендации, дабы не быть обвиненной в рекламе продуктов, хотя, конечно, у меня есть свои предпочтения.
Очевидно, что разнообразие представленных сейчас в мире языков программирования (это и неупомянутый JAVA) заставляет учителей информатики быть в курсе трендов IT-индустрии, постоянно изучать новое, и это позволяет говорить с детьми на одном языке. Известно, что дети всегда стремятся к новому с большим интересом.
Конечно, решать учителю, какой язык программирования преподавать, но выбор детей на сегодняшний день явно не Pascal, и в этом я с ними соглашусь, так как он давно уже отстал от своих конкурентов.
С++ и Python – это мощнейшие современные системы программирования с множеством включенных библиотек, на основе которых ведутся разработки крупных проектов, больших данных и искусственного интеллекта. И к этим проектам можно приобщать детей, решая посильные для них задачи. В свою очередь, ребята, добившись малого, хотят достичь большего, и так дальше, к вершинам успеха.
Эти языки хороши в олимпиадном программировании, причем каждый по-своему. Если на языке С++ программируют дети, участвующие во Всероссийской олимпиаде школьников по информатике, в силу быстродействия, то Python предпочитают ребята, участвующие в проектных олимпиадах, таких как НТИ (национальная технологическая инициатива), в направлениях, где программирование – один из основополагающих навыков: (Big Data, финтех, геоинформатика и др.).
Таблица 1

















































 PascalC++Python
Структура простейшей программы вычисления
a + b
Program Primer;
var
  a,b:integer;
begin
  read(a,b);
  writeln(a+b);
end.
#include
using namespace std;
int main()
{
    int a,b;
    cin >> a >> b;
    cout << a + b << endl;
    return 0;
}
a=int(input())
b=int(input())
print(a+b)
Основные используемые типы данныхInteger
LongInt
Real
Double
boolean
Char
string
4 байт
8 байт
6 байт
8 байт
1 байт
1 байт
1 байт на 1 символ
Int
long long
Float
Double
Bool
Char
string
4 байт
8 байт
4 байт
8 байт
1 байт
1 байт
1 байт на 1 символ
Тип данных определяется автоматически (без объявления типа). Примеры:
Целые – 4
С плавающей запятой —
4.7
Целые длинные – 4352345325L
Условный операторif a>b then a:=a+1
    else b:=b+1;
if (a>b) a++;
    else b++;
if (a>b):
    a=+1;
else:
    b=+1;
Цикл с параметромfor i:=1 to n do
    k:=k+1;
for (int i=0; i    k++;for i in range(n):
k++;
Цикл с предусловиемi: = 0;
while i < n do
    begin
      k:=k+1;
      i:=i+1;
     end;
i = 0;
while ( i < n)
{
k++;
i++;
}
i = 0
while i < n:
k++
i++
 
      

Ольга БЕЛЯЕВА,

учитель математики и информатики высшей квалификационной категории Лицея Иннополис, г. Иннополис

Язмага реакция белдерегез

0

0

0

0

0

Реакция язылган инде

Комментарийлар

Новости

БАШКА ЯЗМАЛАР

Это интересно

Аудиозаписи

  • Гильм Камай

  • Җәлилнең якын дусты

  • Ирек Нигъмәти - "Кояш сүнде ул йортта"

  • Ләйлә Минһаҗева - "Милләтебезгә тугры, буыннарга үрнәк шәхес"


РЕКОМЕНДУЕМ