Главная страница
Навигация по странице:

  • Лабораторная работа № 8 Тема «Структуры в С++» Цель работы

  • Варианты заданий 1. Создайте структуру, описывающую точку

  • Прямоугольный _Параллелепипед

  • Конус

  • Прямая

  • Дата

  • Тема «Текстовые и двоичные файлы в С++» Цель работы

  • Лабораторная работа № 10. Тема «Динамические структуры в С++. Текстовые и двоичные файлы» Цель работы

  • Лабораторная работа №11.

  • Программирование линейных вычислительных процессов


    Скачать 0.87 Mb.
    НазваниеПрограммирование линейных вычислительных процессов
    Дата07.06.2022
    Размер0.87 Mb.
    Формат файлаpdf
    Имя файлаraboty_po_S_10891731.pdf
    ТипЛабораторная работа
    #575643
    страница2 из 4
    1   2   3   4
    Тема «Программирование задач линейной алгебры»
    Цель работы : Изучение динамических двумерных массивов в языке С++.
    Программирование основных алгоритмов работы с матрицами – сложение,
    умножение матриц, вычисление определителя матрицы, определение обратной матрицы к заданной, решение систем линейных алгебраических уравнени .
    .
    ++.
    . , , . . .

    22 1
    6. Проверить для матрицы H =Evv
    T
    0

    v
    2(где E – единичная матрица, а v=

    1

    1
    свойство ортогональности: H
    T
    = H
    -1
    1,00 0,42 0,54 0,66 0,42 1,00 0,32 0,44

    7. Дана матрица P=

    0,66 0,44 0,22 1,00

    . Проверить для неё свойство
    0,54 0,32 1,00 0,22
    P
    2
    =P. Вычислить определитель матрицы P.
    23 14.Решив систему уравнений методом Гаусса, вычислить H=E-XX
    T
    8,2 x
    1
    −3,2 x
    2 14,2 x
    3 14,8 x
    4
    =−8,4 5,6 x
    1
    −12x
    2 15 x
    3
    −6,4 x
    4
    =4,5

    {
    5,7 x
    1 3,6 x
    2
    −12,4 x
    3
    −2,3 x
    4
    =3,3 6,8 x
    1 13,2 x
    2
    −6,3 x
    3
    −8,7 x
    4
    =14,3 3 6 5 2 3
    4 6 3 5 0
    15.Решить СЛАУ AA
    T
    X=Y, где A =

    2 2 3 6

    Y =

    2 3 2 6 3

    4

    24 22.Квадратная матрица A является симметричной, если для нее выполняется свойство A
    T
    =A. Проверить это свойство для матрицы
    1,00 0,42 0,54 0,66 0,42 1,00 0,32 0,44 0,66 0,44 0,22 1,00

    . Вычислить A
    -1
    . Убедится, что AA
    -1
    =E.

    0,54 0,32 1,00 0,22 23.Ортогональная матрица обладает следующими свойствами: модуль определителя ортогональной матрицы равен 1; сумма квадратов элементов любого столбца ортогональной матрицы равна 1;сумма произведений элементов любого столбца
    ортогональной матрицы на соответствующие

    25
    Лабораторная работа № 8
    Тема «Структуры в С++»
    Цель работы : Изучение структур в языке С++.
    Задание. Написать программу на языке С++ решения задачи согласно своему варианту. В программе создать соответствующую заданию структуру,
    можно написать функции, реализующие операции со структурами. В программе можно использовать массив переменных созданного типа структуры.
    Варианты заданий
    1. Создайте структуру, описывающую точку в двумерной системе координат
    (x,y). С помощью этой структуры задайте две точки. Будет ли прямая,
    проходящая через эти точки параллельна оси ординат? Оси абсцисс?
    2. Создайте структуру Дата с элементами День, Месяц, Год. Для N человек с заданной датой рождения вывести сообщение, в какой декаде родился человек, в каком сезоне и в каком веке.
    3. Создайте структуру Прямоугольный_Параллелепипед с элементами – a и
    b – стороны прямоугольника-основания, h – высота параллелепипеда.
    Найдите, у какого из N заданных параллелепипедов объем наименьший?
    4. Создайте структуру Время с элементами Часы, Минуты. Реализовать следующую задачу - у прибора зафиксировано время начала работы и время завершения работы в текущий день. Определить общее время работы прибора за неделю.
    5. Создайте структуру, описывающую точку в трехмерной системе координат
    (x, y, z). Найдите расстояние между двумя точками A(x
    1
    ,y
    1
    ,z
    1
    ) и B (x
    1
    ,y
    1
    ,z
    1
    ).
    6. Создайте структуру Треугольник с тремя элементами a, b, c – длины 3-х сторон. Найдите, у какого из трех заданных треугольников площадь наибольшая?

    7. Создайте структуру Комплексное_Число с элементами x - действительная и
    y - мнимая часть. Выполнить операцию с тремя комплексными числами a, b,
    c Q=a⋅bc c
    2
    (можно написать функции, реализующие операции вычитания и умножения комплексных чисел).
    8. Создайте структуру Конус с элементами – r – основание круга-основания, h
    – высота конуса. Определить для N заданных конусов объем и площадь поверхности.
    9. Создайте структуру Прямая с элементами x1, y1, x2, y2 – координаты двух точек, через которые проходит прямая. Для К заданных прямых вывести уравнение прямых в виде y=ax+b.
    10.Создайте структуру Комплексное Число с элементами x - действительная и
    y - мнимая часть. Выполнить операцию с тремя комплексными числами a,
    26
    b, c Q=a b
    2
    b a (можно написать функции, реализующие операции сложения и умножения комплексных чисел).
    11.Создайте структуру Время с элементами Часы, Минуты. Известно время продолжительности каждого из N этапов процесса. Определить общее время процесса и минимальное время этапа.
    12.Создайте структуру, описывающую точку в двумерной системе координат
    (x,y). С помощью этой структуры для N точек вывести сообщение, в каком координатном углу расположена точка.
    13.Создайте структуру Парабола с элементами a, b, c – коэффициенты уравнения y=ax
    2
    +bx+c. Определить для M заданных парабол k – количество парабол, имеющих минимум, и если такие есть, найти, у какой из них минимум функции наибольший, т. е парабола расположена выше остальных.
    14.Создайте структуру Комплексное Число с элементами x - действительная и
    y - мнимая часть. Выполнить операцию с тремя комплексными числами a, b,
    c Z=a
    2

    b c cb (можно написать функции, реализующие операции сложения, вычитания и умножения комплексных чисел)
    15.Создайте структуру Парабола с элементами a, b, c – коэффициенты уравнения y=ax
    2
    +bx+c. Определить для N заданных парабол точки пересечения с осью X.
    16.Создайте структуру Дробь с элементами a – числитель, b – знаменатель.
    Даны две дроби. Реализуйте с этими дробями арифметические действия:
    умножение и деление (можно написать функции, реализующие эти действия).
    17.Создайте структуру Вектор с элементами x, y, z – декартовые координаты.
    Определить для M заданных векторов длину каждого вектора и найти номер самого длинного вектора.

    18.Создайте структуру Окружность с элементами x
    0
    , y
    0
    – координаты центра, R
    – радиус. Для N окружностей вычислить длину каждой окружности и определить, пресекаются ли окружности с осями OX и OY.
    19.Создайте структуру Прямая с элементами a, b – коэффициенты уравнения y=ax+b. Для M заданных прямых определить k1 – количество прямых,
    параллельных оси ОХ, и k2 – количество прямых, параллельных оси ОY.
    20.Создайте структуру Дробь с элементами a – числитель, b – знаменатель.
    Даны две дроби. Реализуйте с этими дробями арифметические действия:
    сложение и вычитание (можно написать функции, реализующие эти действия).
    21.Создайте структуру Прямая с элементами a, b – коэффициенты уравнения y=ax+b и структуру Точка с элементами x, y – координаты точки. Дана
    27
    одна прямая и M точек, определить количество точек, лежащих на заданной прямой.
    22.Создайте структуру Ромб с элементами d1, d2 – диагонали ромба. Для К
    заданных ромбов определить k1 – количество квадратов и найти ромб с минимальной площадью.
    23.Создайте структуру Треугольник с тремя элементами a, b, c – длины 3-х сторон. Для N заданных треугольников найти k1 – количество равносторонних треугольников и k2 – количество прямоугольных треугольников.
    24.Создайте структуру Комплексное Число с элементами x - действительная и
    y - мнимая часть. Для N заданных комплексных чисел найти числа, у которых модуль наибольший и наименьший.
    25.Создайте структуру Параллелограмм с элементами a, b – стороны параллелограмма и α - угол между сторонами. Для К заданных фигур определить k1 – количество квадратов и k2 – количество прямоугольников.
    26. Создайте структуру Дата с элементами День, Месяц, Год. Для N человек с заданной датой рождения найти самого младшего и самого старшего человека.
    Лабораторная работа № 9
    Тема «Текстовые и двоичные файлы в С++»
    Цель работы : Программирование в С++ с использованием файлов.
    Изучение возможностей работы с текстовыми и двоичными файлами (чтение из файла, запись в файл) .
    Задание. Во всех заданиях составить две программы. Первая программа должна формировать двоичный файл. Вторая программа должна считать данные
    из двоичного файла, выполнить соответствующие вычисления и записать их результаты в текстовый файл.
    Варианты заданий
    1. Создать двоичный файл, куда записать n целых чисел. Из исходного файла сформировать массивы четных и нечетных чисел. Определить наибольший четный компонент файла и наименьший нечетный.
    2. Создать двоичный файл, куда записать n целых чисел. На основе исходного файла создать массив удвоенных нечетных чисел. Упорядочить его по возрастанию элементов.
    3. Создать двоичный файл, куда записать n целых чисел. Сформировать массив положительных чисел, делящихся на пять без остатка, используя элементы исходного файла. Упорядочить массив по убыванию элементов.
    28 4. Создать двоичный файл, куда записать n вещественных чисел. Из компонентов исходного файла сформировать массивы положительных и отрицательных простых чисел. Вычислить количество нулевых компонентов файла.
    5. Создать двоичный файл, куда записать n целых чисел. Из файла создать массив, элементы которого не являются простыми числами и расположены до минимального элемента.
    6. Создать двоичный файл, куда записать n целых чисел. Из файла целых чисел сформировать массив, записав в него только ненулевые компоненты,
    находящиеся после максимального элемента.
    7. Создать двоичный файл, куда записать n вещественных чисел. Сделать массив из элементов исходного файла, внеся в него числа, превосходящие среднее значение среди положительных значений файла.
    8. Создать двоичный файл, куда записать n целых чисел. Из исходного файла сформировать массив, записав в него числа, расположенные в файле до минимального элемента и после максимального.
    9. Создать двоичный файл, куда записать n целых чисел. Массив создать из исходного файла. Внести в него числа, расположенные в файле между минимальным и максимальным элементами.
    10.Создать двоичный файл, куда записать n целых чисел. Из исходного файла сформировать массив, в котором вначале расположить четные, а затем нечетные числа. Определить номера наибольшего нечетного и наименьшего четного компонентов.
    11.Создать двоичный файл, куда записать n целых чисел. В файле поменять местами максимальное среди отрицательных и наибольшее среди простых.
    12.Создать двоичный файл, куда записать n целых чисел. Из файла переписать все простые большие среднего арифметические в новый файл. 13.Создать двоичный файл, куда записать n целых чисел. Найти среднее арифметическое среди простых чисел, расположенных после минимального значения.

    14.Создать двоичный файл, куда записать n целых чисел. Поменять Местами первое совершенное и последнее отрицательное число в файле. 15.Создать двоичный файл, куда записать n целых чисел. Все простые числа из исходного файла записать в массив, котрый упорядочить по убыванию. 16.Создать двоичный файл, куда записать n целых чисел. Последнюю группу совершенных чисел из исходного файла переписать в текстовый файл.
    17.Создать двоичный файл, куда записать n целых чисел. Найти в нем группу положительных элементов наибольшей длины.
    18.Создать двоичный файл, куда записать n целых чисел. Из исходного файла сформировать массивы простых и совершенных чисел. Определить наибольшее простое число в файле и наименьшее совершенное.
    19.Создать двоичный файл, куда записать n целых чисел. Из файла создать массив, элементы которого являются простыми числами и расположены после максимального значения файла.
    29 20.Создать двоичный файл, куда записать n целых чисел. Из файла целых чисел сформировать массив, записав в него только кратные 3 значения,
    находящиеся до минимального элемента файла.
    21.Создать двоичный файл, куда записать n вещественных чисел. Сделать массив из элементов исходного файла, внеся в него числа, превосходящие среднее значение среди четных значений файла.
    22.Создать двоичный файл, куда записать n вещественных чисел. Поменять местами последнее простое число в файле с наименьшим совершенным.
    23.Создать двоичный файл, куда записать n вещественных чисел. Найти сумму последней группы отрицательных элементов.
    24.Создать двоичный файл, куда записать n целых чисел. Найти произведение первой группы, состоящей из простых чисел.
    25.Создать двоичный файл, куда записать n целых чисел. Найти разность между суммой простых чисел, находящихся в файле и максимальным значением файла.
    26.Создать двоичный файл, куда записать n целых чисел. Найти разность между суммой четных чисел и произведением нечетных чисел, находящихся в файле.
    Лабораторная работа № 10.
    Тема «Динамические структуры в С++. Текстовые и двоичные файлы»
    Цель работы : Знакомство с динамическими структурами в С++. Работа с текстовыми и двоичными файлами.
    Задание:
    В программах необходимо использовать только динамические структуры.
    Согласно своему варианту выполнить следующие действия:
    1. С помощью текстового редактора создать текстовый документ, в который занести исходную информацию. Рекомендуется вначале занести количество
    записей, а затем последовательно все записи, причем тестовые поля вводить в отдельной строке, а числовые – можно в отдельной строке или в одной через пробел или разделитель табуляцию.
    Например, содержимое файла, который будет включать 7 записей –
    фамилия, группа, 5 оценок :
    7
    Иванов
    Ф01-а
    5 4 5 3 5
    Петров
    УА01-б
    5 4 5 3 5 2. Написать первую программу, которая считывает информацию из созданного текстового файла и записывает ее в двоичный файл
    30 3. Написать вторую программу, которая считывает информацию из двоичного файла, реализует поставленную задачу. После повторного чтения двоичного файла результат работы выводится в результирующий текстовый файл.
    Все текстовые и двоичный файлы должны располагаться или в личной папке или в папке проекта.
    Варианты заданий
    1.
    Создать двоичный файл с информацией о перенесенных инфекционных заболеваниях учащимися средней школы (табл. 3.1).
    Таблица 3.1 Статистика заболеваемости по школе
    Болезнь
    Количество больных
    Январь
    Февраль
    Март
    Апрель
    Май
    Июнь
    Грипп
    120 132 97 54 12 3
    Добавить в файл поле «Средняя заболеваемость за полугодие». Упорядочить информацию в файле в порядке возрастания средней заболеваемости.
    2.
    Создать двоичный файл с информацией о перенесенных инфекционных заболеваниях учащимися средней школы (см. табл. 3.1). Добавить в файл поле «Минимальная заболеваемость за полугодие». Упорядочить файл в порядке возрастания заболеваемости в январе.
    3.
    Создать двоичный файл с информацией, приведенной в табл. 3.2. Добавить поле «Средний прирост населения». Упорядочить информацию, расположив названия областных центров в алфавитном порядке.

    4.
    Создать двоичный файл с информацией, приведенной в табл. 3.3. Добавить поля «2001», «2002», … , «2006». Упорядочить информацию, расположив названия областных центров в порядке убывания среднего прироста населения.
    Таблица 3.2. Прирост населения в крупных городах СНГ
    Город
    Прирост населения, в тыс. чел.
    1996 1997 1998 1999 2000
    Москва
    50 54 60 49 63
    Донецк
    -14 13
    -10
    -8
    -5 5.
    Создать двоичный файл с информацией об успеваемости студентов некоторого факультета за все время обучения (табл. 3.3).
    31
    Таблица 3.3 Средняя успеваемость
    ФИО
    студента
    Успеваемость (средний балл)
    1 семестр
    2
    семестр
    3
    семестр
    4 семестр
    10
    семестр
    Иванов
    5 4,8 3,7 4,5 4
    Добавить в файл поле «Средняя успеваемость». Удалить из файла информацию о студентах с средним баллом менее 3.5.
    6.
    Создать двоичный файл с информацией об успеваемости студентов некоторого факультета за все время обучения (см. табл. 3.3). Переписать информацию в другой файл, расположив фамилии в алфавитном порядке и добавив поле «Средняя успеваемость».
    7.
    Создать двоичный файл с информацией, приведенной в табл. 3.4.
    Таблица 3.4 Ссуды, выданные банками
    Название банка
    Выданные ссуды, тыс. руб.
    1999 2000 2001 2002 2003

    Гамма:Бан к
    20 35 56 70 120
    Добавить в файл поле «Общая сумма ссуд, выданных каждым банком»,
    упорядочить информацию в файле в алфавитном порядке названий банков.
    8.
    Создать двоичный файл с информацией, приведенной в табл. 3.4. Переписать информацию в другой двоичный файл, исключив информацию о банках с общей суммой ссуд менее 100 тыс. Упорядочить информацию в новом файле, расположив банки в алфавитном порядке.
    9.
    Создать двоичный файл с информацией о продаже путевок некоторой туристической фирмой (табл. 3.5). Добавить поле «Продано путевок на сумму». Вывести на экран информацию о странах, в которые продано больше всего путевок.
    Таблица 3.5. Продажа путевок
    Страна
    Цена путевк и,
    долл.
    Количество проданных путевок
    Апрель
    Май
    Июнь
    Июль
    Август
    Сентябр ь
    Греция
    546 75 120 150 158 160 130 10.
    Создать двоичный файл с информацией о продаже путевок некоторой туристической фирмой (см. табл. 3.5). Добавить поле «Среднее количество проданных путевок». Упорядочить файл в порядке убывания информации в поле «Продано путевок на сумму».
    32 11.
    Известна информация о каждом клиенте сберкассы:

    номер сберкнижки;

    фамилия, инициалы;

    год рождения;

    сумма вклада;

    приход;

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

    12.
    Имеется двоичный файл с информацией из табл. 3.6.
    Таблица 3.6. Добыча угля
    Номер бригады
    Цена за тонну
    Добыча угля в смену, т
    Понедельник Вторник
    Среда
    Четверг
    Пятница
    1 198 50 40,5 36,2 48 33,5
    Добавить в файл поле «Итого»1. Вывести на экран информацию о трех передовиках.
    13.
    Имеется двоичный файл, с информацией из табл. 3.6. Добавить в файл поле «НА СУММУ». Удалить из файла записи с наименьшей добычей.
    14.
    Известна информация о сотрудниках некоторого предприятия:

    фамилия, инициалы;

    год рождения;

    должность;

    стаж;

    оклад.
    Сформировать двоичный файл, записав в него всю известную информацию о каждом сотруднике. Добавить в файл поле «Зарплата», плюсуя 10% к окладу,
    если стаж более 10 лет, и 15% – если более 20.
    15.
    Известна информация о сотрудниках некоторого предприятия:

    фамилия, инициалы;

    год рождения;

    должность;

    стаж;

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

    фамилия, инициалы;

    год рождения;

    должность;

    пол.
    Сформировать двоичный файл, записав в него всю известную информацию о каждом сотруднике. Вывести информацию о количестве пенсионеров – женщин старше 55 лет и мужчин старше 60 лет. Если количество превышает 10 человек,
    удалить всех пенсионеров из файла.

    17.
    О сотрудниках некоторого предприятия известно следующее:

    фамилия, инициалы;

    год рождения;

    должность;

    пол.
    Сформировать двоичный файл, записав в него всю известную информацию о каждом сотруднике. Удалить информацию об инженерахпенсионерах (женщины старше 55 лет и мужчины старше 60 лет). Если количество превышает 10 человек,
    удалить всех пенсионеров из файла.
    18.
    О сотрудниках некоторого НИИ известна следующая информация:

    фамилия, инициалы;

    год рождения;

    ученая степень.
    Сформировать двоичный файл, записав туда всю известную информацию о каждом сотруднике. Вывести информацию о количестве молодых ученых (моложе
    35 лет), имеющих ученую степень. Удалить из файла всех сотрудников старше 40
    лет без ученой степени.
    19.
    Известна информация о сотрудниках некоторого предприятия:

    фамилия, инициалы;

    должность;

    оклад.
    Сформировать двоичный файл, записав туда всю известную информацию о каждом сотруднике. Сформировать поле «Подоходный налог», учитывая, что он составляет 13% от оклада и поле «К выплате». Определить количество сотрудников с минимальной зарплатой. Отсортировать файл по полю
    «Должность».
    20.
    Известна информация о сотрудниках некоторого предприятия:

    фамилия;

    инициалы;

    должность;

    название отдела;

    оклад.
    Сформировать двоичный файл, записав туда всю известную информацию о каждом сотруднике. Сформировать поле «К выплате», учитывая, что подоходный
    34
    налог составляет 13% от зарплаты. Определить количество сотрудников с максимальной зарплатой. Отсортировать файл по полю «Название отдела».
    21.
    Ведомость о закупках чая (табл. 3.7) хранится в двоичном файле.
    Таблица 3.7. акупка чая
    Тип чая
    Форма упаковки
    Производ ит ель
    Цена, грн.
    Количество
    Сумма

    Зеленый
    Пачка
    Riston
    5,8 50
    Черный
    Пакетики
    Edwin
    4,7 23
    Красный
    Пакетики
    Dilmah
    6,9 56
    Желтый
    Пакетики
    Edwin
    4,4 32
    Черный
    Пачка
    Ahmad
    3,9 89
    Желтый
    Жесть
    Dilmah
    20,1 23
    Черный
    Фарфор
    Edwin
    25,4 76
    Всего:
    Добавить в файл поле «Сумма» и графу «Всего». Информацию в файле упорядочить в порядке убывания суммы продаж.
    22.Ведомость о закупках чая хранится в двоичном файле в виде,
    представленном в табл. 3.7. Сформировать отдельные файлы о закупках зеленого, черного, желтого и красного чая.
    23.Информацию о закупках чая (табл. 3.7), хранящуюся в двоичном файле,
    вывести на экран, упорядочив в алфавитном порядке названия фирм производителей. Вывести название фирмы с максимальным объемом продаж.
    24.Вывести на печать ведомость о закупках чая (табл. 3.7), хранящуюся в двоичном файле. Упорядочить информацию в файле, расположив в алфавитном порядке тип чая, а затем форму упаковки. Определить, в какой упаковке чай продается лучше.
    25. Информацию (табл. 3.7), хранящуюся в двоичном файле использовать для создания двоичных файлов, в которых будут храниться данные о закупках чая по каждой фирме-производителю. Информацию в файлах расположить в порядке возрастания количества проданного чая. Вывести на печать информацию из каждого файла, сформировав поле «Сумма» и графу
    «Всего».
    26.
    Сформировать двоичный файл, записав туда информацию о комплектации компьютеров:

    тип процессора;

    материнская плата
    35

    ОЗУ (Мб);


    объем жесткого диска (Гб);

    видеокарта

    наличие DVD привода (да/нет).
    Вывести информацию о компьютерах с объемом жесткого диска более 600
    Гб и ОЗУ более 1026 Мб. Удалить из файла все данные о компьютерах, в комплектации которых нет DVD привода.
    Лабораторная работа №11.
    1   2   3   4


    написать администратору сайта