Индивидуальное задание задание по дисциплине

Объектно-ориентированное программирование

Требования к выполненной работе:

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

— основные подпрограммы оформить в виде отдельного модуля,

— все задачи должны быть решены с использованием структур.

1. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = double}

Определить рекурсивные функции, которые :

а) удаляет из списка L все вхождения элемента Е ;

б) строит L1—копию списка L ;

в) удваивает каждое вхождение элемента Е в список L;

г) оставляет в списке L только первые вхождения одинаковых элементов.

д) выводит результат в отдельный файл.

2. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = double}

Определить функции, которые формируют список L, включив в него по одному разу элементы, которые :

а) входят хотя бы в один из списков L1 и L2;

б) входят одновременно в оба списка L1 и L2;

в) входят в список L1, но не входят в список L2;

г) входят в один из списков L1 и L2, но в то же время не входят в другой из них.

д) выводит список L в отдельный файл.

3. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = double}

Определить функции, которые объединяют два упорядоченных по неубыванию списка L1 и L2 (ТЭ=double) в один упорядоченный по неубыванию список;

а) построив новый список L;

б) меняя соответствующим образом ссылки в L1 и L2 и присвоив полученный список параметру L1.

в) результат записывается в отдельный файл.

4. Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. Список имеет структуру

type

указатель=^цепочка

цепочка=record

буква: string;

связь: указатель;

end;

Определить функцию, которая :

а) в списке L переставляет местами первое и последнее непустые слова, если в L есть хотя бы два непустых слова;

б) печатает текст из первых букв всех непустых слов списка L

в) удаляет из непустых слов списка L их первые буквы ;

г) печатает все непустые слова списка L ;

д) определяет количество слов в непустом списке L, отличных от последнего.

e) выводит результат в отдельный файл.

5. Многочлен P(X)=An*Xn +An-1*Xn-1 + …+A1*X+A0

с целыми коэффициентами можно представить в виде списка (рис. 14 а), причем если Ai =0, то соответствующее звено

Индивидуальное задание задание по дисциплине

не включается в список (на рис. 14 б показано представление многочлена P(X)=52*X40 -3*X8+X).

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

а) логическую функцию ровно(р,q) проверяющую на равенство многочлены р и q;

6) функцию знач(р,х), вычисляющую значение многочлена р в целочисленной точке х

в) процедуру диф(р,q) которая строит многочлен р— производную многочлена q;

г) процедуру слож(р,q,r), которая строит многочлен р— сумму многочленов q и r ;

д) процедуру вывод(р,v), которая печатает многочлен р как многочлен от переменной, однобуквенное имя которой является значением литерного параметра и; (например, для указанного выше многочлена S процедура вывoд(s’,y’) должна напечатать 52y**40-3y**8+y);

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

6. Пусть L обозначает кольцевой (циклический) двунаправленный список с заглавным звеном (рис. 15) (с элементами E типа *char)

Индивидуальное задание задание по дисциплине

Определить функции, которые:

а) определяет, является ли список L пустым;

б) подсчитывает количество элементов списка L, у которых равные «соседи»;

в) определяет, есть ли в списке L хотя бы один элемент, который равен следующему за ним (по кругу) элементу;

г) в списке L переставляет в обратном порядке все элементы между первым и последним вхождениями элемента E, если E входит в L не менее двух раз;

д) выводит результат в отдельный файл.

7. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = char}

Определить функции, которые удаляют :

а) из непустого списка L первый элемент;

б) из списка L второй элемент, если такой есть;

в) из списка L за каждым вхождением элемента Е один элемент, если такой есть и он отличен от Е

г)из непустого списка L последний элемент;

д) выводит результат в отдельный текстовый файл.

8. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = integer}

Непустая последовательность натуральных чисел вводится с экрана, за которой следует 0. Определить функции, которые :

а) выводит числа в обратном порядке ;

б) выводит порядковые номера тех чисел последовательности, которые имеют наибольшую величину ;

в) сортирует числа в порядке их неубывания ;

г) записывает результат в отдельный файл.

9. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = char}

Определить функцию, которая :

а) проверяет на равенство списки L1 и L2 ;

б) определяет, входит ли список L1 в список L2 ;

в) проверяет, есть ли в списке L1 (L2) хотя бы два одинаковых элемента ;

г) переносит в конец непустого списка L1 (L2) его первый элемент ;

д) выводит результат в отдельный файл.

10. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = char}

Определить функции, которые :

а) добавляет в конец списка L1 все элементы списка L2 ;

б) вставляет в список L1 за первым вхождением элемента Е все элементы списка L2, если Е входит в L1 ;

в) переворачивает список L1 (L2), т.е. изменяет ссылки в этом списке так, чтобы его элементы оказались расположенными в обратном порядке;

г) в списке L из каждой группы подряд идущих равных элементов оставляет только один;

д) выводит результат в отдельный файл.

11. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметры Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = double}

Определить рекурсивные функции, которые :

а) определяет, входит ли элемент Е в список L ;

б) подсчитывает число вхождений элемента Е в список L ;

в) находит максимальный элемент непустого списка L ;

г) заменяет в списке L все вхождения E1 на E2;

д) выводит результат в отдельный файл.

12. Одно из возможных представлений “длинного” текста — это разделить его на участки (строки) и создать список (обозначить признак конца текста). Используя данное представление текста, определить функции :

а) число строк (T) для подсчета числа строк в тексте Т;

б) элем(Т,i,j,с), проверяющую, есть ли в тексте Т строка с номером i, и, если есть, присваивающую j-ю литеру этой строки параметру с;

в) перестановка (T,i,j), меняющую местами i-ю и j-ю строки текста Т ;

г) замена(Т, i, j), заменяющую i-ю строку текста Т на копию j-й строки.

д) вывод(Т), печатающую построчно текст Т;

е) ввод(Т), считывающую из входного файла последовательность литер до первой точки и формирующую из них текст Т (последнюю строку, если надо, дополнить пробелами).

13. Одно из возможных представлений “длинного” текста — это разделить его на участки (строки) и создать список (обозначить признак конца текста). Используя данное представление текста, определить функции :

а) добавить(Т,i,j), добавляющую после i-й строки текста Т копию j-й строки;

б) удалить(Т,j), удаляющую j-ю строку из текста Т;

в) поиск(Т, с, i, j), определяющую, входит ли литера с в текст Т, и, если входит, присваивающую параметрам i и / «координаты» первого вхождения этой литеры, i—номер строки, j —номер позиции в этой строке;

г) максимум(T,c) – номер строки с максимальным числом раз вхождения литеры с ;

д) вывод(Т), печатающую построчно текст Т;

е) ввод(Т), считывающую из входного файла последовательность литер до первой точки и формирующую из них текст Т (последнюю строку, если надо, дополнить пробелами).

14. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

type

ТЭ: double;

указ_на_звено=^звено;

звено=record

элем: ТЭ;

след: указ_на_звено;

end;

При этом параметры L, L1 и L2 обозначают списки, а параметры Е, Е1 и Е2—данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство.

Определить функции, которые :

а) определяет, является ли список L пустым;

б) находит среднее арифметическое элементов непустого списка L ;

в) заменяет в списке L все вхождения E1 на Е2;

г) меняет местами первый и последний элементы непустого списка L;

д)вводит данные списка с экрана ;

е) выводит в файл результаты работы.

15. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

type

ТЭ: double;

указ_на_звено=^звено;

звено=record

элем: ТЭ;

след: указ_на_звено;

end;

При этом параметры L, L1 и L2 обозначают списки, а параметры Е, Е1 и Е2—данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство.

Определить функции, которые :

а) определяет, является ли список L пустым ;

б) упорядочивает элементы списка L по алфавиту ;

в) находит коды ASCII последнего и предпоследнего элементов спискаL, содержащего не менее двух элементов.

г) выводит результаты работы в файл.

16. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

type

ТЭ: string[10];

указ_на_звено=^звено;

звено=record

элем: ТЭ;

след: указ_на_звено;

end;

Параметры L, L1 и L2 обозначают списки, а параметры Е, Е1 и Е2—данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство.

Определить функции, подсчитывающие количество слов списка L, которые;

а) начинаются и оканчиваются одной и той же литерой;

б) начинаются с той же литеры, что и следующее слово;

в) совпадают с последним словом;

г) записывает результат в отдельный файл.

17. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

type

ТЭ: string[10];

var

файл: file of ТЭ;

массив: аггау [1..50] оf ТЭ;

Определить функцию, значением которой является список, построенный из элементов :

а)файла f ;

б) массива х (список строить от конца).

18. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметры L, L1 и L2 обозначают списки, а параметры Е, Е1 и Е2—данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство.

Определить функцию, которая

а) удаляет из списка L первое вхождение элемента E, если такое есть;

б)по списку L строит два новых списка: L1 —из положительных элементов и L2—из остальных элементов списка L {ТЭ=double).

в) удаляет из списка L2 первый отрицательный элемент, если такой есть,

г) выводит результат в два разных файла.

19. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметр Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = char}

Описать процедуру, которая

а) вставляет в начало списка L новый элемент Е;

6) в конец списка L новый элемент Е;

в) новый элемент Е после первого элемента непустого списка L;

г) в список L новый элемент E1 за каждым вхождением элементаE ;

д) записывает результаты в текстовый файл.

20. Использовать (линейные) однонаправленные списки без заглавного звена (рис. а) или с заглавным звеном (рис. б) при следующем их описании

Индивидуальное задание задание по дисциплине

Параметр L обозначает список, а параметр Е, Е1 — данные типа ТЭ, к которым применимы операции присваивания и проверки на равенство. {ТЭ = char}

Описать процедуру, которая

а) добавляет в список L новый элемент Е1 перед первым вхождением элемента Е, если Е входит в L;

б) в непустой список L добавляет пару новых элементов Е1 иЕ2перед его последним элементом;

в) в непустой список L, элементы которого упорядочены по не убыванию, новый элемент Е так, чтобы сохранилась упорядоченность ;

г) переносит в начало непустого списка L его последний элемент ;

д) записывает результаты в отдельный текстовый файл.

Microsoft Word — индивидуальное задание


Похожие статьи.

Понравилась статья? Поделиться с друзьями: