- •История развития эвм.
- •Архитектура эвм. Основные устройства и принципы взаимодействия.
- •Типовые структуры эвм.
- •Система счисления. Способ представления любого числа с помощью цифр.
- •Структурная организация эвм или три иерархических уровня или функциональной части эвм.
- •Раздел 1. Технология проектирования программных продуктов. Алгоритмизация.
- •Программная часть пк.
- •Шаблоны файлов.
- •Структура файловой системы.
- •Принципы работы с программными продуктами.
- •Тема 1. Процессы жизненного цикла программных средств Введение
- •1 Область применения
- •1.2 Область распространения
- •1.3 Адаптация настоящего стандарта
- •1.4 Соответствие
- •1.5 Ограничения
- •2 Нормативные ссылки
- •3 Определения
- •4 Прикладное применение настоящего стандарта
- •4.1 Построение стандарта
- •5 Основные процессы жизненного цикла
- •5.1 Процесс заказа
- •5.2 Процесс поставки
- •5.3 Процесс разработки
- •5.3.1 Подготовка процесса,
- •5.4 Процесс эксплуатации
- •5.5 Процесс сопровождения
- •6 Вспомогательные процессы жизненного цикла
- •6.1 Процесс документирования
- •6.1.2 Проектирование и разработка
- •6.1.З Выпуск
- •6.2 Процесс управления конфигурацией
- •6.2.5 Оценка конфигурации
- •6.3 Процесс обеспечения качества
- •6.3.1 Подготовка процесса
- •6.3.2 Обеспечение продукта
- •6.4 Процесс верификации
- •6.5 Процесс аттестации
- •6.6 Процесс совместного анализа
- •6.7 Процесс аудита
- •6.8 Процесс решения проблем
- •7 Организационные процессы жизненного цикла
- •7.1 Процесс управления
- •7.2 Процесс создания инфраструктуры
- •7.3 Процесс усовершенствования
- •Раздел 3. Программирование в среде turbo pascal (система программирования)
- •Введение.
- •Общая характеристика системы.
- •Среда turbo pascal. Элементы диалоговой среды.
- •Система меню.
- •Search-поиск:
- •Window – окно:
- •Помощь f1:
- •Текстовый редактор.
- •Основные принципы работы с turbo pascal.
- •Язык программирования turbo pascal Структура программы.
- •Алфавит языка.
- •Синтаксис языка.
- •Запись текста программы.
- •Операции и выражения.
- •Встроенные (стандартные) функции языка turbo pascal.
- •Описание констант, переменных и типов .
- •Обзор типов данных.
- •Простые структурированные ссылочные процедурные объектные
- •Целый тип.
- •Понятие целочисленного выражения.
- •Вещественный тип.
- •Логический тип boolean.
- •Операции над логическими данными.
- •Символьный тип char.
- •Диапазон (ограниченный, интервальный).
- •Перечисляемый (перечислимый) тип.
- •Регулярный тип (массив) array.
- •Файловый тип.
- •Описание файлов
- •Чтение из файла.
- •Запись данных в файл.
- •Операции (действия) над файлами.
- •Текстовые файлы.
- •Запись (комбинированный тип данных) record.
- •Операции, выполняемые над записью.
- •Запись с вариантной частью.
- •Множественный тип (множества) set.
- •Операции множеств.
- •Строковый тип string.
- •Обработка операции строковых данных.
- •Типизированные константы.
- •Преобразование, совместимость типов.
- •Способы преобразования типов.
- •Эквивалентность типов.
- •Основы ввода/вывода.
- •Организация форматирования вывода.
- •Операторы языка.
- •Простые операторы.
- •Структурные операторы.
- •Оператор работы над записями with.
- •Операторы работы над записями.
- •Подпрограммы. Процедуры и функции. Блочная структура подпрограммы.
- •Правила по использованию подпрограмм
- •Общая структура подпрограмм
- •Механизм параметров
- •Вычисление значения функции. Завершение подпрограмм.
- •Предварительное описание подпрограмм.
- •Рекурсия и побочный эффект
- •Процедурный тип.
- •Правило использования процедурных типов
- •Директивы компилятора.
- •Модули.
- •Общая структура модуля.
- •Заголовок модуля и связь модулей друг с другом.
- •Интерфейсная часть.
- •Исполняемая часть(реализационная).
- •Инициирующая часть.
- •Компиляция модулей.
- •Стандартные модули.
Операции, выполняемые над записью.
В основном используется операция присваивания. В правой и левой части оператора присваивания одинаковые типы. Значения переменной типа RECORD определено тогда и только тогда, когда определены значения всех ее полей.
Пример программы:
PROGRAM MAXIM;
USES CRT; {ОЧИСТКА ЭКРАНА}
CONST
NAL=12; {НАЛОГ}
VAR I: INTEGER;
STR: ARRAY[1..15] OF RECORD; {СТРУКТУРА ЗАДАНА}
NAME: STRING[30];
OKLAD, S_V: REAL;
END;
BEGIN
CLRSCR; {ОЧИСТКА ЭКРАНА}
FOR I:=1 TO 15 DO
BEGIN
WITH STR[I] DO {ОПЕРАТОР УПРОЩАЕТ ОБРАЩЕНИЕ К ЗАПИСИ}
BEGIN
WRITE(‘ВВЕДИТЕ Ф. И. О.: ’);
READLN(NAME);
WRITE(‘ВВЕДИТЕ РАЗМЕР ОКЛАДА: ’);
READLN(OKLAD);
S_V:=OKLAD – OKLAD/100*NAL; {РЕЗУЛЬТАТ РАЗМЕЩ-СЯ В ПОЛЕ ЗАПИСИ S_V }
END;
END;
CLRSCR;
WRITELN
(‘Ф.И.О. ОКЛАД НАЛОГ(%) СУММА К ВЫДАЧЕ’);
FOR I:=1 TO 15 DO
BEGIN
WITH STR[I] DO
WRITELN (NAME,’ ‘, OKLAD,’ ‘, NAL,’ ‘, S_V);
END;
READLN;
END.
Фрагмент ввода данных из файла для записи:
TYPE DATA = RECORD
M:CHAR;
P:REAL;
K:BYTE;
END;
VAR PARK:ARRAY[1..10] OF DATA;
F:TEXT;
I:BYTE;
BEGIN
ASSIGN(F ‘DAN’)
RESET(F);
FOR I:=1 TO 10 DO
WITH PARK[I] DO
READLN(F,M,P,K);
END;
CLOSE(F);
. . . . . . . . .. . .. ... .
Пример программы:
PROGRAM KATYA;
USES CRT;
CONST N=3;
VAR I:INTEGER;
A:ARRAY[1..N] OF RECORD
NUMBER , M:INTEGER;
WEIGHT, PRICE:REAL;
END;
SST, SRST, SW, SRW: REAL;
K:REAL;
BEGIN
SST:=0;
SW:=0;
K:=0;
BEGIN
FOR I:=0 TO N DO
BEGIN WITH A[I] DO
BEGIN WRITE (‘ Введите заводской номер заготовки: ’ );
READLN( NUMBER );
WRITE( ‘ Введите вес заготовки: ’ );
READLN( WEIGHT );
WRITE( ‘ Введите стоимость заготовки: ’ );
READLN( PRISE );
WRITE( ‘ Введите партию деталей для данного вида заготовок: ’ );
READLN( M );
SST:=SST+ M*PRISE;
K:=K+1;
SRST:=SST/K;
SW:=SW + M*WEIGHT;
SRW:= SW/K;
END;
END;
END;
WRITELN(‘SST=’,SST);
WRITELN(‘SRST=’,SRST);
WRITELN(‘SW=’,SW);
WRITELN(‘SRW=’,SRW);
READLN;
END.
Запись с вариантной частью.
Запись позволяет включить вариантную часть, это означает , что возможно определить тип, имеющий несколько вариантов структуры. В операторах используется структура выбора или оператор выбора CASE OF:
CASE <выражение> OF
…
END.
Пример программы:
PROGRAM Y;
TYPE FIG =(CIRCLE , SQUARE, STRAIGHT)
FIGURA = RECORD
S:= REAL;
F:=FIG;
CASE FIG OF
CIRCLE:( R:REAL);
SQUARE:(A:REAL);
STRIGHT:(M:REAL)
END;
VAR H: FIGURA;
N: INTEGER;
BEGIN
WRITELN(‘ Введите номер фигуры:’);
WRITELN(‘ 1- круг; 2 – квадрат; 3 - прямоугольник’);
READLN(N);
CASE N OF
1: BEGIN
H.F:=CIRCLE;
WRITELN(‘ Введите значения R:’);
READLN(H.R);
END;
2: BEGIN
H.F:= SQUARE;
WRITELN(‘ Введите значение стороны квадрата А:’);
READLN(H.A);
END;
3: BEGIN
H.F=STRIGHT;
WRITELN(‘Введите значения сторон М и N :’);
READLN(H.M,H.N);
END;
END;
WITH H DO
CASE F OF
CIRCLE: BEGIN S:= PI*SQR(R);WRITE(H.S:4:2) END;
SQUARE: BEGIN S:= SQR(A);WRITE(H.S:4:2) END;
STRIGHT: BEGIN S:= M*N;WRITE(H.S:4:2) END;
END;
END.
Замечания к построению записей с вариантной частью:
-
Все идентификаторы должны быть разные, даже если они находятся в разных вариантах.
-
Если в вариантной части вариант отсутствует, то он записывается так В:( );.
-
Любая запись может иметь только одну вариантную часть, следующую за фиксированной.
