5. Абстракция данных. Составные структуры данных
.pdfВариант 14
Время выполнения некоторых программ, которые применяют параллельные алгоритмы
Название |
|
Количество |
|
Время исп. на SGI |
|
Время исп. на SGI |
прграммы |
|
строк кода |
|
Callenge (cек) |
|
Indy (cек) |
|
|
|
|
|
|
|
OCEAN |
|
1917 |
|
8.70 |
|
18.2 |
|
|
|
|
|||
DYFESM |
|
3386 |
|
6.95 |
|
22 |
|
|
|
|
|
|
|
TRFD |
|
417 |
|
1.05 |
|
2.98 |
Примечание: SGI Callenge - ЦП R1000 196 MHz, 1.024 MB RAM SGI Indy - ЦП
MIPS R4600 134 MHz, 64 MB RAM
Вариант 15
Конфигурация програмных средств информационных систем
|
Операционная |
|
СУБД |
|
|
Мин.объем внеш- |
|
|
Мин.объем опера- |
|
Приблизи- |
|
|||||
|
система |
|
|
|
|
ней памяти (MB) |
|
|
тивной памяти (MB |
|
тельная |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
цена ($) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
OS/2 |
|
|
DB2 |
|
|
130 |
|
|
|
|
22 |
|
S |
3343 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
Windows/NT |
|
SQLServer |
|
230 |
|
|
|
|
24 |
V |
|
|
2685 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|||
|
SCO/Unix |
|
Oracle |
|
|
110 |
|
|
|
|
48 |
|
|
|
3745 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
G |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
Molchanova |
|
|
|
|
|
|||||||
|
Примечание: принималась цена лицензии на 8 пользователей |
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Bursa |
A |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
Часть 4. Указатели и массивы |
|
|
|
|
||||||||
1. |
Вариант задачи выбрать из таблиц 5.1, 5.4 в соотвествии с номером своей фамилии в |
||||||||||||||||
журнале академической группы. |
|
|
|
|
|
|
|
|
|
|
|||||||
2. |
Составить и документировать алгоритм решения задачи. |
|
|
|
|
||||||||||||
3. |
В соответствии с составленным алгоритмом решения задачи написать, выполнить и |
документировать консольную программу Программа должна правильно функционировать при любых значениях исходных данных.
4. Корректность работы программы проверить тестированием, применив тесты «белый ящик» и «черный ящик».
5. В программе обязательно использовать указатели и массивы.
Задача 1
Выполнить задание с такими дополнительными условиями:
–размер массива определяется в начале выполнения программы как случайное число
вдиапазоне [50; 200];
–в тексте программы запрещается применять операцию индексации.
76
Задача 2
1.Сформировать динамический одномерный массив, заполнить его случайными числами и вывести на экран монитора.
2.Выполнить указанное в варианте задание и вывести полученный массив на экран мо-
нитора.
3.Сформировать динамический двумерный массив, заполнить его случайными числами
ивывести на экран монитора.
4.Выполнить указанное в варианте задание и вывести полученный массив на экран мо-
нитора.
|
|
|
|
|
|
|
|
Таблица 5.4 |
Вари- |
Одномерный массив |
|
|
Двумерный массив |
||||
ант |
|
|
|
|
|
|
|
|
1 |
Удалить первый четный элемент |
Добавить строку с заданным номером |
||||||
2 |
Удалить первый отрицательный |
|
Добавить столбец с заданным номером |
|||||
|
элемент |
|
|
|
|
|
|
|
3 |
Удалить элемент с заданным клю- |
Добавить строку в конец матрицы |
||||||
|
чом (значением) |
|
|
|
|
|
||
4 |
Удалить элемент равный среднему |
Добавить столбец в конец матрицы |
||||||
|
|
|
|
|
|
|
|
. |
|
арифметическому элементов мас- |
|
|
S |
||||
|
сива |
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
||
|
|
|
|
|
|
|
||
5 |
Удалить элемент с заданным номе- |
Добавить строку в начало матрицы |
||||||
|
ром |
|
|
|
. |
V |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
G |
|
|
|
6 |
Удалить N элементов, начиная с но- |
Добавить столбец в начало матрицы |
||||||
|
мера K |
|
Molchanova |
|
|
|||
|
|
|
|
. |
|
|
|
|
7 |
Удалить все четные элементы |
|
Добавить К строк в конец матрицы |
|||||
|
|
|
|
A |
|
|
|
|
8 |
Удалить все элементы с четными |
Добавить К столбцов в конец матрицы |
||||||
|
индексами |
|
|
|
|
|
|
|
|
массива |
Bursa |
|
|
до строки К2 |
|
||
9 |
Удалить все нечетные элементы |
|
Добавить К строк в начало матрицы |
|||||
10 |
Удалить все элементы с нечетными |
Добавить К столбцов в начало матрицы |
||||||
|
индексами |
|
|
|
|
|
|
|
11 |
Добавить элемент в начало массива |
Удалить строку с номером К |
||||||
12 |
Добавить элемент в конец массива |
Удалить столбец с номером К |
||||||
13 |
Добавить К элементов в начало |
|
Удалить строки, начиная со строки К1 и |
|||||
|
|
|
||||||
14 |
Добавить К элементов в конец мас- |
Удалить столбцы, начиная со столбца К1 |
||||||
|
сива |
|
|
|
|
и до столбца К2 |
|
|
15 |
Добавить К элементов, начиная с |
Удалить все четные строки |
||||||
|
номера N |
|
|
|
|
|
|
77
Часть 5. Указатели и массивы
1. Вариант задания выбрать из таблицы 3.3 лабораторной работы №3 в соотвествии с номером своей фамилии в журнале академической группы.
2. Составить и документировать алгоритм решения задачи.
3. В соответствии с составленным алгоритмом решения задачи написать, выполнить и документировать консольную программу Программа должна правильно функционировать
при любых значениях исходных данных. |
|
|
|
|
|
4. |
Корректность работы программы проверить тестированием, применив тесты «белый |
||||
|
|
|
|
|
. |
ящик» и «черный ящик». |
|
|
|
S |
|
|
|
|
|
|
|
5. |
В программе запрещается пользоваться стандартными функциями библиотек языка C; |
||||
использование же указателей на элементы строк обязательно. |
. |
||||
|
|
. |
V |
|
|
|
|
G |
|
|
|
|
BursaMolchanova |
|
|
|
|
|
. |
|
|
|
|
|
A |
|
|
|
|
Часть 6. Потоки и файлы
1.Вариант задания выбрать в соотвествии с номером своей фамилии в журнале академической группы.
2.Составить и документировать алгоритм решения задачи.
3.В соответствии с составленным алгоритмом решения задачи написать, выполнить и документировать консольную программу Программа должна правильно функционировать при любых значениях исходных данных.
4.Корректность работы программы проверить тестированием, применив тесты «белый ящик» и «черный ящик».
5.В программе использовать функции стандартной библиотеки ввода-вывода языка С.
Задача 1
Составить программу, которая читает текстовый файл и выполняет его преобразование, обусловленное Вашим вариантом индивидуального задания.
Примечания:
1.Имя файла, который подлежит обработке, должно быть параметром программы.
2.Файл должен содержать не менее 10…15 строк текста.
3.Допускается ограничить максимальную длину строки в тексте 80 символами.
78
4.Допускается (если в индивидуальном задании не оговорено иное) считать, что слова разделяются пробелами, а знаки препинания рассматривать как буквы.
5.Программу следует разрабатывать, исходя из предположения, что весь текст из файла не может быть размещен в оперативной памяти.
6.Допускается создавать при выполнении программы временные файлы, которые, однако, не должны сохранятся после окончания выполнения программы.
Вариант 1
В каждой строке удалить лишние пробелы между словами и, сохраняя первоначальную длину строки, разместить текст по центру строки.
Вариант 2
В каждой строке заменить последовательность слов "один", "два", "три" на "1-2-3".
Вариант 3
В каждой строке вставить после знаков препинания пробелы, если их там нет.
Вариант 4 |
|
|
|
|
. |
В каждой строке поменять местами соседние слова. |
|
||||
|
S |
||||
|
|
|
|
|
|
Вариант 5 |
|
|
|
. |
|
|
|
. |
V |
|
|
Разбить каждую строку на две строки приблизительно одного размера, не разрывая |
|||||
слова. |
|
G |
|
|
|
|
|
|
|
|
|
В каждой строке удалитьMolchanovaпары слов, в которых одно слово является зеркальным отоб- |
|||||
Вариант 6 |
A |
|
|
|
|
В каждой строке все слова, длина которых. |
превышает среднюю длину слов в строке, |
||||
сократить до средней длины. |
|
|
|
|
|
Bursa |
|
|
|
|
|
Вариант 7
Разместить текст в несколько столбцов, так чтоб n-е слово i-ой строки размещалось под n-им словом i+1-ой строки.
Вариант 8
Скопировать второе слово каждой строки в начало следующей строки.
Вариант 9
ражением второго.
Вариант 10
В каждой строке удалить лишние пробелы между словами и разместить их по левому краю, сохраняя первоначальную длину строки.
Вариант 11
Удалить из текста все слова, состоящие из одной буквы.
Вариант 12
Удалить из текста все слова с четными номерами (сквозная нумерация слов по всему тексту).
Вариант 13
В каждом слове все буквы разместить в алфавитном порядке.
79
Вариант 14
В каждой строке удалить те слова, в которых первые три буквы совпадают с начальными буквами последнего слова строки.
Вариант 15
В каждом слове строки изменить порядок букв на противоположный.
Задача 2
Выполнить задание 3 с условием, что данные, которые обрабатываются программой, находятся в файле, а в оперативной памяти одновременно расположен только одна запись файла.
Задача 3
Разработать программу, которая вводит фактические данные из таблицы, представленной заданием 3, и выводит на экран таблицу, подобную той, которая находится в индивиду-
альном задании (включая заголовок и примечания). |
|
. |
|||||
|
|
|
|
|
|
|
S |
|
|
|
|
|
|
. |
|
|
|
|
|
|
. |
V |
|
|
|
|
|
|
G |
|
|
1. |
|
Molchanova |
|
|
|||
Дайте определения: массива, элемента массива, структуры, объединения, множества. |
|||||||
2. |
Как индексируются массивы? |
. |
|
|
|||
|
|
|
A |
|
|
|
|
3. |
Перечислите разновидности массивов. |
|
|
||||
4. |
Как описаются массивы различных размерностей? |
|
|
||||
|
|
Bursa |
|
|
|
|
|
5. |
Как инициализируются элементы массива? |
|
|
||||
6. |
Что называется указателем? |
|
|
|
|
|
|
7. |
Как описываются указатели на данные разных типов? |
|
|||||
8. |
Что называется типизированным указателем? |
|
|
||||
9. |
Что такое «ступенчатый массив»? |
|
|
|
|||
10. |
Как можно выделить память под хранение массива динамически? Как ее освобо- |
||||||
дить? |
|
|
|
|
|
|
|
11. |
Что называется структурой? |
|
|
|
|
|
|
12. |
Каковы правила объявления структур? |
|
|
||||
13. |
Как объявить массив структур? |
|
|
|
|
||
14. |
Как объявить структуру массивов? |
|
|
||||
15. |
Как объявить указатель на структуру? |
|
|
||||
16. |
Что представляет собой структура битовых полей? |
|
|
||||
17. |
Что называется файлом? |
|
|
|
|
|
|
18. |
Какие разновидности файлов, используемые в языке С, Вам известны? |
||||||
19. |
Что такое «файловый указатель»? |
|
|
|
|||
20. |
Перечислите режимы открытия файла? |
|
|
||||
21. |
Как можно создать новый файл средствами С? |
|
|
||||
22. |
Чем файл отличается от потока с точки зрения языка С? |
|
|||||
23. |
Как опросить сотояние потока? |
|
|
|
|
80