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

лабы по ЯВУ

.rtf
Скачиваний:
21
Добавлен:
23.02.2015
Размер:
53.21 Кб
Скачать

Задания к лабораторным работам по курсу "Языки и системы программирования" (Часть 2)

Задание 1. Массивы и строки

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

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

  3. Из заданной квадратной матрицы выбрать столбец, обладающий наибольшей суммой модулей элементов. В этом столбце найти наименьший элемент.

  4. Задается массив вещественных чисел (результаты эксперимента). Рассчитать их среднее арифметическое значение и выборочную дисперсию.

  5. Разработать программу, которая читает текст другой программы, обнаруживает комментарии и распечатывает их.

  6. Разработать программу, которая определяет, является ли данный текст полиндромом, т.е. читается ли он слева направо так же, как и справа налево (например, "А роза упала на лапу Азора").

  7. Разработать программу, которая ищет полиндромы в заданном интервале натуральных чисел. Число является полиндромом, когда оно читается слева направо так же, как и справа налево (например, 232).

  8. Разработать программу для зашифровки и расшифровки текстов методом транслитерации.

  9. Разработать программу, осуществляющую поиск самого короткого и самого длинного слова во вводимом тексте.

  10. Разработать программу форматирования текста с выравниватием его по правой и левой границам.

Задание 2. Структуры(записи) и программирование информационных задач

  1. Разработать программу-справочник по расписанию вылетов самолетов. Для каждого рейса хранятся:

  • Номер рейса.

  • Тип самолета.

  • Пункт назначения.

  • Время вылета.

Предусмотреть возможность поиска данных по каждому из этих полей.

  1. Разработать программу ведения справочника по расписанию поездов и бронированию мест на них.

  2. Разработать программу, ведущую "записную книжку" с номера ми телефонов. Программа должна выполнять следующие операции:

  • запись данных о номере телефона и фамилии;

  • определение номера телефона по фамилии;

  • определение фамилии по номеру телефона.

  1. Разработать программу, обрабатывающую информацию об итогах экзаменационной сессии. Хранятся следующие сведения:

  • фамилия;

  • имя;

  • отчество;

  • номер группы;

  • оценки по 5 предметам.

Программа должна выполнять следующие операции:

  • запись данных;

  • определение фамилий студентов, имеющих задолженность хотя бы по одному предмету;

  • определение процента студентов, сдавших все экзамены на 4 и 5.

  1. Разработать программу, ведущую картотеку книг. Хранятся следующие сведения:

  • фамилия и инициалы автора;

  • название;

  • издательство;

  • год издания;

  • номер библиотечной полки, где хранится данная книга;

Предусмотреть возможность поиска данных по каждому из этих полей.

  1. Разработать программу регистрации кандидатов в депутаты. Для каждого из кандидатов хранятся:

  • Фамилия, имя и отчество.

  • Возраст.

  • Профессия.

  • Наименование партии.

  • Номер избирательного округа.

  • Судимость.

Предусмотреть возможность поиска данных по каждому из этих полей, а также возможность расчета статистических данных по каждой партии:

  • Число поданных заявлений.

  • Средний возраст кандидатов.

  • Наиболее часто встречающаяся профессия.

  • Число кандидатов с криминальныь прошлым.

  1. Разработать программу для регистратуры больницы Для каждого из больных хранятся:

  • Фамилия, имя и отчество.

  • Возраст.

  • Диагноз.

  • Номер палаты.

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

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

  • Данные о кандидате (возраст, рост, вес, интересы).

  • Требования к партнеру (диапазоны возраста, роста, веса, интересов).

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

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

  • Наименование организации.

  • Местоположение.

  • Требуемая квалификация и стаж работы.

  • Требуемый возраст кандидата.

  • Дополнительные требования к кандидату.

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

Клиент вводит информацию о себе и о своих требованиях и получает список подходящих ему рабочих мест.

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

Задание 3. Работа с файлами

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

Задание 4. Динамические структуры данных

  1. Разработать программу сортировки матрицы размерности nxn так, чтобы элементы в каждой строке отсортиррованной матрицы располагались по возрастанию, и ни один элемент в i строке не был бы больше любого элемента в i+1 строке. Сортировку выполнять над одномерным массивом из n2 элементов, который "накладывается" на исходную матрицу.

  1. Разработать программу вычисления значений многочлена

P(x)=a0+a1x+a2x2+…+anxn

в целочисленной точке x. При этом значения коэффициентов a1, a2, …, an вводятся с клавиатуры и динамически размещаются в памяти в форме стека.

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

  2. Разработать программу формирования стека, куда помещается последовательность символов в виде отдельных слов, вводимых с клавиатуры. Затем эти слова выводятся на экран.

  3. Разработать программу, использующую динамическую структуру данных для хранения гениалогического дерева. Каждая вершина дерева должна содержать имя и год рождения.

  4. Разработать программу, определяющую симметричность произвольного текста любой длины, заканчивающегося точкой. Задачу рекомендуется решать с помощью двух стеков. В первый стек помещается весь текст, затем во второй стек переносится его половина так, чтобы последний символ текста находился на дне стека. Затем производится поэлементное сравнение этих стеков.

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

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

  7. Разработать программу формирования, отображения и проверки на корректность блок-схем программ. Информацию о блок-схеме представить в виде двунаправленного списка.

  8. Разработать программу отображения и проверки на корректность файловой системы FAT. Информацию о каждом файле представить в виде двунаправленного списка.