Практически повсеместно языком структурного программирования, используемым для изучения на уровне школьных курсов, является Паскаль. Это абсолютно оправдано по всем соображениям, и в данном подразделе ограничимся именно этим языком.
Способ изучения Паскаля в форме профильного курса информатики в определенной мере зависит от того, были ли прежде учащиеся знакомы с элементами Паскаля (в ходе изучения базового курса). Если ответ положителен, то учащиеся, скорее всего, знакомы в общих чертах со схемой Паскаль-программы, реализацией простых линейных, ветвящихся и циклических алгоритмов. В любом случае профильный курс должен содержать все темы, составляющие язык Паскаль, но методика их изучения должна учитывать вышесказанное обстоятельство. Будет правильным регулировать уровень изложения степенью подробности и «строгости», а также уровнем задач, приводимых в качестве примеров и самостоятельных заданий (как известно, разбор и решение задач играет важнейшую роль при обучении любому виду программирования).
При планировании курса учитель должен решить, будет ли язык изучен «полностью». Опыт показывает, что для этого, во-первых, мало даже годичного курса при наличии в нем двух-трех часов в неделю, а во-вторых, что ряд «верхних этажей» Паскаля труднодоступен многим учащимся (речь идет, прежде всего, о динамических структурах данных и объектном расширении Турбо Паскаля). Более того, возникает принципиальный вопрос о том, надо ли это в принципе включать в школьный курс, так как погоня за количеством обсуждаемых вопросов может стать препятствием для понимания основ программирования, формирования навыков структурного решения алгоритмических задач.
Программирование в узком смысле, понимаемое как кодирование на изучаемом языке готовых алгоритмов без проникновения в их сущность и без приобретения навыков по их разработке, не может быть целью общеобразовательного курса (даже профильного). Основная цель изучения того же Паскаля — не столько он сам, сколько приобретение знаний и навыков алгоритмизации в ее структурном варианте, освоение методов решения некоторого класса задач, традиционно реализуемых на Паскале и родственных ему языках программирования.
Ниже даны рекомендации по изучению отдельных тем (в той последовательности, в которой это чаще всего делается, хотя некоторые темы допускают перестановку). Для упрощения ситуации не будем оговаривать, что некоторые вопросы могут быть известны из базового курса информатики; учитель сам определит ту информацию, которую не следует дублировать.