Структурный псевдокод
Структурный псевдокод — язык для описания алгоритмов и документирования программ для ЭВМ. Структурный псевдокод был придуман Харланом Миллзом, сотрудником IBM для документирования программ для ЭВМ, записываемых на самых различных языках программирования.
Содержание |
В программировании широко используется Структурный Псевдокод для обучения структурному проектированию программ на ЭВМ на языках Бейсик, Паскаль, Си. Структурный Псевдокод описан в нескольких учебниках информатики и программирования - Каймин, Нечаев, Питеркин и т. д.
Структурный псевдокод широко используется профессиональными программистами для документирования ПО. В частности корпорация ИБМ использует структурный псевдокод для документирования всего ПО в этой корпорации с 1972 г.
В учебниках информатики структурный псевдокод впервые был введен в первом вузовском учебнике информатики (Каймин, Питеркин, 1985) для описания алгоритмов решения задач на ЭВМ и кодирования программ на Бейсике.
Описание Структурного Псевдокода
Принципы структурного проектирования программ
на языках Бейсик, Паскаль, Си, Javascript и т. д. и т. п.
Набор структурных композиций
- Последовательности действий
- Альтернативный выбор действий
- Циклический повтор действий
- Выделение функций и подпрограмм
Альтернативный выбор действий:
если (условие) то
действия1
иначе
действия2
к-если
цикл-пока
пока (условие) цикл
действия
к-цикл
Дополнительные композиции
Цикл с счетчиком:
от k=1 до k=n цикл
действия
кцикл
Цикл с выходами:
цикл
действия1;
при (условие) выход
действия2;
кцикл
Многоальтернативный выбор действий:
если (условие1) то
действия1
инесли (условие2) то
действия2
иначе
действия3
кесли
Приношу извинения — местный редактор срезает ступенчатую запись. Правильно оформленные алгоритмы на структурном псевдокоде а также примеры программ на Бейсике и Javascript нужно смотреть в текстах учебников по информатике.
Преимущества Структурного Псевдокода
Практика использования Псевдокода в корпорации IBM показала, что число ошибок в программах и программном обеспечении ИБМ сократилось в десять раз с 2-3 ошибок на 100 операторов до 2-3 ошибок на 1000 тысячу операторов.
На олимпиадах и экзаменах по информатике и программированию объемы программ редко превышают 200—300 операторов и поэтому решения задач на ЭВМ при структурном проектировании алгоритмов и программ обычно достигаются за 2-3 пуска на ЭВМ. TAdviser Security 100: Крупнейшие ИБ-компании в России
При обучении программированию объемы программ редко превышают 100 операторов и обычно составляют 20-30 операторов, поэтому для структурированных алгоритмов и программ такого объема программы редко содержат ошибки и легко выявляются в текстах алгоритмов на родном русском языке.
Обучение технологии программирования
Структурный псеводокод является одним из основных средств документирования ПО в профессиональном программировании и обучения информатике в школах и вузах.
Опыт обучение технологии программирования был начат нами в 1978г. в МИЭМ со студентами вечерниками и студентами старших курсов ФПМ - Факультета Прикладной Математики МИЭМ.
Работа со студентамив МИЭМ показала, что профессиональному программированию студентов по специальности "Программное Обеспечение ЭВМ" нужно начинать с первых курсов.
Обучение основам программирования
В этих целях студентам стал предлагаться курс алгоритмизации, в котором для описания алгоритмов стал использоваться структурный псевдокод вместо блок-схем для документирования программ для ЭВМ.
Главным в обучении программированию была обязательные экзамены со сдачей полностью отлаженных программ вплоть по получения результатов решения прикладных задач на ЭВМ
Обучение программированию с использованием структурного псевдокода проводилось с использованием целой серии языков программирования - Фортран, ПЛ1, Бейсик, Паскаль и на ЕС ЭВм и на персональных ЭВМ.
В 1984 году технология структурного проектирования программ с использованием структурного псевдокода была внедрена в МИЭМ на всех факультетах для обучения всех студентов.
В 1985 году технология структурного проектирования программ с использованием псевдокода была внедрена в курс информатики для средних школ и в преподавание информатики во всех московских школах.
Обучение доказательному программированию
Но наиболее важным была разработка и апробация технологии доказательного программирования, когда студенты по завершении отладки программ начали писать доказательства правильности своих программ.
Главной проблемой в программировании является борьба с ошибками в алгоритмах и программах, которые можно рбедить только с использованием технологий доказательного программирования и техника доказательства и исчерпывающего анализ правильности алгоритмов и программ.
Данная техника доказательства и анализа правильности алгоритмов и программ основана на семантике структурированных алгоритмов и программ с расширенным набором правил композиции, принятых в современных языка программирования Си, Бейсик, Джава, РНР и т.п.
Внедрение структурного проектирования программ
Самым крупным проектом внедрения методов структурного проектирования программ был проект разработки бортового ПО для космического проекта "Буран", в котором впервые использовался бортовая ЭВМ для автоматического управления космическим кораблем.
результат внедрения методов структурного проектирования бортового ПО оказался на редкость удачным - космический корабль "Буран" под управлением бортового компьютера совершил автоматичесий старт и посадку космического корабля на Землю.
С появлением персональных ЭВМ обучение технологии программирования переросло в обучение технологии разработки программ для персональных ЭВМ вплоть до разработки программных продуктов.
См. также
Литература
- ВАКаймин. Информатика: Учебник. М. 5-ое издание -ИНФРА-М,2008. 285 с.
Рекомендован Министерством образования РФ для студентов вузов.
- ВАКаймин. Информатика: Учебное пособие. 2-ое изд. — М.,РИОР, 2008, 124 с.
- ВАКАаймин. Информатика, Учебник для школьников. М.: Проспект, 2009. 272 с.
- ВАКаймин. Информатика: Учебное пособие. пособие для поступающих. М.,АСТ, 1996. 205 с.
- Каймин В. А. Методы разработки программ на языках высого урвня. М.МИЭМ, 1985.
- Каймин В. А. Основы Доказательного Программирования. М.: МИЭМ, 1987.
Рекомендован Госкомвузом для поступающих в вузы
Интернет-ссылки
- Технологии Доказательного Программирования
- Информатика в Школах и Вузах
- Экзамены по информатике и программированию
- Олимпиады по информатике и программированию