Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Министерство образования Российской Федерации



Министерство образования Российской Федерации

Тверской государственный технический университет

Кафедра электронных вычислительных машин

 

 

Обработка двоичных файлов

Методические указания

к лабораторной работе № 8 по дисциплине

«Алгоритмические языки и программирование»

для студентов специальности 230100 (ИВТ)

 

 

Тверь, 2011


Цель работы

Освоить работу с двоичными файлами. Создавать и использовать собственные структуры данных.

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

· Сознание файла путем добавления в него записей, структура которых определяется вариантом задания

· Вывод содержимого файла на экран

· Выполнение индивидуального задания на обработку файла согласно выданному преподавателем варианту задания

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

Содержание отчета

Отчет по работе должен содержать:

1. Цель работы

2. Вариант задания на выполнение работы

3. Алгоритм программы на псевдокоде (для каждой функции отдельно).

4. Исходный текст программы.

5. Результаты выполнения программы для нескольких вариантов исходных данных в виде копии экрана.

Варианты выполнения работы

Варианты 1-10 (Сложность 1)

 

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

 

Вывести на экран следующие данные:

1. Все модели автомобилей, выпущенные не ранее заданного года и имеющие максимальную скорость не меньше заданной.

2. Названия всех фирм, выпускавших автомобили, максимальная скорость которых лежит в указанном диапазоне.

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

4. Среднюю цену всех автомобилей заданной фирмы.

5. Лучшую модель автомобиля по отношению цена/максимальная скорость

 

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

 

Вывести на экран следующие данные:

6. Для заданного названия фирмы и отдела - все фамилии и имена служащих.



7. Для заданной должности – всех служащих, чей стаж работы попадает в заданный интервал.

8. Для заданной фамилии служащего – всех служащих с данной фамилией и названия фирм и отделы, где они работают.

9. Для заданной должности – всех служащих с зарплатой не меньше заданной.

10. Для заданной фирмы – фамилию и должность служащего, имеющего максимальную зарплату.

 

Варианты 11-20 (Сложность 2)

 

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

 

Вывести на экран следующие данные:

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

12. Номера рейсов и пунктов назначения, обслуживаемых самолетами, тип которых совпадает с типом, введенным с клавиатуры (если таких рейсов нет, выдать на экран соответствующее сообщение)

13. Номер рейса и тип самолета, имеющего для заданного пункта назначения максимальное время в пути.

14. Для заданного типа самолета и времени в пути - все номера рейсов и пункты назначения, для которых время в пути превышает заданное.

15. Для заданного типа самолета и пункта назначения – все номера рейсов и их время в пути.

 

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

 

Вывести на экран следующие данные:

16. Названия книг и их годы выпуска для автора, фамилия которого вводится с клавиатуры.

17. Названия книг и фамилии их авторов для издательства, название которого вводится с клавиатуры.

18. Названия книг и фамилии их авторов для заданного издательства, вышедших не позже года, значение которого вводится с клавиатуры.

19. Для заданного издательства определить автора, выпустившего максимальную по количеству страниц книгу.

20. Для заданного года выпуска определить автора и название книги, имевшей наименьший тираж.

 

Варианты 21-30 (Сложность 3)

 

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

 

Вывести на экран следующие данные:

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

· Название пункта назначения поезда

· Номер поезда

· Время в пути

22. Для заданного номера поезда – все прочие поезда, идущие в тот же пункт назначения, что и указанный поезд в виде:

· Номер поезда

· Название пункта отправления

· Название пункта назначения

23. Для заданного пункта назначения – все поезда, идущие в этот пункт и имеющие количество вагонов не меньше заданного в виде:

· Номер поезда

· Название пункта отправления

· Количество вагонов

24. Для заданного номера поезда – все поезда, имеющие тот же пункт отправления и количество вагонов не меньше, чем у заданного в виде:

· Номер поезда

· Название пункта назначения

· Количество вагонов

25. Для заданного номера поезда – все поезда, имеющие время в пути меньше, чем у заданного в виде:

· Номер поезда

· Название пункта отправления

· Название пункта назначения

· Время в пути

 

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

 

Вывести на экран следующие данные:

26. Для заданного названия журнала и года выпуска – все напечатанные в этом журнале статьи в виде:

· Фамилия И.О. автора

· Название статьи

· Номер выпуска

· Номер начальной и конечной страницы

27. Для заданной фамилии автора и названия журнала – все его статьи, напечатанные в этом журнале в виде:

· Название статьи

· Год выпуска

· Номер выпуска

· Номер начальной и конечной страницы

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

29. Для заданного журнала определить автора, напечатавшего больше всего статей за один год.

30. Для заданного года выпуска определить автора, статьи которого имели максимальное суммарное количество страниц

 

Варианты 31-40 (Сложность 4)

 

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

 

Вывести на экран следующие данные:

31. Для заданного типа транспортного средства – все маршруты, которое оно обслуживает в виде:

· Номер маршрута

· Название начальной остановки

· Название конечной остановки

 

32. Для каждого типа транспортного средства – маршрут, имеющий максимальное время движения в виде:

· Тип транспортного средства

· Название начальной остановки

· Название конечной остановки

· Максимальное время движения

 

33. Для каждой конечной остановки – минимальную стоимость проезда до нее в виде:

· Тип транспортного средства

· Название начальной остановки

· Номер маршрута

· Стоимость проезда

 

34. Для каждого типа транспортного средства – количество маршрутов, которые оно обслуживает и суммарное время движения по всем этим маршрутам в виде:

· Тип транспортного средства

· Количество обслуживаемых маршрутов

· Суммарное время движения (часы и минуты)

 

35. Для каждого типа транспортного средства – среднюю стоимость проезда одной остановки в виде:

· Тип транспортного средства

· Среднее количество остановок на маршрутах

· Средняя стоимость проезда по маршруту

· Средняя стоимость проезда одной остановки

 

Создать двоичный файл, содержащий записи следующей структуры для хранения информации о компакт-диске:

 

Вывести на экран следующие данные:

36. Для каждой фирмы-издателя – суммарное количество дисков, выпущенных в различные годы в виде:

· Название фирмы

· Год выпуска

· Количество дисков

37. Для каждого исполнителя – год, когда им было записано наибольшее количество дисков в виде

· Исполнитель

· Год выпуска

· Количество дисков

38. Для каждого исполнителя – диск, на котором было записано минимальное количество дорожек в виде:

· Исполнитель

· Название диска

· Год выпуска

· Количество дорожек

39. Для каждой фирмы-издателя – среднее время звучания одной дорожки на всех записанных этой фирмой дисках в указанный год в виде:

· Фирма

· Общее время звучания

· Общее количество дорожек

· Среднее время звучания

40. Для каждой фирмы-издателя – список исполнителей, записывавших свои диски в этой фирме в виде:

· Фирма

· Исполнитель

· Общее количество дисков

 

Варианты 41-50 (Сложность 5)

 

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

 

Вывести на экран следующие данные:

41. Для каждого типа транспортного средства – маршруты с максимальным и минимальным временем движения в виде:

· Тип транспортного средства

· Номер маршрута с минимальным временем движения

· Минимальное время движения

· Номер маршрута с максимальным временем движения

· Максимальное время движения

42. Для заданного названия остановки – все маршруты, для которых эта остановка является начальной или конечной в виде:

· Номер маршрута

· Тип транспортного средства

· Тип остановки (начальная или конечная)

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

43. Для каждого типа транспортного средства - маршруты с максимальным и минимальным количеством остановок в виде:

· Тип транспортного средства

· Номер маршрута с минимальным количеством остановок

· Минимальное количество остановок

· Номер маршрута с максимальным количеством остановок

· Максимальное количество остановок

44. Для заданного количества остановок найти маршруты каждого вида транспорта, имеющие максимальное и минимальное время движения в виде:

· Тип транспортного средства

· Номер маршрута с минимальным временем движения

· Минимальное время движения

· Номер маршрута с максимальным временем движения

· Максимальное время движения

45. Для каждого вида транспорта найти маршруты с максимальной и минимальной средней продолжительностью пути между остановками в виде:

· Тип транспортного средства

· Номер маршрута с минимальным средним временем

· Минимальное среднее время

· Номер маршрута с максимальным средним временем

· Максимальное среднее время

 

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

 

Вывести на экран следующие данные:

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

· Название конечной остановки

· Максимальный промежуток времени между рейсами

47. Для каждого типа автобуса, обслуживающего данные маршруты, определить максимальное и минимальное время движения от начальной до конечной остановки в виде:

· Тип автобуса

· Минимальное время движения (часы и минуты)

· Максимальное время движения (часы и минуты)

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

· Название начальной остановки маршрута

· Название конечной остановки маршрута

· Тип автобуса

· Срок его службы (лет и месяцев)

49. Для каждой конечной остановки – суммарное количество мест во всех автобусах, которые на эту остановку прибывают в виде:

· Название конечной остановки

· Количество прибывающих автобусов

· Суммарное количество мест

50. Для заданного интервала времени – все типы автобусов, которые отправляются в пределах заданного интервала и суммарное время в пути для каждого типа в виде:

· Тип автобуса

· Количество автобусов данного типа

· Суммарное время в пути

Варианты 51-60 (Сложность 6)

 

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

 

 

 

Вывести на экран следующие данные:

51. Для заданного товара – данные обо всех его поставщиках

52. Для каждого товара, имеющегося в количестве, меньше, чем заданное – найти поставщика, имеющего самый поздний срок заключения договора и выдать все его данные

53. Для заданного поставщика – все поставленные им товары.

54. Для каждого товара – разность дат между заключением договора и поставкой товара на склад.

55. Для каждого поставщика – дату поступления на склад последнего поставленного им товара.

 

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

 

 

 

Вывести на экран следующие данные:

56. Для каждого отдела – данные о сотруднике с наибольшим стажем работы

57. Для каждого отдела – данные о соответствии количества штатных единиц и фактически работающих сотрудников (укомплектован по штату; имеются вакансии – указать, сколько; имеются сверхштатные сотрудники – указать, сколько)

58. Ведомость на получение зарплаты для каждого отдела (фамилии сотрудников упорядочить по алфавиту)

59. Для каждого начальника отдела – найти его однофамильцев, работающих в других отделах.

60. Для каждой должности определить сотрудника с наибольшим стажем и сотрудника с наибольшим окладом.

 

Варианты 61-70 (Сложность 7)

 

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

 

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

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

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

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

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

 

66. …

67. …

68. …

69. …

70. …

 

Варианты 71-80 (Сложность 8)

71. Сортировка двоичного файла (по Д.Кнуту)

72. …

73. …

74. …

75. …

76. …

77. …

78. …

79. …

80. …

 

Варианты 81-90 (Сложность 9)

81. Дан BMP-файл на 256 цветов, содержащий рисунок, использующий два цвета. Поменять эти цвета местами.

82. Дан BMP-файл на 256 цветов, содержащий цветной рисунок. Заменить все цвета градациями серого цвета.

83. Дан BMP-файл на 256 цветов, размера NxN. Нарисовать в нем изображение шахматной доски.

84. Дан BMP-файл на 256 цветов, размера MxN. Повернуть изображение на 90 градусов по часовой стрелке, получив картинку размером NxM.

85. Дан BMP-файл на 256 цветов, размера MxN (N > M). Нарисовать на главной диагонали полосу заданного цвета толщиной N – M пикселов.

86. …

87. …

88. …

89. …

90. …

Варианты 91-100 (Сложность 10)

91. Дано два BMP-файла на 256 цветов. Если размеры одного из них позволяют вписать в него второй, выполнить эту операцию, поместив меньшее изображение по центру большего. Если это невозможно, сообщить об этом.

92. …

 

 

 


Дата добавления: 2015-08-29; просмотров: 63 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
Спасибо, что скачали книгу в бесплатной электронной библиотеке Royallib.ru | Лысенкова С.Н. Когда легко учиться 1 страница

mybiblioteka.su - 2015-2024 год. (0.039 сек.)