Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Рацеев.Лабораторные по информатике

.pdf
Скачиваний:
80
Добавлен:
18.04.2015
Размер:
680.77 Кб
Скачать

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

это два слова, начинающиеся с большой буквы и соединенные знаком тире. Пример: «Воронцов-Вельяминов, Петров-Водкин, Римский-Корсаков».

24.Дан текстовый файл с изображением целых чисел, которые необходимо переписать в список L1a. Используя структуры «Очередь», в выходной файл записать сначала простые числа, затем полные квадраты, а потом остальные, сохраняя их взаимный порядок.

25.Дан текстовый файл с изображением целых чисел, которые необходимо переписать в список L1a. Удалить из списка непростые числа, затем отсортировать их по возрастанию, используя список L1b, и записать результат в выходной файл.

26.Дан текстовый файл с изображением целых чисел, которые необходимо переписать в список L1a. Используя структуру «Stack», создать в списке L1b изображения этих чисел в двоичной системе счисления и переписать их в выходной файл.

Пример: “56 13 1234 8 19” преобразуется в “111000 1101 10011010010 1000 10011”

27.Дан текстовый файл с изображением целых чисел, которые необходимо переписать в список L1a. Используя структуру «Stack», в выходной файл вывести все числа, но те их них, которые находятся между максимальным и минимальным значением, в обратном порядке следования.

Пример: “45 78 32 19 58 37 11 23 68” преобразуется в “45 78 37 58 19 32 11 23 68”.

43

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

ЛАБОРАТОРНАЯ РАБОТА 13.

Тема: Элементы машинной графики.

Задание:

Целью лабораторной работы является изучение графических операторов языка Turbo-Pascal в процессе построения статических изображений. Для отчета необходимо представить расчетные формулы и текст программы, а также продемонстрировать ее работу.

Программа должна построить в соответствии с заданием либо график функции, либо диаграмму.

Определения:

Столбиковая диаграмма - набор из прямоугольников одинаковой ширины, расположенных вдоль горизонтальной оси. Высота этих прямоугольников пропорциональна значению параметра.

Линейная горизонтальная диаграмма - то же, что и столбиковая, только повернутая на 90 градусов вправо.

Круговая диаграмма - это круг, разделенный на сектора, угол раскрытия которых пропорционален значению параметра, а сумма углов всех секторов равна 360 градусов.

Примечания и рекомендации:

В начале программы в режиме МЕНЮ следует задать имена файлов, с которыми в дальнейшем будет работать программа.

МЕНЮ может содержать следующие пункты:

-Ввод имени файла с параметрами.

-Построение графика.

-Выход из программы.

ЗАДАНИЕ.

Построить на графическом экране график функции или диаграмму, оформив их такими атрибутами, как:

-обрамляющая рамка,

-оси координат,

-надписи и масштабные отметки на этих осях,

-наименование графика или диаграммы.

Для построения графика следует:

-Вычислить значения элементов графика по заданным формулам и записать их во временный типизированный файл.

-Найти максимальное и минимальное значения элементов графика и определить масштабные коэффициенты так, чтобы семейство графиков полностью умещалось на экране.

44

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

-Согласно Вашего задания построить семейство графиков на экране на основе данных из временного файла.

-Удалить временный файл.

1................................................................

На экране построить семейство кривых (Спираль), заданных функцией: x = r·cos(t+f); y = r·sin(t+f); r = t/2; [ 0 < t < 2*pi*n ]

Группа параметров F,N для построения семейства дана в текстовом файле.

2.................................................................

На экране построить семейство кривых, заданных функцией: Y = A·sin(0.98x) + B·cos(0.37x); [-5 < x < 5]

Группа параметров A,B для построения семейства дана в текстовом файле.

3.................................................................

Дан текстовый файл, словами в котором являются ЧИСЛА, т.е. слова, состоящие только из цифр. Первые три пары чисел есть координаты вершин треугольника на плоскости, остальные - координаты точек некоторой ломаной линии на плоскости. Построить треугольник и ломаную линию на экране и определить, пересекает ли она этот треугольник.

4.................................................................

На экране построить семейство кривых, заданных функцией: Y = K·x - F·sin(0.93x) + S·cos(W x); [-6 <x < 6 ]

Группа параметров K,F,S,W для построения семейства дана в текстовом файле.

5.................................................................

Дан текстовый файл, словами в котором являются ЧИСЛА, т.е. слова, состоящие только из цифр. Каждая тройка чисел представляет собой параметры окружности: координаты центра и радиус.

Построить семейство окружностей на экране. Окружности могут пересекаться. Окружности, не пересекающиеся ни с какой другой окружностью, выделить другим цветом или штриховкой.

6.................................................................

Дан текстовый файл, представляющий собой программу на языке Pascal без констант, процедур и функций. Построить линейную горизонтальную диаграмму распределения частот использования в программе первых N имен идентификаторов переменных, отсортированных по алфавиту.

Примечание: элемент диаграммы раскрасить или заштриховать различным образом в зависимости от типа этой переменной.

7.................................................................

На экране построить семейство кривых, заданных функцией: Y = Q·cos(2x) - J·x + ln(│x+3│); [-2 < x < 2]

Группа параметров Q,J для построения семейства дана в текстовом файле.

45

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

8.................................................................

 

 

На экране построить семейство кривых, заданных функцией:

 

Y = P·0.56x -11·V·x + 4·M·sin(X+1) + 3; [-5 < x < 5]

Группа параметров P,V,M для построения семейства дана в текстовом файле.

9.................................................................

На экране построить семейство кривых, заданных функцией: Y = Z·sin(x) - 1.3·D·x + exp(1.6·L·(x-1)) - 2; [-3 < x < 3]

Группа параметров Z,D,L для построения семейства дана в текстовом файле.

10................................................................

На экране построить семейство кривых, заданных функцией:

Y = 0.4·N·x - 2.3·R·x^2 + ln(│x+5│)+3; [-4 < x < 4]

Группа параметров N,R для построения семейства дана в текстовом файле.

11................................................................

Дан текстовый файл, словами в котором являются ЧИСЛА, т.е. слова, состоящие только из цифр. Весь диапазон этих чисел от MIN до MAX делится на 20 интервалов. Построить столбиковую диаграмму распределения количества частот попадания чисел в эти интервалы.

12................................................................

На экране построить семейство кривых (Улитка Паскаля),заданных

функцией:

 

X = A·cos(fi)·cos(fi) + 4·K·cos(fi);

 

Y = A·sin(fi)·cos(fi) + 4·K·sin(fi);

[ 0 <= fi <= 2·pi ]

Группа параметров A,K для построения семейства дана в текстовом файле.

13................................................................

Дан текстовый файл. Построить столбиковую диаграмму распределения количества встреченных латинских букв в этом тексте. Строчную и прописную букву не различать, остальные символы игнорировать.

14................................................................

На экране построить семейство кривых, заданных функцией: Y =

1.7·H·x + 7.8·U·sin(2.1·x) + 3.4·(x-1)^2 - 7.2; [-3 < x < 3]

Группа параметров H,U для построения семейства дана в текстовом файле.

15................................................................

На экране построить семейство кривых, заданных функцией: Y = 0.5·T·exp(1.7·(X-1)) + 0.4·E·x^2 - 2x - 8.9; [-8 < x < 3]

Группа параметров T,E для построения семейства дана в текстовом файле.

16................................................................

46

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

На экране построить семейство кривых, заданных функцией:

 

Y = 4.6·G·sin(x/F) + 1.9·M·cos(x+1.8); [-4 < x <4]

Группа параметров G,M,F для построения семейства дана в текстовом файле.

17................................................................

Дан текстовый файл. Построить круговую диаграмму распределения количества слов различной длины в этом тексте. Все слова с длиной более 8 символов считать словами одинаковой длины.

18................................................................

На экране построить семейство кривых (Линия Кассини),заданных функцией: { ^ - здесь: возведение в степень }

(X^2+Y^2)^2-2·A^2(X^2-Y^2)=1-A^4;

Параметр A для построения семейства дан в текстовом файле.

19................................................................

На экране построить семейство кривых (Астроида),заданных функцией: { ^ - здесь: возведение в степень }

X = sin(t)^alpha; Y = cos(t)^alpha;

[ 0 <= t <= 2·pi ]

Группа параметров Alpha для построения семейства дана в текстовом

файле.

 

20................................................................

 

На экране построить семейство кривых(Эпициклоида),заданных

функцией:

 

X = (1+A)·cos(A·t)+R·cos(1+A)·t;

[ 0 <= t <= 2·pi ]

Y = (1+A)·sin(A·t)-R·sin(1+A)·t;

 

Группа параметров A,R для построения семейства дана в текстовом файле.

21................................................................

На экране построить семейство кривых (Гипоциклоида),заданных

функцией:

 

X = A·cos(t)+D·cos(A·t);

[ 0 <= t <= 2·pi ]

Y = A·sin(t)-D·sin(A·t);

 

Группа параметров A,D для построения семейства дана в текстовом файле.

22................................................................

На экране построить семейство кривых, заданных функцией: Y = B·x^3 - A·x + SQRT(x+1) + 3; [-1 < x < 4]

Группа параметров A,B для построения семейства дана в текстовом файле.

47

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

Лабораторная работа № 14.

ТЕМА: ПРЕДСТАВЛЕНИЕ И ОБРАБОТКА ЛИНЕЙНЫХ ДИНАМИЧЕСКИХ СТРУКТУР (продолжение).

Данная лабораторная работа является продолжением лабораторной работы № 11. Требуется создать файл Fin. Выгрузить все его содержимое в линейный список LIn. Выполнить тот же вариант из лабораторной работы № 11, при этом сначала создать результирующий список LOut, а уже после этого информацию из LOut переместить в FOut. Схема данной лабораторной работы такая:

FIn -> LIn -> LOut -> FOut.

При этом все операции необходимо выполнять только со списком Lin, файл Fin нужен только для хранения информации. Разрешается из него только считать информацию в Lin.

48

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

Лабораторная работа № 15.

ТЕМА: Представление и обработка данных, имеющих структуру в виде двоичных деревьев.

ЦЕЛЬ: Изучение методов работы со сложными динамическими структурами ОПРЕДЕЛЕНИЯ: Двоичное (или бинарное) дерево - динамическая структура из статических элементов, каждый из которых кроме данных содержит не более двух ссылок на последующие поддеревья. Более строгое определение: деревом называется произвольный неориентированный связный граф без циклов.1[1] Каждый элемент дерева (вершина) состоит из полей ссылок на последующие поддеревья, а также информационных полей.

На деревьях, как структуре данных, определены операции добавления элементов, поиска элемента, обхода вершин дерева, удаление элементов, и ряд других, необходимых для работы с данной структурой. Бинарные деревья по способу их формирования можно разделить на:

Деревья поиска.

Деревья поиска с включением.

Сбалансированные деревья.

Требования:

1.Деревья должны быть представлены в виде динамической структуры.

2.ПЕРЕФОРМИРОВАНИЕ дерева должно выполняться только путем изменения ссылок на элементы без создания нового дерева.

3.Операции с деревьями выполняются только с помощью процедур и функций, ориентированных на выполнение определенных действий над элементами дерева.

4.Данные получают из текстового файла, дополнительные параметры могут вводиться либо с клавиатуры в диалоговом режиме, либо из раздела констант.

5.Программа в процессе работы должна вывести на экран в текстовом или графическом виде содержимое исходных данных, вид дерева до и после обработки и содержимое полученных данных, а также значения тех результатов, которые предусмотрены заданием.

6.По окончании работы программы память должна быть освобождена от динамических структур.

49

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

7.Программа должна обнаруживать и сообщать об ошибках, связанных с выполнением файловых операций. Например: ввод имени файла данных, отсутствующего в текущем каталоге, или просмотр входного файла, в который еще не введены данные и т.д.

8.Для отчета необходимо представить текст программы, а также продемонстрировать ее работу.

ВАРИАНТЫ ЗАДАНИЙ.

1.Дан текстовый файл с изображениями целых чисел, из которых построить сбалансированное дерево. Определить количество элементов в левом поддереве той вершины, которая является максимальным элементом в дереве, которую отметить цветом.

2.Дан текстовый файл с изображением целых чисел. Построить дерево поиска, не включая в него повторно встреченные элементы. Определить количество элементов на самом нижнем уровне дерева, отметив их цветом.

3.Дан текстовый файл с изображением целых чисел. Построить дерево поиска. Определить уровень дерева, на котором все элементы являются четными, отметив их цветом. Найти их сумму и количество листьев на этом уровне.

4.Дан текстовый файл с изображением целых чисел. Построить сбалансированное дерево, не включая в него повторно встреченные элементы. Определить количество элементов-листьев в левом поддереве вершины, которая имеет минимальное значение, отметив её цветом.

5.Дан текстовый файл. Построить дерево поиска из символов этого файла. Определить пути в дереве, имеющие только согласные буквы. Все эти вершины отметить цветом.

6.Дан текстовый файл с изображением целых чисел. Построить дерево поиска, не включая в него повторно встреченные элементы. Определить количество элементов на самом нижнем уровне дерева, отметив их цветом.

7.Дан текстовый файл с изображением целых чисел. Построить сбалансированное дерево. Найти путь, на котором сумма элементов максимальна. Если на этом пути находится максимальный элемент дерева, то его выделить дру-

50

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

гим цветом, чем путь, иначе и максимальный элемент, и путь выделить одним цветом. Путь вывести на экран.

8.Дан текстовый файл с изображением целых чисел. Построить сбалансированное дерево, не включая в него повторно встреченные элементы. Определить путь до листа, имеющего максимальное значение в дереве. Найти сумму нагрузок на этом пути. Путь отметить цветом в дереве.

9.Дан текстовый файл. Построить сбалансированное дерево из символов этого файла. Определить максимальную и минимальную глубину вершин, на которых находятся символы букв, цифр и знаков. Все эти вершины отметить цветом. Вывести символы на экран в префиксном порядке.

10.Дан текстовый файл с изображением целых чисел. Построить дерево поиска, не включая в него повторно встреченные элементы. Удалить из дерева все листья, содержащие простые числа, кроме листьев, находящихся на самом нижнем уровне, которые следует отметить цветом.

11.Дан текстовый файл из слов, разделенных пробелом. В файле только латинские малые буквы, цифры и пробел. Определить наиболее длинный путь в дереве из слов одинакового размера. Этот путь отметить цветом на изображении дерева.

12.Дан текстовый файл с изображением целых чисел. Построить дерево поиска, не включая в него повторно встреченные элементы. В выходной файл вывести сначала корень дерева, затем все числа первого уровня, затем второго, и т.д. Отметить цветом элементы уровня, который содержит вершину с максимальным значением.

13.Дан текстовый файл из слов, разделенных пробелом. В файле только латинские малые буквы, цифры и пробел. Построить частотный словарь слов на основе дерева поиска с включением. Вывести данные словаря по убыванию количества вхождений слов. Вершины, содержащие слова без гласных букв, отметить цветом.

14.Дан текстовый файл с изображением целых чисел. Переписать числа в список Lst1. Найти в списке самую длинную неубывающую последовательность и построить из её элементов сбалансированное дерево. Отметить цветом самый глубокий нечетный элемент.

51

Федеральное агентство по образованию

Форма

 

Ульяновский государственный университет

 

 

 

 

 

 

«Информатика»

 

 

 

 

 

15.Дан текстовый файл с изображением целых чисел, которые переписать в список Lst1. Оставить в списке только буквы, из которых составить дерево поиска с включением, отметив цветом наиболее часто встречающиеся буквы (их может быть несколько).

16.Дан текстовый файл с изображением целых чисел, которые переписать в стек St1. Используя стек St2, выбрать только нечетные положительные числа и построить из них сбалансированное дерево. Найти вершину с простым числом, находящуюся наиболее глубоко, отметив её цветом.

17.Дан текстовый файл с изображением целых чисел. Построить сбалансированное дерево, не включая в него повторно встреченные элементы. Напечатать, начиная с коpня деpева, все пути по веpшинам до листьев, котоpые обpазуют целые числа. Вершины, расположенные на этих путях, отметить цветом.

18.Дан текстовый файл с набором символов, которые следует переписать в стек St1. Затем удалить все знаки < . , + - * / ‘пробел’>, из оставшихся символов построить сбалансированное дерево. Найти вершину с цифрой, находящуюся наиболее глубоко, отметив её цветом.

19.Дан текстовый файл с изображением целых чисел, которые переписать в очередь Qu1. Используя очередь Qu2, выбрать только нечетные положительные числа и построить из них сбалансированное дерево. Цветом выделить то поддерево, у которого сумма нагрузок больше.

20.Дан текстовый файл с изображением целых чисел. Построить дерево поиска, не включая в него повторно встреченные элементы. Определить уровень, на котором находится наибольшее количество вершин-листьев. Вершины этого уровня отметить цветом.

21.Дан текстовый файл с изображением целых чисел. Построить дерево поиска с включением. Определить количество наиболее часто встречающегося элемента в дереве, отметив вершину с этим элементом цветом.

22.Дан текстовый файл с изображением целых чисел. Построить сбалансированное дерево, не включая в него повторно встреченные элементы. Определить количество простых чисел на самом нижнем уровне дерева, отметив их цветом.

52