|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
21.05.2017, 22:22 | #1 |
Новичок
Джуниор
Регистрация: 21.05.2017
Сообщений: 1
|
Помогите срочно!
Возникла проблема.... Вот задание которое нужно сделать и мой код:
Скрытые поля: • Номер по порядку (назначается автоматически); • Название фильма (компилируется случайным образом, из заранее подготовленных слов, считанных из файла); • Режиссёр (выбирается случайно из подготовленных вариантов); • Студия (выбирается случайно из заготовленных вариантов); • Продолжительность (генерируется случайно в диапазоне 1,5-3 часов); (Доделать) • Продолжительность в минутах (вычисляется); • Кассовые сборы (вычисляется, исходя из предыдущих данных).*(не опнял) Публичные статические поля: • Счётчик количества экземпляров; • Общая продолжительность фильмов Скрытые методы: • Вычисление кассовых сборов; • Вычисление общей продолжительности фильмов. Публичные методы: • Конструктор (присваивает значения всем полям); • Деструктор (пересчитывает статические переменные); • Ручная смена режиссёра (с пересчётом кассовых сборов); • Вывод на экран всех полей (кроме статических); • Вывод общей продолжительности фильмов. Программа: Запросить пользователя количество экземпляров класса (не более 20) и создать коллекцию (массив, вектор, список или др.) выбранной им длинны. Затем предложить пользователю меню, позволяющее запускать публичные методы (кроме конструктора и деструктора), выводить данные на экран, узнать информацию об авторе, а также выйти из программы. Навигацию по меню осуществлять стрелками. Меню зациклить. Вывод списка на экран должен быть доступен в таких режимах: • Вывод всего списка; • Вывод одного экземпляра с заданным порядковым номером; • Вывод всех экземпляров выбранного режиссёра; • Вывод всех экземпляров выбранной студии; • Вывод всех экземпляров с со сборами больше выбранных; После выполнения каждого пункта очищать экран. Предусмотреть максимальное количество ошибок пользователя. Код: Моя программа #include "stdafx.h" #include <iostream> #include <string> #include <conio.h> #include <vector> #include <stdlib.h> #include <ctime> using namespace std; class produsor { public: string name; int rank; produsor(string Pname, int Prank) { name = Pname; rank = Prank; } }; class movie { static unsigned Counter; static int AllFilmsTime; private: vector <produsor> ProdusersList; //ProdusersList[0] = produsor.setProdusor("J.J.Abrams", 7); vector<string> FilmsList = { "Avatar", "IronFist", "Titanik", "Hulk", "TheLordOfRings" }; vector<string> StudiosList = { "20th Century Fox", "Marvel", "disney", "Columbia Pictures" }; int Number; float Time; //double Time1; void CountFilmsTime() { AllFilmsTime = AllFilmsTime + FilmTime; } float SetTotalTime() { srand(time(NULL)); Time = 449 + rand() % 451; return (Time); } float SetFilmTime() { srand(time(NULL)); Time = 89 + rand() % 91; return (Time); } string SetStudio() { srand(time(NULL)); Number = rand() % 4; return StudiosList[Number]; } string setProduser() { srand(time(NULL)); Number = rand() % 5; return ProdusersList[Number].name; } string setFilmName() { srand(time(NULL)); Number = rand() % 5; return FilmsList[Number]; } public: double FilmTime1; int FilmsCounter; float TotalTime; float FilmTime; string FilmName; string ProduserName; string StudioName; //vector <produsor> getProdusorsList() { string getProdusorsList(int i) { return ProdusersList[i].name; } int getAllFilmsTime() { return AllFilmsTime; } int getCount() { return Counter; } void ChangeProdusor(string produsor) { ProduserName = produsor; } //destructor //~movie() { //}Destructor movie () {//(produsor AllProdusors) { produsor p1("Nick Ahlmark", 7); ProdusersList.push_back(p1); produsor p2("J.J.Abrams", 9); ProdusersList.push_back(p2); produsor p3("Brian Cosgrove", 8); ProdusersList.push_back(p3); produsor p4("Benedict Cumberbatch", 6); ProdusersList.push_back(p4); produsor p5("Frank Harper", 3); ProdusersList.push_back(p5); FilmName = setFilmName(); ProduserName = setProduser(); FilmTime = SetFilmTime(); StudioName = SetStudio(); TotalTime = SetTotalTime(); Counter = Counter + 1; FilmsCounter = Counter; CountFilmsTime(); } void print() { cout << FilmName << endl; cout << ProduserName << endl; //cout << FilmTime1 << endl; cout << FilmTime << endl; cout << StudioName << endl; cout << TotalTime << endl; cout << getCount() << endl; cout << getAllFilmsTime() << endl; } }; unsigned movie::Counter = 0; int movie::AllFilmsTime = 0; int main() { int ProdusorNumber; string ProdusorName; movie RandFilm[20]; //movie RandFilm2; /* vector<produsor> ProdusersList; //= { "J.J.Abrams", "Nick Ahlmark", "Brian Cosgrove", "Benedict Cumberbatch", "Frank Harper" }; produsor p1("Nick Ahlmark", 7); ProdusersList.push_back(p1); produsor p2("J.J.Abrams", 9); ProdusersList.push_back(p2); produsor p3("Brian Cosgrove", 8); ProdusersList.push_back(p3); produsor p4("Benedict Cumberbatch", 6); ProdusersList.push_back(p4); produsor p5("Frank Harper", 3); ProdusersList.push_back(p5);*/ //vector <string> ProdusorsList = RandFilm[0].getProdusorsList(); RandFilm[0].print(); /* cout << RandFilm.FilmName << endl; cout << RandFilm.ProduserName << endl; cout << RandFilm.FilmTime1 << endl; cout << RandFilm.FilmTime << endl; cout << RandFilm.StudioName << endl; cout << RandFilm.TotalTime << endl; cout << RandFilm.getCount() << endl; cout << RandFilm.getAllFilmsTime() << endl;*/ cout << "Set new produsor name" << endl; for (int i = 0; i < 5; i++) { cout << i + 1 << ") " << RandFilm[0].getProdusorsList(i) << endl; } cin >> ProdusorNumber; //RandFilm[0].ChangeProdusor(ProdusorsList[ProdusorNumber - 1]); RandFilm[0].ChangeProdusor(RandFilm[0].getProdusorsList(ProdusorNumber - 1)); cout << endl; cout << RandFilm[0].ProduserName << endl; } Вопрос: В задании сказано, сделать кассовые сборы и режиссера с пересчетом кассовых сборов. У меня с этим возникли трудности. Помогите решить. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перевод нужен срочно помогите ) в течение 2 часов от Паскаля на Турбо СИ нужно помогите | Жанибек | Помощь студентам | 14 | 01.04.2015 17:23 |
Помогите создать програму для роботы с файлами, пожалуйста помогите нужно очень срочно | Сергей Человек | Фриланс | 3 | 06.07.2009 19:30 |
Парни помогите!!срочно нужно решить в течении пару часов..завтра зачет!Парни помогите! | razorl1ner | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 01.06.2009 00:02 |