Библиотека knigago >> Компьютеры: Разработка ПО >> Программирование: прочее >> Основы программирования. Часть I


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1101, книга: Сказ о Иване царевиче и сером волке
автор: Марк Макаров

Марк Макаров Сказки для детей Самиздат, Сказки для взрослых "Сказ о Иване царевиче и сером волке" - это увлекательная и мудрая сказка, которая увлечет как детей, так и взрослых. Автор Марк Макаров мастерски пересказывает классическую русскую сказку, наполняя ее современными нюансами и взрослыми темами. Сказ повествует о приключениях Ивана царевича, которому помогает верный серый волк. Вместе они сталкиваются с различными препятствиями, включая похищение Елены Прекрасной,...

Андрей Александрович Тюгашев - Основы программирования. Часть I

Основы программирования. Часть I
Книга - Основы программирования. Часть I.  Андрей Александрович Тюгашев  - прочитать полностью в библиотеке КнигаГо
Название:
Основы программирования. Часть I
Андрей Александрович Тюгашев

Жанр:

Учебники и пособия: прочее, Учебники и самоучители по компьютеру, Программирование: прочее

Изадано в серии:

неизвестно

Издательство:

Университет ИТМО

Год издания:

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Основы программирования. Часть I"

Учебное пособие содержит теоретический материал и лабораторный практикум для изучения дисциплины «Основы программирования». Представлен панорамный взгляд на предметную область, с представлением не только традиционной императивной, но и функциональной, и логической парадигм программирования, исторической ретроспективы и связи с другими областями информатики. Приводится сравнение программирования на языках высокого и низкого уровней (ассемблер). Несмотря на обзорный характер, после прочтения и прохождения входящего в книгу лабораторного практикума студент будет способен писать программы средней сложности на языках С/С++. Книга содержит и специальные главы, посвященные жизненному циклу программных средств современной ИТ-индустрии, проблеме ошибок в программах и методах верификации программного обеспечения, стилю программирования. Учебное пособие адресовано студентам, обучающимся в ИТМО на кафедре КОТ по направлению 09.03.02 «Информационные системы и технологии»; преподавателям, ведущим теоретические и лабораторные занятия по курсу «Основы программирования». В то же время издание может представлять интерес для школьников, студентов средних специальных заведений и широкого круга читателей, заинтересованных в освоении основ программирования. Рекомендовано к печати Ученым советом факультета КТиУ 08.12.2015 г., протокол №10.

Читаем онлайн "Основы программирования. Часть I". [Страница - 2]

....................................................... 120
Язык ассемблера (автокод) .......................................................................... 122

4

Сумма нечетных на ассемблере ............................................................... 135
Макросы в ассемблере .............................................................................. 139
Введение в объектно-ориентированное программирование на примере С++............. 142
Достоинства и недостатки ООП .................................................................... 157
Список литературы ......................................................................................... 159

5

Введение
Данное пособие — не учебник по одному из популярных языков
программирования. Прочитав его, Вы не станете профессионалом в C# или
Java, использующим полученные навыки для поиска наиболее выгодных
предложений на рынке труда. Книга не предназначена также для обучения
методологии программирования на уровне, превышающем начальный. В
ней нет описаний методов написания эффективных алгоритмов,
построения пользовательских интерфейсов, доступа к базам данных и пр.,
хотя косвенно эти темы в ней освещаются. Цель – освещение базовых
принципов современного программирования, с примерами на языках Си и
С++ и небольшим введением в функциональное (Лисп), логическое
(Пролог) и визуальное программирование.
В настоящее время насчитывается около восьми
программирования, причем одни не похожи на другие.

тысяч

языков

Во введении можно долго рассуждать о об исторической ретроспективе
предмета, о его связи со смежными дисциплинами, значимости для жизни
современного общества и т. д. Все эти аспекты важны, но, как
представляется автору, в самом начале лучше погрузить читателя в суть
того, что ему предстоит изучать. Получить представление о предмете
может помочь набор примеров — семантически эквивалентных программ
(подробнее о том, что такое синтаксис и семантика, будет рассказано
далее), которые делают одно и то же, будучи исполненными на ЭВМ,
оснащенной соответствующими средствами. Выглядят программы на этих
языках по-разному. Следуя примеру Лоуренса Теслера [1, стр. 76],
используем для иллюстрации не банальный пример «Здравствуй, мир!», а
программу,
имеющую
(условно)
прикладное
значение —
подсчитывающую сумму нечетных чисел, входящих в последовательность
целых чисел. Итак, перейдем к примерам.
Программа на языке BASIC:
10 DIM T(100)
20 INPUT N
30 FOR I=1 TO N
40 INPUT T(I)
50 NEXT I
60 GOSUB 110
70 PRINT "СУММА НЕЧЕТНЫХ=" S
80 GOTO 200
110 REM подпрограмма
120 S=0
130 FOR I=1 TO N

6

140 IF NOT ODD(T(I)) THEN GOTO 160
150 S=S+T(I)
160 NEXT I
170 RETURN
200 END

Программа на языке COBOL:
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUMERIC-VARIABLES USAGE IS COMPUTATIONAL.
02 NUMBERS PICTURE 9999 OCCURS 100 TIMES INDEXED BY I.
02 N PICTURE 999.
02 SUM PICTURE 99999.
02 HALFC PICTURE 9999.
02 MODC PICTURE 9.
PROCEDURE DIVISION.
EXAMPLE
MOVE
MOVE
MOVE
MOVE

23 TO NUMBERS (1)
34 TO NUMBERS (2)
7 TO NUMBERS (3)
9 TO NUMBERS (4)

MOVE 11 TO NUMBERS (5)
MOVE 5 TO N
PERFORM SUMNECH.
SUMNECH
MOVE 0 TO SUM
PERFORM ANALIS-1 VARYING I FROM 1 BY 1 UNTIL I>N
ANALIS-1
DIVIDE 2 INTO NUMBERS (I) GIVING HALFC REMAINDER MODC
IF MODC IS EQUAL TO 1 ADD NUMBERS(I) TO SUM.

Программа на языке APL:
∇ СУМ←СУМНЕЧЕТ ЧИСЛА

∇ СУМ←+(2|ЧИСЛА)/ЧИСЛА

вызов: СУМНЕЧЕТ 2 3 3 4 7 9

7

Программа на языке Форт:
: СУМНЕЧЕТ
0 SWAP 0
DO
SWAP DUP 2 MOD
IF +
ELSE DROP
THEN
LOOP
Вызов: 2 3 3 4 7 9 СУМНЕЧЕТ

Программа на языке Лисп:
(DEFUN СУМНЕЧЕТ(ЧИСЛА)
(COND
((NULL ЧИСЛА) 0)
((ODD (CAR ЧИСЛА)) (+ (CAR ЧИСЛА)(СУМНЕЧЕТ(CDR ЧИСЛА))))
(T (СУМНЕЧЕТ (CDR ЧИСЛА))))))

Программа на языке ассемблера микропроцессора Motorola 68000:
СУМНЕЧЕТ MOVE.L
(A7)+,A2 Адрес возврата из стека в A2
MOVE.L
(A7)+,A1 Адрес первого числа => A1
MOVE.W
(A7)+,D1 Заслать n в D1
CLR.W D2
Обнулить D2
JMP
СЧЕТЧИК Перейти в конец цикла n=0?
ЦИКЛ
BTST
0,1(A1) Если число по адресу А1 четное…
BEQ.S СЛЕД
…перейти к метке СЛЕД
ADD.W (A1),D2 …иначе прибавить число к D2
СЛЕД
ADDQ.W
#2,A1 Взять в А1 адрес следующего числа
СЧЕТЧИК DBF
D1,ЦИКЛ Уменьшить D1,пока не -1 => на ЦИКЛ
MOVE.W
D2,-(A7) Занести сумму нечетных в стек
JMP
(A2)
Перейти по адресу возврата

Программа на языке Пролог:
sumnech([X|Xs],S):-odd(X),sumnech(Xs,S1),S is S1+X.
sumnech([X|Xs],S):-sumnech(Xs,S),\+ odd(X).
sumnech([],0).
odd(X):-integer(X),X rem 2 =:= 1.

8

Программа на визуальном
разработки HiAsm (рис. 1).

языке

программирования

российской

Рис. 1

Автор надеется: читатель не без интереса просмотрел приведенные
программы и обратил внимание на то, что они заметно различаются по
длине, стилю и внешнему виду вообще…
Целью настоящей книги является дать читателю представление о
«ландшафте» предметной области, относящейся к программированию
ЭВМ, описать --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.