Мои первые программы

Автор: | 05.05.2014

Если кто-то хочет увидеть после этого заголовка коды выложенных программ, то он ошибется. Я лишь расскажу о своих первых программах, написанных на некоторых языках программирования. Так как эти программы первые, то они и относительно простые.

Я познакомился с понятием программ и программирования, когда учился в Курском государственном педагогическом институте. ЭВМ, находящиеся, как правило, на промышленных предприятиях и в областном отделе статистики, были советского производства типа “Стрела” или “Урал”. Они выдавали для студентов, приходящих на экскурсии, листинги с АЦПУ с картинами Джоконды или какого либо другого персонажа, но чаще это был портрет Джоконды. Потом я видел уйму таких проверочных таблиц печати АЦПУ. О самом программировании из такой экскурсии понять было что-либо сложно.

Первую программу я написал на языке программирования КОБОЛ. Что интересно, данный язык до сих пор широко используется не только на заводе ЛиАЗ, но особенно в Германии и США. В некоторых случаях процент программ на КОБОЛе в этих странах доходил до 50 среди всего используемого программного кода. Кроме языка КОБОЛ для экономических задач широко применялся язык ПЛ/1. Но этот язык подразумевал в себе много внутренних значений, взятых по умолчанию, хотя и был более мощным из всех, так как объединил в себе возможности как КОБОЛа, так и АЛГОЛа и ФОРТРАНа.

США прокололись на использовании ПЛ/1 в своих космических программах, потому что их корабли типа “Джеминай” постоянно давали сбой из-за непредусмотренных программистами значений, выдаваемых транслятором языка ПЛ/1 по умолчанию. Основные языки программирования, а это были уже языки высокого уровня, появились в 1956 году. ПЛ/1 возник позже, но потом резко сошел на нет.

Современные языки программирования изменились в общем-то мало, по сравнению с первыми языками программирования. Увеличились лишь возможности автоматизации, рекурсии и добавились объекты, указатели и т.п.

Первой моей программой на КОБОЛе была программа слияния двух массивов с получением итогового отсортированного по возрастанию цеха, участка и кода детали массива, с подсоединением наименования по коду и выводу значений на печать с разбиением и нумерацией листов и страниц по 56-60 строк на странице с подведением основных и промежуточных итогов по листу, участку, цеху.

В общем это стандартная задача для экономических расчетов.

В то время существовал и язык РПГ, который также мог генерировать всевозможные итоги.

На Фортране первыми моими программами были программы вычисления интеграла методами прямоугольника, трапеций и Симпсона со сравнением полученных значений между собой для определения точности результата. Метод Симпсона наиболее совершенный и даёт практически точный результат. По другому этот метод называют  вычислениями по методу парабол.

Второй моей задачей на Фортране была задача расчета усилия на рулевом колесе при повороте передних колес автобуса на заданный угол. Предварительные значения для расчета и формулы расчета мне предоставлялись в отделе ОГК. Всё это я делал в свободное от своей основной работы время. Мне это было просто интересно.

На англоязычном ассемблере первой моей программой была программа вывода системного времени ЭВМ на печать, а также передача значений из КОБОЛА в ФОРТРАН и наоборот с выводом значений на печать для из сверки. Для передачи значений между программами на  различных языках программирования можно было использовать общую область (Common) на ФОРТРАНе и рабочую область (Working Storage) на КОБОЛе. Этот метод передачи значений похож на использование публичных переменных между отдельными программными модулями одного языка программирования.

Кроме англоязычного Ассемблера мне пришлось несколько лет программировать и на русскоязычном. Мнемоника русского Ассемблера сложнее англоязычного. Русский язык,- это язык образов и образного мышления, а английский язык,- это язык торгашей и дельцов. На английском проще программировать, мнемоника команд более однозначна и удобна.

Первой программой на русском Ассемблере была программа формирования шапки документа на основе считанных последовательно описаний полей, набиваемых каждое поле на одной перфокарте.

Второй моей программой  была программа формирования списка вызываемых на обработку цехов для печати отчетов по каждому цеху и участкам внутри него по заработной плате. Вместо перечисления обрабатываемых цехов через запятую можно было использовать мнемонику типа 000110, что означало, – надо печатать все цеха с 01 по 10 включительно.

Между прочим, Ввод и вывод системных и программных сообщений на ЭВМ типа ЕС осуществлялся через Консоль (быстродействующую печатающую машинку), а на ЭВМ типа М5000,- через телетайп.

Первыми программами на Бейсике были программы работы с графикой, рисование луны, солнца, домика, забора, песка или звёзд с разноцветной раскраской.  Интересные программы на создание круговых диаграмм, движение маятника, построение всевозможных графиков. Но самой первой моей программой была программа рисования шахматной доски и расстановки шашек. Потом уже появились программы с вводом и выводом значений и расчетами, например, проживания за гостиницу и т.п.

На FOXBASe мне доставило удовольствие создавать динамическое меню, которое я также реализовывал и на Бейсике. В FOXPRO меню создается автоматом через задание команды.

На Паскале я любил получать такие же результаты как и в Бейсике, чему учил и заставлял  делать своих студентов. Но наиболее понравившемся мне программным кодом была программа перекодировки римских цифр в арабские. В одной из книг я нашёл пример применения программирования методом автоматов. Это направление является прогрессивным, особенно в областях, связанных с появлением некоторых устойчивых состояний. Примерами этого является движение лифта или работа светофора на шоссе.

На СИ первыми моими опытами были  попытки вывода значений по формату на печать и кодировка и декодировка значений.

Уже много лет я программирую фактически только для себя и только на VBA, используя OFFICCE 2003, хотя иногда и применяю на одном из сайтов скрипты.  Мой поезд ушёл. Разбрасываться в разных направлениях тяжело и нерационально. Более или менее нормально программировать можно лишь года через два после первого знакомства с языком. Хотя есть и вундеркинды. Большинство языков программирования похожи друг на друга. Есть, правда, и исключения, но они редки, как, например, языки логического программирования или списочные.

 

What are you working on?