Пз 14 Обратить внимание на правильное оформление отступов! Задание 1 Жидкости
Скачать 24.08 Kb.
|
ПЗ 14Обратить внимание на правильное оформление отступов! Задание 1 – ЖидкостиРеализовать класс «Liquid» (жидкость), в котором есть такие атрибуты, как название, плотность. class Liquid { private: char name[256]; //название жидкости float density; //плотность жидкости } Определить конструктор, заполняющий название жидкости. Определить следующие методы: void SetDensity(float d) – изменение плотности. void SetName(char* name) – изменение названия. void Print() – вывод на экран информации о жидкости в следующем формате: «название_жидкости (плотность)». Переопределить операции (см. вариант). В тестах функции: Создать массив из 5-ти жидкостей. Дополнительный функционал: заполнить его значениями из файла liquids.txt.
Вывести на экран жидкости согласно условию (см. вариант). Отсортировать массив (см. вариант). Вывести на экран отсортированный массив. Указание: Для сортировки массива воспользуйтесь библиотечной функцией qsort(). *Для загрузки данных из файла воспользуйтесь функцией fscanf(). Вариант 1 - переопределить операции сравнения (>, ==) по плотности; - вывести на экран жидкости с одинаковыми плотностями; - сортировать массив в порядке возрастания плотностей жидкостей. Вариант 2 - переопределить операции сравнения (<, !=) по плотности; - вывести на экран жидкости с плотностями, большими указанной; - сортировать массив в порядке убывания плотностей жидкостей. Вариант 3 - переопределить операции сравнения (>, ==) по длине названия жидкости; - вывести на экран жидкости с плотностями, меньшими указанной; - сортировать массив в порядке возрастания длин названия жидкости. Вариант 4 - переопределить операции сравнения (<, !=) по длине названия жидкости; - вывести на экран жидкости, начинающиеся на указанную букву; - сортировать массив в порядке убывания длин названия жидкости. Вариант 5 - переопределить операции сравнения (>, ==) по названию жидкости по алфавиту; - вывести на экран жидкость с наименьшей плотностью; - сортировать массив по названию жидкости по алфавиту. Вариант 6 - переопределить операции сравнения (<, !=) по названию жидкости по алфавиту; - вывести на экран жидкость с наибольшей плотностью; - сортировать массив по названию жидкости в обратном алфавиту порядке. Вариант 7 - переопределить операции сравнения (>, ==) по плотности; - вывести на экран жидкости, начинающиеся на указанную букву; - сортировать массив в порядке убывания плотностей жидкостей. Вариант 8 - переопределить операции сравнения (<, !=) по плотности; - вывести на экран жидкости с наибольшей и наименьшей плотностями; - сортировать массив в порядке возрастания плотностей жидкостей. Вариант 9 - переопределить операции сравнения (>, ==) по длине названия жидкости; - вывести на экран жидкости с наибольшей длиной названия; - сортировать массив в порядке возрастания длин названий жидкостей. Вариант 10 - переопределить операции сравнения (<, !=) по длине названия жидкости; - вывести на экран жидкости с наименьшей длиной названия; - сортировать массив в порядке убывания длин названий жидкостей. Вариант 11 - переопределить операции сравнения (>, ==) по названию жидкости по алфавиту; - вывести на экран жидкость, начинающуюся на наименьшую букву; - сортировать массив по названию жидкости по алфавиту. Вариант 12 - переопределить операции сравнения (<, !=) по названию жидкости по алфавиту; - вывести на экран жидкость, начинающуюся на наибольшую букву; - сортировать массив по названию жидкости в порядке обратном алфавиту. Вариант 13 - переопределить операции сравнения (>, ==) по плотности; - вывести на экран жидкости с наименьшей и наибольшей плотностью; - сортировать массив в порядке возрастания плотностей жидкостей. Вариант 14 - переопределить операции сравнения (<, !=) по плотности; - вывести на экран жидкости с плотностью, больше заданной; - сортировать массив в порядке убывания плотностей жидкостей. Вариант 15 - переопределить операции сравнения (>, ==) по длине названия; - вывести на экран жидкости, начинающиеся на указанную букву; - сортировать массив в порядке возрастания длин названия. Задание 2 – АлкогольНа основе класса жидкостей из задания 1 создать производный класс «Alcohol» (спирт), имеющий новый атрибут – крепость (strength). Добавить методы: void SetStrength(int s) – изменение крепости. void Print() – вывод на экран информации о жидкости в следующем формате: «название_жидкости (плотность) – крепость%». Тесты на все методы производного класса. Задание 3 – КоктейльНа основе класса Alcohol из задания 2 создать класс «Drink» (напиток), имеющий емкость (объем в мл). Добавить методы: void SetVolume(int v) – изменение объема. void Print() – вывод на экран информации о жидкости в следующем формате: «название_жидкости (крепость%) – объем мл» Переопределить операцию (см. вариант) для объектов класса Drink. В программе создать массив из 5-ти объектов класса Drink:
Вывести на экран 3 различных коктейля, полученных в результате сочетания напитков и выполнения операции и реализовать тесты на все методы производного класса. Вариант 1 Операция смешивания напитков (сложение): Название результирующего напитка: «название_напитка_1 + название_напитка_2» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 2 Операция разбавления водой (сложение с константой (объем воды в мл - )): Название результирующего напитка: «название_напитка_1 + вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 3 Операция увеличение объема (умножение на константу C): Название результирующего напитка: «название_напитка_1 x C» Крепость не меняется Объем результирующего напитка равен Вариант 4 Операция испарения (вычитание константы (объема воды в мл - )): Название результирующего напитка: «название_напитка_1 - вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен объему: Вариант 5 Операция смешивания напитков (сложение): Название результирующего напитка: «название_напитка_1 + название_напитка_2» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 6 Операция разбавления водой (сложение с константой (объем воды в мл - )): Название результирующего напитка: «название_напитка_1 + вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 7 Операция увеличение объема (умножение на константу C): Название результирующего напитка: «название_напитка_1 x C» Крепость не меняется Объем результирующего напитка равен Вариант 8 Операция испарения (вычитание константы (объема воды в мл - )): Название результирующего напитка: «название_напитка_1 - вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен объему: Вариант 9 Операция смешивания напитков (сложение): Название результирующего напитка: «название_напитка_1 + название_напитка_2» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 10 Операция разбавления водой (сложение с константой (объем воды в мл - )): Название результирующего напитка: «название_напитка_1 + вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 11 Операция увеличение объема (умножение на константу C): Название результирующего напитка: «название_напитка_1 x C» Крепость не меняется Объем результирующего напитка равен Вариант 12 Операция испарения (вычитание константы (объема воды в мл - )): Название результирующего напитка: «название_напитка_1 - вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен объему: Вариант 13 Операция смешивания напитков (сложение): Название результирующего напитка: «название_напитка_1 + название_напитка_2» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 14 Операция разбавления водой (сложение с константой (объем воды в мл - )): Название результирующего напитка: «название_напитка_1 + вода» Крепость напитка рассчитывается по формуле: Объем результирующего напитка равен суммарному объему: Вариант 15 Операция увеличение объема (умножение на константу C): Название результирующего напитка: «название_напитка_1 x C» Крепость не меняется Объем результирующего напитка равен |