- •1. Этапы решения задачи на эвм.
- •2. Определение алгоритма.
- •3. Свойства алгоритма.
- •4. Понятие исполнителя.
- •5. Основные алгоритмические структуры
- •10. Типы величин (целые, вещественные, логические, символьные). Диапазон допустимых значений, представление в памяти эвм, операции, определенные над величинами каждого типа.
- •11. Процедурные и непроцедурные языки программирования
- •12. Простые типы данных в Pascal
- •13. Переменные и константы. Описание. Типизированные константы. Примеры.
- •14. Линейные алгоритмы. Примеры.
- •15. Условный оператор. Пример
- •16. Оператор выбора. Пример
- •17. Циклы с предусловием и с постусловием. Примеры.
- •18. Одномерные массивы. Примеры задач.
- •19. Двумерные массивы. Примеры задач.
- •20. Функции. Их отличие от процедур. Способ обращения к функции. Примеры.
- •21. Рекурсия. Механизм рекурсии: действия на рекурсивном спуске и рекурсивном возврате. Понятие о глубине рекурсии. Примеры.
- •22. Понятие об ооп. Отличие ооп подхода к программированию от структурного.
10. Типы величин (целые, вещественные, логические, символьные). Диапазон допустимых значений, представление в памяти эвм, операции, определенные над величинами каждого типа.
Идентификатор |
Длина (байт) |
Диапазон значений |
Операции |
Целые типы |
|||
integer |
2 |
-32768..32767 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
byte |
1 |
0..255 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
word |
2 |
0..65535 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
shortint |
1 |
-128..127 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
longint |
4 |
-2147483648..2147483647 |
+, -, /, *, Div, Mod, >=, <=, =, <>, <, > |
Вещественные типы |
|||
real |
6 |
2,9x10-39 - 1,7x1038 |
+, -, /, *, >=, <=, =, <>, <, > |
single |
4 |
1,5x10-45 - 3,4x1038 |
+, -, /, *, >=, <=, =, <>, <, > |
double |
8 |
5x10-324 - 1,7x10308 |
+, -, /, *, >=, <=, =, <>, <, > |
extended |
10 |
3,4x10-4932 - 1,1x104932 |
+, -, /, *, >=, <=, =, <>, <, > |
Логический тип |
|||
boolean |
1 |
true, false |
Not, And, Or, Xor, >=, <=, =, <>, <, > |
Символьный тип |
|||
char |
1 |
все символы кода ASCII |
+, >=, <=, =, <>, <, > |
11. Процедурные и непроцедурные языки программирования
1. Императивные (процедурные) языки – это языки программирования, управляющие командами или операторами языка. Основной концепцией императивного языка является состояние компьютера - множество всех значений всех ячеек памяти компьютера (Basic, Fortran, Ada, Pascal, C, C++, Java).
Программа на императивном языке представляет собой последовательность команд (операторов), которые выполняются в порядке их написания. Выполнение каждой команды приводит к изменению состояния компьютера.
2. В языках функционального программирования (аппликативных языках) вычисления в основном производятся применением функций к заданному набору данных. Разработка программ заключается в создании из простых функций более сложных, которые последовательно применяются к начальным данным до тех пор, пока не получится конечный результат (LISP).
3. Декларативные языки программирования – это языки программирования, в которых операторы представляют собой объявления или высказывания в символьной логике. Примером таких языков являются языки функционального и логического программирования (языки, основанные на системе правил). Порядок выполнения операторов определяется системой реализации правил, т. е. в этих языках не производится алгоритмических действий явно, то есть алгоритм не задается программистом, а строится самой программой. (Prolog).
4. Концепция объектно-ориентированного программирования складывается из 3 ключевых понятий: абстракция данных, наследование, полиморфизм. Разработка объектно-ориентированных программ заключается в построении иерархии классов, описывающих отношения между объектами, и в определении классов. Вычисления в объектно-ориентированной программе задаются сообщениями, передаваемыми от одного объекта к другому (Ada95, Java, C++).
Привести примеры
