5.1.1. Напишите функцию-член для класса mod_int:
void add(int i) ; //добавление i к v по модулю 60
5.1.2. Используйте тип ch_stack, из темы «Создание динамического стека», и включите в него конструктор по умолчанию для размещения ch_stack из 100 элементов. Напишите программу, которая обменивает содержимым два стека ch_stack; используйте массив стеков ch_stack для выполнения этой работы. Обмениваемые стеки будут двумя первыми стеками ch_stack в массиве. Один из способов может состоять в использовании четырёх ch_stack — st[0], st[1], st[2] и st[3]. Поместите содержимое st[1] в st[2], st[0] в st[3], st[3] в st[1], a st[2] в st[0]. Реализовав функции печати, которые выводили бы все элементы ch_stack, убедитесь, что после обмена содержимым порядок элементов в стеках не изменился. Можно ли решить задачу с помощью только трёх ch_stack?
5.1.3. Добавьте к типу ch_stack конструктор со следующим прототипом:
ch_stack::ch_stack(const char* с);
//инициализация символьным массивом
5.2.1. Используйте тип my_string, из темы «Пример: динамически размещаемые строки», и напишите следующие функции- члены:
//strcmp: отрицательна, если s<s1, равна 0,если s==s1,
// положительна, если s>s1, здесь s — неявный аргумент int my_string::strcmp(const my_string& s1)
//strrev обращает my_string void my_string::strrev();
//перегруженная print для печати первых n символов void my_string::print(int n);
5.2.2. Используя тип vect из темы «Класс vect», напишите следующие функции:
//складывает значения всех элементов и возвращает их сумму int vect::sumelem();
//печатает все элементы void vect::print();
//складывает два вектора в третий v(неявный_аргумент)=vl+v2 void vect::add(const vect& vl,const vect& v2);
//складывает два вектора и возвращает v(неявный_аргумент)+vl vect vect::add(const vect& vl);
5.2.3. Определите класс multi_v как:
class multi_v
{ public:
multi_v(int i):a(i),b(i),c(i),size(i) {} void assign(int ind,int i,int j,int k);
void retrieve(int ind,int& i,int& j,int& k) const; void print(int ind) const;
int ub const { return(size-1); } private:
vect a,b,c; int size;
};
Напишите и проверьте код для функций-членов assign(), retrieve() и print(). Функция assign() должна присваивать i, j и k элементам а[ind], b[ind] и с[ind], соответственно. Функция retrieve() выполняет обратное по отношению к функции assign(). Функция print() должна печатать три значения а[ind], b[ind] и с[ind].
5.2.4. Используйте тип slist, приведённый в теме «Пример: односвязный список», для написания следующих функций-членов:
//конструктор slist с инициализатором — массивом символов slist::slist(const char* с);
//length возвращает длину slist int slist::length();
//возвращает число элементов со значением с int slist::count_c(char с);
Напишите функцию-член append(), которая будет добавлять список в конец неявно заданного аргумента-списка, а затем очищать добавленный slist, обнуляя голову:
void slist::append(slist& e);
Напишите функцию-член copy(), которая будет копировать список:
//неявный аргумент принимает копию е void slist::copy(const slist& e);
He забудьте уничтожить неявный список перед тем, как делать копию. Вам нужна специальная проверка, чтобы избежать копирования списка в самого себя.
5.2.5. Создайте тип для безопасного трёхмерного массива под названием v_3_d.
//Реализация безопасного трехмерного массива class v_3_d
{ public:
int ub1(),ub2(),ub3(); v_3_d(int l1,int l2,int l3);
~v_3_d();
int& element(int i,int j,int k) const; void print() const;
private; int*** p;
int si,s2,s3;
};
Инициализуйте и выведите трёхмерный массив.
5.2.6. Определить класс C++, который будет похож на множество (set) в Pascal. Приведённое ниже представление является 32-разрядным машинным словом:
//Реализация АТД для типа set const unsigned long int masks[32]=
{
0x80000000, 0x40000000, 0x20000000, 0x10000000,
0x8000000, 0x4000000, 0x2000000, 0x1000000,
0x800000, 0x400000, 0x200000, 0x100000,
0x80000, 0x40000, 0x20000, 0x10000,
0x8000, 0x4000, 0x2000, 0x1000,
0x800, 0x400, 0x200, 0x100,
0x80, 0x40, 0x20, 0x10, 0x8, 0x4, 0x2, 0x1
};
class set
{ public:
set(unsigned long int i) { t=i; } set() { t=0x0; }
void u_add(int i) { t|=masks[i]; } void u_sub(int i) { t&=~masks[i]; } bool in(int i) const
{ return bool((t&masks[i))!=0); } void pr_mems() const;
set set_union(const set& v) const
{ return (set(t|v.t)); } private:
unsigned long int t;
};
Напишите код pr_mems для вывода всех элементов множества. Напишите код для функции-члена
intersection, возвращающей пересечение множеств.
5.2.7. Дополните пакет обработки полиномов, написав код для процедур
void polynomial::release() и void polynomialprint(), которого нет в тексте (см. раздел 6.9, «Многочлен как связный список», на стр. 174).
Напишите код для процедуры сложения многочленов
void polynomialplus().
5.2.8. Усовершенствуйте форму класса my_string с подсчётом ссылок, вставив в соответствующие функции-члены проверку утверждения, что ref_cnt неотрицателен. Зачем это может понадобиться (см. тему «Строки, использующие семантику ссылок»?
5.2.9. Измените класс matrix, чтобы получить конструктор, выполняющий транспонирование (см. тему
«Двумерные массивы». Он должен содержать перечислимый тип в качестве второго аргумента, который показывает, какая трансформация должна выполняться с массивом.
enum transform {transpose,negative,upper}; matrix::matrix(const matrix& a,transform t)
{
//транспонирование base[i][j]=a.base[j][i]
//смена знака base[ij[j]=-a.base[i][j]
//верхнетреугольная матрица base[i][j]=a.base[i][j]
// i<=j, иначе 0
}
Прикрепленные файлы: |
|
---|---|
Администрация сайта не рекомендует использовать бесплатные работы для сдачи преподавателю. Эти работы могут не пройти проверку на уникальность. Узнайте стоимость уникальной работы, заполните форму ниже: Узнать стоимость | |
Скачать файлы: |
|
Комментарии
Оставить комментарий
Валера 14 минут назад
добрый день. Необходимо закрыть долги за 2 и 3 курсы. Заранее спасибо.
Иван, помощь с обучением 21 минут назад
Валерий, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Fedor 2 часа назад
Здравствуйте, сколько будет стоить данная работа и как заказать?
Иван, помощь с обучением 2 часа назад
Fedor, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Алина 4 часа назад
Сделать презентацию и защитную речь к дипломной работе по теме: Источники права социального обеспечения
Иван, помощь с обучением 4 часа назад
Алина, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Алена 7 часов назад
Добрый день! Учусь в синергии, факультет экономики, нужно закрыт 2 семестр, общ получается 7 предметов! 1.Иностранный язык 2.Цифровая экономика 3.Управление проектами 4.Микроэкономика 5.Экономика и финансы организации 6.Статистика 7.Информационно-комуникационные технологии для профессиональной деятельности.
Иван, помощь с обучением 8 часов назад
Алена, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Игорь Петрович 10 часов назад
К утру необходимы материалы для защиты диплома - речь и презентация (слайды). Сам диплом готов, пришлю его Вам по запросу!
Иван, помощь с обучением 10 часов назад
Игорь Петрович, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Инкогнито 1 день назад
У меня есть скорректированный и согласованный руководителем, план ВКР. Напишите, пожалуйста, порядок оплаты и реквизиты.
Иван, помощь с обучением 1 день назад
Инкогнито, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Илья 1 день назад
Здравствуйте) нужен отчет по практике. Практику прохожу в доме-интернате для престарелых и инвалидов. Все четыре задания объединены одним отчетом о проведенных исследованиях. Каждое задание направлено на выполнение одной из его частей. Помогите!
Иван, помощь с обучением 1 день назад
Илья, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Alina 2 дня назад
Педагогическая практика, 4 семестр, Направление: ППО Во время прохождения практики Вы: получите представления об основных видах профессиональной психолого-педагогической деятельности; разовьёте навыки использования современных методов и технологий организации образовательной работы с детьми младшего школьного возраста; научитесь выстраивать взаимодействие со всеми участниками образовательного процесса.
Иван, помощь с обучением 2 дня назад
Alina, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Влад 3 дня назад
Здравствуйте. Только поступил! Операционная деятельность в логистике. Так же получается 10 - 11 класс заканчивать. То-есть 2 года 11 месяцев. Сколько будет стоить семестр закончить?
Иван, помощь с обучением 3 дня назад
Влад, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Полина 3 дня назад
Требуется выполнить 3 работы по предмету "Психология ФКиС" за 3 курс
Иван, помощь с обучением 3 дня назад
Полина, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Инкогнито 4 дня назад
Здравствуйте. Нужно написать диплом в короткие сроки. На тему Анализ финансового состояния предприятия. С материалами для защиты. Сколько будет стоить?
Иван, помощь с обучением 4 дня назад
Инкогнито, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Студент 4 дня назад
Нужно сделать отчёт по практике преддипломной, дальше по ней уже нудно будет сделать вкр. Все данные и все по производству имеется
Иван, помощь с обучением 4 дня назад
Студент, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Олег 5 дня назад
Преддипломная практика и ВКР. Проходила практика на заводе, который занимается производством электроизоляционных материалов и изделий из них. В должности менеджера отдела сбыта, а также занимался продвижением продукции в интернете. Также , эту работу надо связать с темой ВКР "РАЗРАБОТКА СТРАТЕГИИ ПРОЕКТА В СФЕРЕ ИТ".
Иван, помощь с обучением 5 дня назад
Олег, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Анна 5 дня назад
сколько стоит вступительные экзамены русский , математика, информатика и какие условия?
Иван, помощь с обучением 5 дня назад
Анна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Владимир Иванович 5 дня назад
Хочу закрыть все долги до 1 числа также вкр + диплом. Факультет информационных технологий.
Иван, помощь с обучением 5 дня назад
Владимир Иванович, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Василий 6 дней назад
сколько будет стоить полностью закрыть сессию .туда входят Информационные технологий (Контрольная работа, 3 лабораторных работ, Экзаменационный тест ), Русский язык и культура речи (практические задания) , Начертательная геометрия ( 3 задачи и атестационный тест ), Тайм менеджмент ( 4 практических задания , итоговый тест)
Иван, помощь с обучением 6 дней назад
Василий, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф
Марк неделю назад
Нужно сделать 2 задания и 1 итоговый тест по Иностранный язык 2, 4 практических задания и 1 итоговый тест Исследования рынка, 4 практических задания и 1 итоговый тест Менеджмент, 1 практическое задание Проектная деятельность (практикум) 1, 3 практических задания Проектная деятельность (практикум) 2, 1 итоговый тест Проектная деятельность (практикум) 3, 1 практическое задание и 1 итоговый тест Проектная деятельность 1, 3 практических задания и 1 итоговый тест Проектная деятельность 2, 2 практических заданий и 1 итоговый тест Проектная деятельность 3, 2 практических задания Экономико-правовое сопровождение бизнеса какое время займет и стоимость?
Иван, помощь с обучением неделю назад
Марк, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@дцо.рф