Шпаргалка по дисциплине "Информатика"
Шпаргалка, 03 Июня 2015, автор: пользователь скрыл имя
Краткое описание
Работа содержит ответы на вопросы для экзамена по дисциплине "Информатика".
Вложенные файлы: 1 файл
билеты к информатике.docx
— 101.47 Кб (Скачать файл)
Билет 12
Отладка и тестирование программ. Функциональные и структурные тесты. Виды ошибок в программах.
Тест - совокупность специально подобранных исходных данных и соответствующих выходных данных, используемых для проверки правильности работы программы.
Тестирование - испытание программы на множестве тестов.
Подготовка тестирования:
подготовка тестов;
подготовка программы к тестированию
(вставка дополнительных операторов вывода,
…)
Отладка - процесс поиска, локализации и устранения ошибок в программе с целью получения правильной программы.
Этапы отладки:
1. Устранение синтаксических ошибок
2. Устранение ошибок при редактировании связей и загрузке
3. Ликвидация ошибок
при выполнении программы, обнаруживаемых
инструментальной средой
4. Тестирование программы - Сколько тестов?
5. Верификация - доказательство
корректности программы
При построении функциональных тестов:
- Программа рассматривается как «черный ящик», ее внутренняя структура не учитываются.
- Используются методы решения задачи, отличные от положенных в основу алгоритма.
Цель функционального тестирования - найти расхождение между программой и ее внешней спецификацией.
Структурное тестирование:
- Учитывает логику (структуру) программы
- Предусматривает контроль правильности вычислений с помощью ручного просчета (или просчета с помощью других программ)
- Предполагает пошаговое выполнение программы (трассировку) с контролем промежуточных результатов
Билет 16
Логические выражения. Логические константы, переменные. Соотношения. Логические операции. Формулы двойственности. Примеры составления и использования логических выражений.
Билет 17
Принципы написания простейших программ.
Сведения, необходимые для написания простейшей программы:
- Структура простейшей программы.
- Типы и структуры данных, имеющиеся в алгоритмическом языке, их описание, допустимые операции.
- Операторы преобразования данных:присваивания (преобразования внутренних данных), операторы ввода и вывода.
- Правила записи алгоритма - программирование основных алгоритмических структур.
Структура простейшей программы на любом алгоритмическом языке:
Заголовок
ограничитель
описания - неисполняемые инструкции языка
операторы - исполняемые инструкции языка
ограничитель
Билет 18
Паскаль.
Простейшая программа:
program Имя_программы;
Var описания переменных
begin
операторы
end.
Структура паскаль-программы:
program Имя_программы;
LABEL …{не используем}
CONST имя_константы=значение_
N=20; a=-98.345; eps=2.5e-6; {2.5*10-6}
TYPE имя_типа=описание_типа;
MAS1=ARRAY[1..N,1..7]
OF REAL;
DAY=(SUNDAY, MONDAY, TUESDAY,WEDNESDAY, THURDAY, FRIDAY, SATURDAY);
{тип перечисление}
COLOR=(BLACK,BROWN,GREEN,
VAR a, a1:MAS1; DATE:DAY; PAINTER:COLOR;
раздел процедур (PROCEDURE) и функций (FUNCTION)
begin
…
end.
Оператор присваивания :
Накапливание: вычисление переменной через саму себя
(предыдущее значение)
Пример: i:=i+1;S:=S+a; P:=P*b[i];
Накапливание, как правило, происходит в цикле. До цикла накапливаемым переменным необходимо присвоить начальные значения (обычно суммам -0, произведениям – 1)
Оператор вывода (в консольном приложении, на стандартное устройство CON):
- write(список_вывода)
- writeln(список_вывода)
- список_вывода:
- обязательно скалярные значения;
- переменные, простые или с индексами;
- константы;
- выражения;
- элементы списка разделяются запятыми.
Билет 19
Кодирование на паскале основных алгоритмических структур.
Билет 20
Процедуры. Их назначение. Понятие о формальных и фактических параметрах. Замена формальных параметров на фактические «по ссылке» и «по значению»
ФОРМАЛЬНЫЕ ПАРАМЕТРЫ ПОДПРОГРАММЫ:
- Формальные параметры действуют только в подпрограмме (являются локальными).
- При обращении к подпрограмме формальные параметры заменяются на данные вызывающей программы (фактические параметры).
- В список формальных параметров подпрограммы включаются переменные, значения которых передаются из основной программы в подпрограмму или из подпрограммы в программу.
Формальные параметры - это «вход» и «выход» подпрограммы.
ФАКТИЧЕСКИЕ ПАРАМЕТРЫ ПОДПРОГРАММЫ :
Фактические параметры подпрограммы - это параметры программы, которые подставляются вместо формальных параметров при обращении к подпрограмме.
Фактические параметры должны соответствовать формальным по числу, порядку перечисления и типу.
Замена формальных параметров на фактические (вызов):
1) по значению
СALL-BY-VALUE
пересылка значений фактических параметров в ячейки формальных параметров
2) по адресу (ссылке, имени)
CALL-BY-REFERENCE
пересылка адресов фактических параметров в ячейки формальных параметров
Назначение:
- Использование параметра-подпрограммы необходимо, когда некоторый алгоритм, описанный как подпрограмма, применим к множеству алгоритмов, каждый из которых также задается подпрограммой.
- Классические примеры таких ситуаций дают численные методы. В подпрограммах численных методов (вычисления определенного интеграла, нахождения экстремумов и нулей функций, вывода графиков, линий уровня, таблиц функций) обрабатываемые функции задаются как параметры.
- Средства для использования параметров-подпрограмм имеются во всех алгоритмических языках, предназначенных для решения вычислительных задач (СИ, Фортран, MatLab).
Средства паскаля для работы с подпрограммами-параметрами:
- Процедура-формальный параметр должна быть описана с помощью ранее объявленного процедурного (функционального) типа. При объявлении этого типа описывается структура заголовка подпрограммы, т.е. дается заголовок без имени подпрограммы. Примеры процедурных типов:
TYPE PROC1=PROCEDURE(a,b,c:real; var d:integer);
FUNC1=FUNCTION : REAL;
G=FUNCTION (x,y,z:real);
- Подпрограмма-фактический параметр должна соответствовать процедурному типу формального параметра, т.е. иметь такой же заголовок с точностью до обозначений.
Некоторые особенности использования подпрограмм-фактических параметров:
- Имена стандартных подпрограмм нельзя использовать в качестве фактических параметров.
Function sn(x:real):real;
begin sn:=sin(x)
end;
- В языках Borland Pascal и Turbo Pascal подпрограммы, используемые как фактические параметры, должны компилироваться с использованием "дальней модели памяти" , поэтому в программу надо включить директивы компилятора {$F+} и {$F-} или поставить стандартную директиву far (для версий начиная с Turbo Pascal 6.0) cразу за заголовком подпрограммы.
Билет 21
Описание вызова процедур в паскале.
Вызов процедуры:
procedure ИмяПроцедуры [(CписокФормальныхПараметров)]
Описания (Const… Type… Var… процедуры и функции)
begin
Операторы
end;
Билет 22
Понятие о функциях в паскале. Их описание и вызов.
ФУНКЦИИ
Имя функции - не только имя алгоритма,
но и имя результата.
Функция, как правило, имеет один основной
результат.
function ИмяФункции [(CписокФормалПарам)] :ТипФункции
Описания (Const… Type… Var… процедуры и функции)
begin
Операторы
ИмяФункции :=результат
end;
Обращение к функции производится в выражениях посредством использования указателя фукции:
ИмяФункции[(Список фактических параметров)];
Указатель функции может стоять только в правой части оператора присваивания.
Билет 23
Понятие о статистической памяти, стеке процедур. Глобальные и локальные имена. Область действия и время жизни переменных «Чистые процедуры».
Глобальные и локальные имена:
- Глобальные имена - это имена, которые действуют на протяжении всей программы (или внешнего блока), они объявляются в соответствуюших разделах программы (или внешнего блока).
- Локальные имена - это имена, которые действуют в пределах блока подпрограммы, это внутренние имена подпрограммы.
- К локальным именам относятся формальные параметры и все имена, описанные в блоке подпрограммы. Вне блока подпрограммы локальные имена не определены.
- Локальное имя может использоваться в одном блоке, глобальные имена могут являться общими для нескольких блоков и использоваться для передачи данных между блоками.
Область памяти для локальных и глобальных имен:
- В Паскале данные, описанные в блоке программы, хранятся в так называемом статическом сегменте памяти; память под них распределяется при компиляции.
- Локальные данные подпрограммы хранятся в специальной области оперативной памяти – стеке; память под эти данные распределяется каждый раз при вызове подпрограммы и освобождается при завершении работы подпрограммы.
Область действия имени:
- Область действия имени - это часть программы, в которой имя может быть доступно.
- Область действия локального имени - блок подпрограммы, в которой оно объявлено; глобального – весь текст программы от места объявления до последнего слова End (с точкой).
- Глобальное имя доступно в подпрограмме только в том случае, если в подпрограмме оно не объявлено еще раз.
Время жизни (существования) данных:
- Время жизни – это время, в течение которого по данные распределена память.
- По времени жизни данные делятся на статические, автоматические, динамические.
- Статические данные существуют все время выполнения программы.
- Автоматические данные существуют во время выполнения подпрограммы , в которой описаны.
- Динамические данные получают место в памяти с помощью операторов динамического распределения памяти.
- В Паскале статические данные - это глобальные данные, автоматические – локальные.
Билет 24
Процедуры-параметры в Турбо-Паскале.
Средства паскаля для работы с подпрограммами-параметрами:
- Процедура-формальный параметр должна быть описана с помощью ранее объявленного процедурного (функционального) типа. При объявлении этого типа описывается структура заголовка подпрограммы, т.е. дается заголовок без имени подпрограммы. Примеры процедурных типов:
TYPE PROC1=PROCEDURE(a,b,c:real; var d:integer);
FUNC1=FUNCTION : REAL;
G=FUNCTION (x,y,z:real);
- Подпрограмма-фактический параметр должна соответствовать процедурному типу формального параметра, т.е. иметь такой же заголовок с точностью до обозначений.
Некоторые особенности использования подпрограмм-фактических параметров:
- Имена стандартных подпрограмм нельзя использовать в качестве фактических параметров.
Function sn(x:real):real;
begin sn:=sin(x)
end;
- В языках Borland Pascal и Turbo Pascal подпрограммы, используемые как фактические параметры, должны компилироваться с использованием "дальней модели памяти" , поэтому в программу надо включить директивы компилятора {$F+} и {$F-} или поставить стандартную директиву far (для версий начиная с Turbo Pascal 6.0) cразу за заголовком подпрограммы.
Назначение:
- Использование параметра-подпрограммы необходимо, когда некоторый алгоритм, описанный как подпрограмма, применим к множеству алгоритмов, каждый из которых также задается подпрограммой.
- Классические примеры таких ситуаций дают численные методы. В подпрограммах численных методов (вычисления определенного интеграла, нахождения экстремумов и нулей функций, вывода графиков, линий уровня, таблиц функций) обрабатываемые функции задаются как параметры.
- Средства для использования параметров-подпрограмм имеются во всех алгоритмических языках, предназначенных для решения вычислительных задач (СИ, Фортран, MatLab).
Билет 25
Примеры корректного использования глобальных переменных.
Program Primer;
Var a,i:real;
Procedure p1;
Var i:real;
Begin . . . a:=...; i:=...;
End{p1};
Procedure p2;
Var i:real;
Begin . . . a:=...; i:=...;
End{p2};
Begin {раздел действий программы}
i:=...; a:=...;
р1; р2; р2
End.
a-глобальная переменная, под нее
отведена одна ячейка в