- •Способы описания алгоритмов.
- •2. Основные понятия: язык, лексема, алфавит, идентификатор, константа, переменная, метка, число.
- •Структура Паскаль – программы.
- •4. Заголовок программы и разделы описаний.
- •5. Типы данных. Стандартные и пользовательские типы.
- •6. Типы данных. Скаляры и структуры данных.
- •Пользовательские скалярные типы данных.
- •8. Раздел описания переменных.
- •9.Машинное представление чисел и символов. Системы счисления
- •10. Символьный тип данных представление в эвм, операции над ними.
- •11. Целочисленные типы данных представление в эвм, операции над ними.
- •12. Булевы величины. Их машинное представление и операции над ними.
- •13. Вещественные типы данных машинное представление, операции над ними.
- •14. Пользовательские скалярные типы данных.
- •15. Выражения, операции и операнды.
- •Xor логическое исключающее сложение
- •16. Арифметические операции, тип их операндов и результата.
- •17. Операции отношения.
- •18. Логические операции, тип их операндов и результата.
- •19. Приоритет выполнения операций в выражении.
- •20. Использование библиотечных функций в выражении.
- •21. Операторы. Классификация. Оператор присваивания, совместимость типов по присваиванию, оператор перехода, составной оператор.
- •22. Условный оператор if.
- •23. Условный оператор case.
- •24. Оператор цикла for.
- •25. Оператор цикла while.
- •26. Оператор цикла repeat.
- •27. Сравнительный анализ операторов цикла.
- •28. Обобщенные управляющие конструкции.
- •29. Работа с данными. Процедуры ввода-вывода.
- •30. Массивы одномерные и многомерные. Обращение к элементам массива, ввод – вывод массива.
- •31. Сортировка массива. Алгоритм пузырька.
- •32. Алгоритм сортировки массива выбором.
- •33. Алгоритм сортировки массива вставки.
- •34. Записи описание, обращение к полям записи, оператор with.
- •35. Множества. Назначение, определение, операции над множествами.
- •36. Файловые структуры их классификация.
- •37. Текстовые файлы. Особенности работы с ними.
- •38. Типизированные файлы. Особенности работы с ними.
- •39. Нетипизированные файлы. Особенности работы с ними.
- •40. Константы. Описание скалярных констант.
- •41. Константы. Описание констант массивов.
- •42. Константы. Описание констант записей.
- •43. Управление экраном компьютера в текстовом и графическом режимах.
- •44. Процедуры и функции. Их структура, взаимодействие с головной программой.
- •45. Область видимости имен.
- •46. Отличие в применении процедур и функций.
- •47. Формальные и фактические параметры. Параметры значения.
- •48. Формальные и фактические параметры. Параметры переменной.
- •49. Формальные и фактические параметры. Параметры константы.
- •50. Решение нелинейного уравнения методом итерации.
- •51. Решение нелинейного уравнения методом бисекции.
- •52. Решение нелинейного уравнения методом Метод хорд.
- •53. Решение нелинейных уравнений методом касательных.
- •54. Локальные и глобальные сети, адрес при навигации в сети. Протокол tcp/ip.
- •55. Защита информации, электронно цифровая подпись.
- •Вопрос 58 (логические и арефмитические основы эвм)
- •59 Вопрос (двоичная сс. Действия над целыми и вещественными числами в двоичной сс)
45. Область видимости имен.
Локальные и глобальные переменные. Области видимости
По зоне видимости различают локальные и глобальные переменные. Первые доступны только конкретной подпрограмме, вторые — всей программе. С распространением модульного и объектного программирования, появились ещё и общие переменные (доступные для определённых уровней иерархии подпрограмм). Область видимости иногда задаётся классом памяти. Ограничение видимости может производиться путём введения пространств имён.
Ограничение зоны видимости придумали как для возможности использовать одинаковые имена переменных (что разумно, когда в разных подпрограммах переменные выполняют похожую функцию), так и для защиты от ошибок, связанных с неправомерным использованием переменных (правда, для этого программист должен владеть и пользоваться соответствующей логикой при структуризации данных).
[править]
Простые и сложные переменные
По наличию внутренней структуры, переменные могут быть простыми или сложными (составными).
Простые переменные не имеют внутренней структуры, доступной для адресации. Последняя оговорка важна потому, что для компилятора или процессора переменная может быть сколь угодно сложной, но конкретная система (язык) программирования скрывает от программиста её внутреннюю структуру, позволяя адресоваться только «в целом».
Сложные переменные программист создаёт для хранения данных, имеющих внутреннюю структуру. Соответственно, есть возможность обратиться напрямую к любому элементу. Самыми характерными примерами сложных типов являются массив (все элементы однотипные) и запись (элементы могут иметь разный тип).
Следует подчеркнуть относительность такого деления: для разных программ одна и та же переменная может иметь разную структуру. Например, компилятор различает в переменной вещественного типа 4 поля: знаки мантиссы и порядка, плюс их значения, но для программиста, компилирующего свою программу, вещественная переменная — единая ячейка памяти, хранящая вещественное число.
46. Отличие в применении процедур и функций.
Подпрограмма - это отдельная функционально независимая часть программы. Любая подпрограмма обладает той же структурой, которой обладает и вся программа. Подпрограммы решают три важные задачи:
избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты;
улучшают структуру программы, облегчая ее понимание;
повышают устойчивость к ошибкам программирования и непредвиденным последствиям при модификациях программы.
Очень важно понимать, что в подпрограммы выделяется любой законченный фрагмент программы. В качестве ориентиров просмотрите следующие рекомендации:
Когда Вы несколько раз перепишите в программе одни и те же последовательности команд, необходимость введения подпрограммы приобретает характер острой внутренней потребности.
Иногда слишком много мелочей закрывают главное. Полезно убрать в подпрограмму подробности, заслоняющие смысл основной программы. Полезно разбить длинную программу на составные части - просто как книгу разбивают на главы. При этом основная программа становится похожей на оглавление.
Бывают сложные частные алгоритмы. Полезно отладить их отдельно в небольших тестирующих программах. Включение программ с отлаженными алгоритмами в основную программу будет легким, если они оформлены как подпрограммы.
Все, что Вы сделали хорошо в одной программе, Вам захочется перенести в новые. Для повторного использования таких частей лучше сразу выделять в программе полезные алгоритмы в отдельные подпрограммы.
Подпрограммы могут быть стандартными, т.е. определенными системой, и собственными, т.е. определенными программистом.
Стандартная подпрограмма (процедура или функция) - подпрограмма, включенная в библиотеку программ ЭВМ, доступ к которой обеспечивается средствами языка программирования. Вызывается она по имени с заданием фактических параметров с типом описанным при описании данной процедуры в библиотечке процедур и функций.
Из набора стандартных процедур и функций по обработке одного типа информации составляются модули. Каждый модуль имеет своё имя (мы уже хорошо знакомы с модулями Crt, Graph). Доступ к процедурам и функциям модуля осуществляется при подключении этого модуля (Uses Crt, Graph).
Help содержит подробные описания предусмотренных средой программирования процедур и функций. Для вызова помощи при работе со стандартными процедурами и функциями нужно поставить на имя подпрограммы курсор и нажать клавиши . Описание процедур и функций в Help строится по стандартному принципу.
Процедуры
Структура процедуры имеет следующий вид:
Procedure <имя процедуры>(формальные параметры : их тип);
Var
(локальные переменные)
begin
. . .
end;