Форум программистов, компьютерный форум CyberForum.ru

Класс товар-компьютер. - C++

Восстановить пароль Регистрация
 
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
24.03.2012, 11:29     Класс товар-компьютер. #1
Еще раз здравствуйте. Я понимаю, что такую задачу никто-то за спасибо делать не будет, но помогите пожалуйста, хотя бы с алгоритмом или полезными ссылками на похожие задачи!

Базовый класс «ТОВАР» описывает данные о товарах, имеющихся в компьютерном магазине: шифр товара, дата поступления товара; фирма-поставщик, фирма-изготовитель, количество единиц товара. В класс входят следующие функции: виртуальная функция просмотра данных о товарах, имеющихся в магазине; функция-друг, которая выводит информацию о фирмах-поставщиках, которые поставили больше всего товаров. Производный класс «ТОВАР-КОМПЬЮТЕР» содержит следующие данные: тип компьютера (портативный, настольный); производитель; тип процессора; частота процессора; емкость ОЗУ; емкость винчестера, переопределенную функцию просмотра информации о товарах - компьютерах. Производный класс «ТОВАР-МОНИТОР» содержит следующие данные: размер монитора, тип монитора, переопределенную функцию просмотра информации о товарах - мониторах.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2012, 11:29     Класс товар-компьютер.
Посмотрите здесь:

C++ Используя класс отыскать самый дорогой товар и вывести скидки на товары
C++ Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени?
C++ Класс таблиц баз данных и класс записей в таблице(реляционная таблица). Предусмотреть класс связей между таблицами
Класс TGoods, создающий тип – товар C++
C++ Создайте базовый абстрактный класс «Товар» с чистой виртуальной функцией вывода данных
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
24.03.2012, 11:48     Класс товар-компьютер. #2
создаете абстрактный базовый класс с чисто виртуальной функцией ShowProduct, и от него наследуетесь. Открываете книгу и читаете про наследование
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
24.03.2012, 12:01  [ТС]     Класс товар-компьютер. #3
Спасибо и на этом
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
26.03.2012, 23:01  [ТС]     Класс товар-компьютер. #4
Много чего уже перечитал, но ничего дельного сделать не могу. Может быть кто-нибудь сделает мне ее за деньги?

Добавлено через 42 секунды
Просто сроки уже поджали, и я не успеваю.
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
26.03.2012, 23:37     Класс товар-компьютер. #5
Цитата Сообщение от Вася1q Посмотреть сообщение
Много чего уже перечитал, но ничего дельного сделать не могу. Может быть кто-нибудь сделает мне ее за деньги?

Добавлено через 42 секунды
Просто сроки уже поджали, и я не успеваю.
Как-то эти две фразы не согласуются. Либо вы много книг читали, либо сроки поджимают и надо изучить С++ за 1 день.

Бьерн Страуструп - Язык программирования С++. глава 6.2.5 Виртуальные функции

Добавлено через 9 минут
Бьерн Страуструп - Язык программирования С++. глава 6.2.5 Виртуальные функции
Вася1q
 Аватар для Вася1q
21 / 21 / 0
Регистрация: 13.09.2011
Сообщений: 311
04.04.2012, 18:03  [ТС]     Класс товар-компьютер. #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#include <iostream>
#include <conio.h>
#include <string.h>
using namespace std;
//базовый класс Товар
class Tovar
{
    friend void function(Tovar p[],char sb[])
{
if (strcmp(p->Firma_post,sb)==0)
{
p->Display();
cout <<"\n";
}
}
protected:
   char schifr[30];     //шифр товара
   char Firma_post[30];//фирма-поставщик
   char Firma_izg[30];//фирма-изготовитель
   char N_tovar[30]; //название товара
  public:
   Tovar();
   virtual ~ Tovar(){}
   virtual void Display();//вывод данных о товаре
  };
 Tovar::Tovar()
  { 
   cout << "\n Шифр товара:"; cin.get();
   cin.getline(schifr,30);
   cout << "\n Фирма-поставщик:"; cin.get();
          cin.getline(Firma_post,30);
   cout << "\n Фирма-изготовитель:"; cin.get();
          cin.getline(Firma_izg,30);
   cout <<"\n Название товара:"; cin>>N_tovar;
  }
  void Tovar::Display()
    { cout << "\n Товар:";
      cout << "\n Шифр товара:" << schifr;
      cout << "\n Фирма-поставщик:" <<Firma_post;
      cout << "\n Фирма-изготовитель:"<<Firma_izg;
      cout << "\n Нащвание отдела:" << N_tovar;
    }
  //производный класс "Товар-компьютер"
  class Tovar_computer : public  Tovar
  { protected:
      char tip_pc[30];//Тип компьютера
      char Firma_pr[30];//фирма-производитель
      char tip_proc[30];//тип процессора
      char ozu[30];//емкость ОЗУ
      char vin[30];//емкость винчестера
    public:
       Tovar_computer();
       virtual ~ Tovar_computer(){}
       virtual void Display(); //вывод данных о компьютере
    };
  Tovar_computer::Tovar_computer()
  { //ввод  информации о компьютере
   cout << "\n Тип компьютера:"; cin.get();
   cin.getline(tip_pc,30);
   cout << "\n Фирма-производитель:"; cin.get();
   cin.getline(Firma_pr,30);
   cout << "\n Тип процессора:"; cin.get();
   cin.getline(tip_proc,30);
   cout << "\n Емкость ОЗУ:"; cin.get();
   cin.getline(ozu,30);
   cout << "\n Емкость винчестера:"; cin.get();
   cin.getline(vin,30);
   }
 void Tovar_computer::Display()
  {
   cout << "\n Тип компьютера:" << tip_pc << "  ";
   cout << "\n Тип процессора:" << tip_proc << "  ";
   cout << "\n Емкость ОЗУ:" << ozu << "  ";
   cout << "\n Емкость винчестера:" << Firma_post << "  ";
   cout << "\n Фирма-изготовитель:" << vin << "  ";
  }
 // производный класс "Товар-монитор"
  class Tovar_monitor : public  Tovar
   { protected:
      char tip_mon[30];//Тип монитора
      char raz_mon[30];//Размер монитора
     public:
       Tovar_monitor();
       virtual ~ Tovar_monitor(){}
       virtual void Display();//вывод описания монитора
    };
 Tovar_monitor::Tovar_monitor()
  { //ввод информации о мониторе
   cout << "\n Тип монитора:"; cin.get();
   cin.getline(tip_mon,30);
   cout << "\n Размер монитора:"; cin.get();
   cin.getline(raz_mon,30);
   }
 void Tovar_monitor::Display()
 { 
   cout << "\n Тип монитора:" << tip_mon << "  ";
   cout << "\n Размер монитора:" << raz_mon << "  ";
  }
int main()
{  
  char sb[30];
  int nMenu, flag = 1, kol;
  int i = 0;
  Tovar* p[100];
  cout <<" Количество единиц товара: ";cin >> kol;
  while(i < kol && flag)
   { // вывод пунктов меню
     cout<<"\n Новая запись. Введите: " << endl;
     cout<<" Нажмите '1'для ввода информации о первом товаре; '2'- для второго ,3-выход\n";
      cin >> nMenu;
     switch (nMenu)
      { case 1 : p[i++] = new Tovar_computer(); break;
        case 2 : p[i++] = new Tovar_monitor(); break;
        default : flag = 0; break;
      }
    }
  // вывод описаний товаров
  for (int id = 0; id < kol; id++)
   { p[id]->Display();
  }
  cout<<"\n Введите название товара:"; cin>>sb;
  for (int id = 0; id < kol; id++)
  {
  function(p[id],sb);
  }
  getch();
  }
Добавлено через 1 минуту
Вот...почитал пару книг и статеек, написал ...но есть ошибки и недочеты. Помогите их исправить! Иначе мои старания будут напрасны

Добавлено через 3 часа 23 минуты
помогите
Yandex
Объявления
04.04.2012, 18:03     Класс товар-компьютер.
Ответ Создать тему
Опции темы

Текущее время: 11:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru