Шафеева. Программирование на языке СИ
.pdf24.Используя динамическую структуру стек, распечатать элементы в обратном порядке.
25.Используя динамическую структуру "очередь", зашифровать содержимое текста: каждый символ заменить его кодом+1.
26.Используя динамическую структуру "стек", зашифровать содержимое текстового файла.
27.Используя динамическую структуру список, сохранить ряд чисел. Удалить элементы с заданным ключевым полем.
Задание 2 (программа 14_2)
Реализовать задачу с использованием другой динамической структуры или придумать свою задачу, написать и отладить для нее программу.
Лабораторная работа 15
Графика
Цель работы: знакомство с графическими процедурами и функциями.
Пример: Пусть необходимо построить график циклоиды. Зададим ее математическое описание:
x = a t - b sin t, y = a - b cos t,
при b<a циклоида получается укороченной, при b>a - удлиненной, b = a дает обычную циклоиду.
При разработке программы необходимо перед выводом графической информации на экран дисплея инициализировать графический режим с указанием пути к графическому драйверу, а в конце программы его следует закрыть.
Поскольку в графическом режиме работы дисплея верхняя левая точка экрана имеет координаты (0,0), сместим ось 0Х на середину экрана, а ось 0У - на 10 пикселей вправо. Для наглядности увеличим график путем использования масштабных коэффициентов по каждой оси координат. Кроме того, нужно помнить, что координаты точки в графическом режиме могут быть только целого типа.
С учетом вышесказанного программа построения циклоиды имеет
вид
#include <graphics.h> #include <conio.h> #include <math.h> void main()
{
int a = DETECT, b, k; float x, y, t;
51
initgraph(&a,&b,"C:\\TC\\BGI\0");
setgraphmode(2);
setbkcolor(0);
setcolor(4); moveto(0, 240); linerel(625, 0);
getch();
setcolor(2); line(10, 0, 10, 478);
setcolor(5);
getch(); moveto(10, 240);
t=0.0; // текущее значение параметра t из задания for ( k =0; k<200; ++k )
{
x = 0.4 * t - 0.5*sin(t); y = 0.4 - 0.5*cos(t);
lineto(100*x + 10, 100*y + 240); t = t + M_PI/32;
}
getch(); settextstyle(0, 0, 3);
outtextxy(50, 440, "График циклоиды"); getch();
closegraph();
}
Поскольку вычисляемые в программе координаты являются вещественными, то для их преобразования к целым значениям использована функция TRUNC().
При разработке графических программ необходимо следить, чтобы значения координат не выходили за пределы экрана. Для этого рекомендуется рассчитывать коэффициенты увеличения или уменьшения, а также параметры смещения изображения.
Задание 1 (программа 15_1)
Начертить графики функций F1(x) и F2(x) для результатов, полученных в программе 3_2.pas. На экран должен выводиться график с надписью выводимой функции.
Задание 2 (программа 15_2)
Напишите и отладьте программу для одной следующих задач.
52
1.Подготовить и отладить программу вычерчивания квадрата, вписанного в окружность. Запрограммировать изменение цветов окружности.
2.Организовать вывод на экран разноцветных цифр поочередно горизонтально и вертикально.
3.Отладить программу вычерчивания нескольких окружностей заданного радиуса в произвольном месте экрана разными цветами. Предусмотреть их мерцание.
4.Разработать программу изображения точки, движущейся по косину-
соиде (y = cos(x)).
5.Отладить программу рисования квадрата с диагоналями, пресекающимися в центре экрана. Создать иллюзию его уменьшения.
6. Начертить на экране картинку «круги на воде».
7.Изобразить движущийся на зрителя экран (прямоугольник).
8.Подготовить и отладить программу изображения правильного треугольника, вращающегося вокруг своей (любой) медианы.
9.Разработать программу вывода на экран компьютера пяти квадратов по углам и в середине экрана. Запрограммировать поочередный вывод их разными цветами.
10.Разными цветами в различных точках экрана выводить надпись «TurboPascal» с изменением размера шрифта.
11.Изобразить трубу, образованную разноцветными окружностями.
12.Организовать вывод на экран названия континентов разными цветами в различных точках экрана готическим и обычным шрифтами.
13.Изобразить спутник (точку), вращающийся вокруг планеты.
14.Изобразить НЛО, приземляющийся в различных точках экрана.
15.Организовать вывод на экран разноцветных русских букв разных размеров поочередно высвечивая или заполняя экран в хаотическом порядке.
16.Отладить программу вычерчивания графиков функций y = sin(x) и y = sin(2x) разными цветами с разными осями координат.
17.Организовать вывод на экран формул химических элементов разными цветами в различных точках экрана.
18.Начертить на экране ряд геометрических фигур: квадрат, круг, треугольник, прямоугольник, используя разные цвета.
19.Изобразить схематично на экране движущегося человечка.
20.Изобразить движение объекта по прямоугольной спирали.
ЗАДАНИЕ К РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЕ
Разработать схему алгоритма, написать и отладить программу для расчета и построения графиков двух функций (результаты расчетов должны храниться в виде массивов и распечатываться в виде таблицы)
53
[5] необходимо выделить наибольшее и наименьшее значения для каждой из функций. Добавить в нее решение нелинейного уравнения и вычисления приближенного значения определенного интеграла по заданию преподавателя.
Разработать программу нахождения корней уравнения f(x)=0 на интервале [a,b] с точностью e=0.001 (интервал подобрать или рассчитать самостоятельно). При реализации можно использовать метод половинного деления (бисекции) или метод хорд [9]:
|
x - 2e-x - |
|
|
|
|
|
x2 - ln(x+1) + sin x -2 = 0. |
1. |
x = 0. |
2. |
|||||
|
5x - ex -2x |
|
|
|
|
|
|
3. |
|
|
x = 0. |
4. |
2x lg x - 3 = 0. |
||
5. |
2x - 3x - 2 = 0. |
6. |
0,5 + cos x - 2x sin x = 0. |
||||
7. |
sin x + x - 3 = 0. |
8. |
x ex – 2 x2 - 1 = 0. |
|
|
|
|
|
|
|
|
|
9. |
|
ln(x2 3) + 2x - 3 = 0. |
10. 2 ln(x+1) - x + 1 = 0. |
|||||
11. tg x - ex+1 = 0. |
12. 2 ln(x+1) + arctg x -3 = 0. |
|||||||
13. x3 - 2x2 - 4 = 0. |
14. 5x2 - 2x ln x-7 = 0. |
|||||||
|
|
|
|
|
|
|
||
15. |
2 3 x 2 1 - 3 sin x = 5. |
16. 2x3 - 3x2 - 4 = 0. |
||||||
|
|
|
|
|
||||
17. |
4x - sin2x -3 = 0. |
18. 2x sin2 x-3 x cosx = 0. |
||||||
19. |
2 ln(x+1)-3 sin2x = 4. |
20. x3 + 3x + 2 = 0. |
Разработать программу для вычисления значения определенного интеграла на интервале [a,b] (a, b подобрать самостоятельно) численными методами прямоугольников и трапеций [9] для следующих вариантов:
b
|
|
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
|
|
|
1. |
3 x 1dx |
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|||||||||||
2. |
|
|
|
x |
2 |
3 dx |
3. |
|
|
|
|
|
|
|
|
|
|
dx |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
a |
|
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
a ( |
|
2 x 3 ) |
||||||||||
|
b |
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
cos |
|
|
|
|
|
|
|
||||||
|
|
x |
2 |
e |
dx |
|
x 2 tgdx |
|
|
|
|
|
|
|
dx |
||||||||||||||||
4. |
|
|
|
|
5. |
|
|
6. |
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
( x 2 |
1) |
|||||||||||||||||||||||
|
a |
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
b |
|
lg( x 1) |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
cos xe |
x |
|
|
|
x |
2 |
|
|
|
|
|
|
|
dx |
||||||||||||||||
7. |
dx |
8. |
ln |
xdx |
9. |
|
|
|
|
||||||||||||||||||||||
|
|
|
(1 |
|
x |
2 |
) |
|
|
|
|
||||||||||||||||||||
|
a |
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
a |
|
|
|
|
|
|||||||
|
b |
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
e x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
ln( x 1)dx |
11. |
e 2 x |
sin 2 xdx |
|
|
|
|
|
sin |
|
x |
|
|
|
|
|
dx |
||||||||||||
10. |
|
12. |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
x 3 |
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 ) |
||||||||||||||
|
a |
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
a ( |
|
54
b
13. (e x e x )dx a
b
16. x sin( x ) dx a
b
1
19. a (1 ln( x ) ) dx
b |
|
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
14. |
|
2 |
|
|
|
|
|
|
|
|
|
cos |
x |
|
|
|
|
|
x |
arctg ( x ) dx |
|
|
|
|
|
|
|
|
|
|
dx |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
15. |
|
(sin x cos |
|
|
|||||||
|
|
|
|
|
|
|
x ) |
|||||||||||
a |
|
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
b |
arctg 2 ( x ) |
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
||
17. |
dx |
|
|
|
|
|
|
ln( 1 x ) |
dx |
|||||||||
|
|
|
18. |
|
||||||||||||||
|
|
|
|
|
|
|
||||||||||||
|
|
x |
|
|
|
|
(1 |
x |
2 |
) |
|
|
||||||
a |
|
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|||
|
|
|
|
b |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20. |
|
|
|
dx . |
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
( x |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
cos x ) |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
a |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Интервал интегрирования разбить равномерно на N>50 частей.
Библиографический список
1.Березин, Б.И. Начальный курс Си и С++ / Б.И. Березин, С.И. Березин. – М.: Диалог-МИФИ, 1996. – 288 с.
2.ГОСТ 19.701-90. ЕСПД. Схемы алгоритмов, пpогpамм, данных и систем. – М.: Изд-во стандартов, 1991. – 26 с.
3.Кpячков, А.В. и дp. Пpогpаммиpование на С и С++. Практикум. / А.В. Кpячков и дp. – М.: Радио и связь, 1997. – 344 с.
4.Макогон, В.С. Язык программирования Си для начинающих / В.С. Макогон. – Одесса: НПФ "АСТРОПРИНТ", 1993. – 96 с.
5.Методы проектирования программ: Метод. указания / Сост. О. П. Шафеева. –Омск: Изд-во ОмГТУ, 2004. – 32 с.
6.Павловская, Т.А. С/С++. Программирование на языке высокого уровня / Т.А. Павловская. – СП-б: Питер, 2002. – 462 с.
7.Подбельский, В.В. Программирование на языке Си / В.В. Подбельский, С.С. Фомин. – М.: 2000 – 600 с.
8.Флоренсов, А.Н. Введение в программирование. Семантический подход: учеб. пособие / А.Н. Флоренсов. – Омск: Изд-во ОмГТУ, 1998. – 220 с.
9.Численные методы: Метод. указания. / Сост.: О. Б. Малков, Е. Т. Гегечкори. – Омск: Изд-во ОмГТУ, 1995. – 28 с.
10.Шафеева, О.П. Технологии программирования. С++: учеб. пособие / О.П. Шафеева. – Омск: Изд-во ОмГТУ, 2007. – 80 с.
11.Шилд, Г. Справочник программиста по С/С++. Учеб. Пособие / Г. Шилд – М.: Издательский дом «Вильямс», 2000. – 448 с.
55
Приложение А
Г л а в н о е м е н ю
File |
Edit |
Search |
Run |
Compile |
(Alt+F) |
(Alt+E) |
(Alt+S) |
(Alt+R) |
(Alt+C) |
Файл |
Редактор |
Поиск |
Выполнение |
Компиляция |
|
|
|
|
|
NEW |
UNDO |
|
Создать |
Alt+BkSp |
|
новый |
Удалить |
|
файл |
изменения |
|
OPEN F3 |
REDO |
|
Открыть |
||
|
||
файл |
Восстановить |
|
SAVE F2 |
изменения |
|
Сохранить |
||
_____________ |
||
файл |
||
CUT Shift-Del |
||
SAVE as... |
||
Убрать |
||
Сохранить |
||
фрагмент |
||
под име- |
||
в буфер |
||
нем … |
||
COPY Ctrl-Ins |
||
SAVE ALL |
Копировать |
|
Сохранить |
в буфер |
|
все |
||
PASTE |
||
__________ |
||
Shift-Ins |
||
|
||
CHANGE |
Вставить из |
|
буфера |
||
DIR |
||
CLEAR |
||
Смена |
||
Ctrl-Del |
||
каталога |
||
Удалить |
||
фрагмент |
||
Распечатать |
||
COPY |
||
DOS |
||
EXAMPLE |
||
SHELL |
||
Копировать |
||
Выход |
||
пример |
||
в DOS |
||
|
||
DOS QUIT |
SHAW |
|
|
||
ALT+X |
CLIPBOARD |
|
|
Открыть окно |
|
|
буфера |
|
|
|
FIND
Найти
фрагмент
REPLACE
Заменить
фрагмент
SEARCH
AGAIN
Повторить
поиск
Ctrl+F2
__________
GO TO LINE
NUMBER
Перейти к строке с номером
PREVIOUS
ERROR
Предыдущая
ошибка
NEXT
ERROR
Следующая
ошибка
LOCATE FUNCTION
Разместить
функцию
RUN Ctrl-F9
Запуск на выполнение
PROGRAM
RESET
Ctrl-F2
Перезапуск
программы
GO TO
CURSOR F4
Выполнение до курсора
TRACE INTO
F7
Трассировка с заходом в п/п
STEP OVER
F8
Выполнение по строкам без захода в п/п
ARGU-
MENTS
Аргументы
COMPILE
Alt-F9
Компиляция файла из
окна
MAKE F9
Условная
рекомпиляция
LINK Компоновать
____________
BUILD ALL
Безусловная
рекомпиляция всей программы
INFOR-
MATION
Информация
REMOVE MESSAGE
Убрать отчет об ошибках
56
с р е д ы Турбо Cu
Debug
Alt+D
Отладка
INSPECT
наблюдать
ALT+F4
EVALUATE/ MODIFY
Ctrl-F4
Вычислить/ изменить
CALL
STACK
Ctrl-F3
Oкнo подпрограммы
WATCHES
Параметры
TOGGLE BREAKPOINT
Обозначить точку прерывания
Ctrl+F8
BREAK-
POINTS
Точки
прерывания
Project
проектирова
ние
(ALT+P)
OPEN PROJECT
Открыть
проект
CLOSE PROJECT
Закрыть
проект
ADD ITEM
Добавить
пункт
DELETE ITEM
Удалить
пункт
LOCAL
OPTOIN
Отдельные
опции
INCLUDE FILES
Включить в программу файлы
Options |
Window |
|
Alt+O |
Alt+W |
|
Параметры |
Окна |
|
APPLICA- |
SIZE/MOVE |
|
TION |
Ctrl +F5 |
|
Приложение |
Перемещение, |
|
COMPILER |
изменение |
|
Параметры |
размеров |
|
TRANSFER |
ZOOM |
F5 |
Переместиться |
Раскрыть |
|
в выбранное |
на экран |
|
MAKE |
CASCADE |
|
Выполнить |
Окна каскадом |
|
выбранные |
TILE |
|
действия |
Непересека- |
|
LINKER |
ющиеся |
|
Параметры |
NEXT |
F6 |
компоновщи- |
Следующее |
|
ка |
CLOSE |
|
LIBRARIAN |
Alt-F3 За- |
|
Библиотечные |
крыть текущее |
|
параметры |
CLOSE ALL |
|
DEBUGGER |
Закрыть все |
|
Отладчик |
окна |
|
DIRECTO- |
MESSAGE |
|
RIES |
Окно |
|
Каталоги EN- |
сообщений |
|
VIRONMENT |
OUTPUT |
|
Условия |
Окно результата |
|
работы |
WATCH |
|
SAVE |
Окно отладки |
|
Сохранение |
USER |
|
параметров |
SCREEN |
|
|
Пользов. экран |
|
|
PROJECT |
|
|
Окно проекта |
|
|
LIST ALL |
|
|
Список всех |
|
|
окон |
|
|
|
|
Help
Alt+H
Помощь
CON-
TENTS
Содержание
INDEX
Ключевые
слова
Shift+F1
TOPIC SEARCN
Поиск
темы
Ctrl+F1
PREVIOUS
TOPIC
Предыдущая тема
Alt+F1
Help on Help
Справка о пользователе
ACTIVE FILE
Действующий файл помощи
ABOUT
Версия
языка
57
Приложение Б
Операции языка С/С++
Вес |
Знак |
Наименование операции |
Тип |
Порядок |
|
|
|
операции |
|
1 |
( ) |
вызов функции |
Выражение |
Слева |
|
[] |
выделение элемента массива |
|
направо |
|
. |
выделение элемента структуры |
|
|
|
|
или объединения |
|
|
|
-> |
выделение элемента структуры |
|
|
|
|
или объединения (объединения), |
|
|
|
|
адресуемой (го) указателем |
|
|
2 |
! |
логическое отрицание |
унарные |
Справа |
|
~ |
побитовое отрицание |
|
налево |
|
- |
изменение знака (унарный минус) |
|
|
|
++ |
увеличение на 1 (инкремент) |
|
|
|
-- |
уменьшение на 1 (декремент) |
|
|
|
& |
определение адреса |
|
|
|
* |
обращение по адресу |
|
|
|
(тип) |
преобразование типа |
|
|
|
sizeof |
определение размера в байтах |
|
|
3 |
* |
умножение |
бинарные |
Слева |
|
/ |
деление |
арифмети- |
направо |
|
% |
остаток от деления |
ческие |
|
4 |
+ |
сложение |
бинарные |
Слева |
|
- |
вычитание |
арифмети- |
направо |
|
|
|
ческие |
|
|
|
|
|
|
5 |
<< |
сдвиг влево |
сдвига |
Слева |
|
>> |
сдвиг вправо |
|
направо |
6 |
< |
меньше чем |
отношения |
Слева |
|
<= |
меньше или равно |
|
направо |
|
> |
больше чем |
|
|
|
>= |
больше или равно |
|
|
7 |
== |
равно |
отношения |
Слева |
|
!= |
неравно |
|
направо |
8 |
& |
поразрядная операция "И" |
побитовая |
|
|
|
|
|
|
9 |
^ |
«исключающее "ИЛИ"» |
побитовая |
|
|
|
|
|
|
10 |
| |
поразрядная "ИЛИ" |
побитовая |
|
11 |
&& |
логическая операция "И" |
логическая |
|
12 |
|| |
логическая операция "ИЛИ" |
логическая |
|
|
|
|
|
|
13 |
? : |
условная операция |
тернарная |
|
|
|
|
|
|
58
14 |
|
= |
простое присваивание |
|
присваи- |
|
Справа |
|||||
|
|
|
|
составные присваивания: |
|
вания |
|
налево |
||||
|
|
|
+= |
сложение с присваиванием |
|
бинарные |
|
|
|
|||
|
|
|
-= |
вычитание с присваиванием |
|
|
|
|
|
|||
|
|
|
*= |
умножение с присваиванием |
|
|
|
|
|
|||
|
|
|
/= |
деление с присваиванием |
|
|
|
|
|
|||
|
|
|
%= |
остаток от деления с присваиванием |
|
|
|
|
||||
|
|
|
<<= |
сдвиг двоичного числа влево с |
|
(для дво- |
|
|
|
|||
|
|
|
|
присваиванием |
|
|
ичных |
|
|
|
||
|
|
|
>>= |
сдвиг двоичного кода вправо с пр. |
операндов) |
|
|
|
||||
|
|
|
&= |
побитовая |
операция "И" с присв. |
|
|
|
|
|||
|
|
|
|= |
поразрядная операция "ИЛИ" c |
|
|
|
|
|
|||
|
|
|
|
присваиванием |
|
|
|
|
|
|
||
|
|
|
^= |
исключающее "ИЛИ" с присваив. |
|
|
|
|
||||
15 |
|
, |
операция "запятая" (соединения) |
|
тернарная |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Приложение В |
|||
|
|
|
|
|
|
|
Типы данных |
|
|
|
|
|
|
|
|
Обозначение |
Размер |
Диапазон |
|
Тип данных |
|
||||
|
|
|
|
|
(байт) |
|
|
|
|
|
|
|
|
1 |
|
char, |
|
1 |
|
-128...127 |
Символьный |
|
|
||
|
|
|
signed char |
|
|
|
со знаком |
|
|
|||
|
2 |
|
unsigned char |
1 |
|
0...255 |
Символный без знака |
|
||||
|
3 |
|
short, short int, |
2 |
-32768... |
Короткое целое со зна- |
|
|||||
|
|
|
signed short , |
|
|
32767 |
ком |
|
|
|||
|
|
|
signed short int |
|
|
|
|
|
|
|
|
|
|
4 |
|
unsigned short, |
2 |
0...65535 |
Короткое целое без зна- |
|
|||||
|
|
unsigned short int |
|
|
|
ка |
|
|
||||
|
5 |
|
int, signed, |
1, 2, |
4 |
Зависит от |
|
Целое |
|
|
||
|
|
|
signed int |
|
|
реализации |
|
|
|
|
|
|
|
6 |
|
unsigned, |
1, 2, |
4 |
Зависит от ре- |
Целое без знака |
|
|
|||
|
|
|
unsigned int |
|
|
ализации |
|
|
|
|
|
|
|
7 |
|
long, signed |
4 |
-2147483648 |
Длинное целое со знаком |
|
|||||
|
|
|
long, long int |
|
|
…2147483647 |
|
|
|
|
|
|
|
8 |
|
unsigned long |
4 |
0...4294967295 |
Длинное целое без знака |
|
|||||
|
9 |
|
float |
|
8 |
-3.4e-38... |
Вещественное число с |
|
||||
|
|
|
|
|
|
|
3.14e+38 |
плавающей точкой |
|
|||
|
10 |
|
double |
|
8 |
-1.7е- |
Вещественное число |
|
||||
|
|
|
|
|
|
|
308..1.7е308 |
удвоенной точности |
|
|||
|
11 |
|
long double |
10 |
-3.4e-4932... |
Длинное вещественное |
|
|||||
|
|
|
|
|
|
|
.4e4932 |
число удвоенной точности |
|
59
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Приложение Г |
|
|
|
|
|
Обозначения графические в схемах алгоритмов (ГОСТ 19.701-90) |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Символ |
Наименование |
|
Назначение |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Данные |
Определяет ввод или вывод на внешнее |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
устройство или любой носитель данных |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Отражает обработку данных: выполнение от- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Процесс |
дельной операции или группы операций |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Предопреде- |
Отображает предопределённый процесс, состо- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ленный про- |
ящий из одной или нескольких операций про- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
цесс |
граммы, которые определены в другом месте |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(подпрограмме, модуле) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Подготовка |
Отражает инициализацию и модификацию па- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
раметра для управления циклом со счётчиком |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Решение |
Описывает проверку условия и выполняет пе- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
реключение по одному из условий. Имеет один |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
вход и два или более альтернативных выходов, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
один из которых активизируется после вычис- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ления условия внутри символа |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Границы цикла |
Состоит из двух частей: начала и конца цикла. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Обе части имеют один и тот же идентификатор. |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Изменение значения идентификатора, условия |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
для выполнения или завершения помещаются |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
внутри символов в начале или в конце цикла |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Соединитель |
Используется для обрыва линии и продолжения |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
её в другом месте. Должен содержать уникаль- |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ное обозначение |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Терминатор |
Определяет начало и конец структурной схемы |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
алгоритма программы или подпрограммы |
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Основная |
Отображает |
последовательность выполнения |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
линия |
действий в алгоритме |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Комментарий |
Используется |
для добавления пояснительных |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
записей. Связывается с символом или группой |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
символов, обведённых пунктиром |
60