Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2014, 15:47   #1
lixod96
Пользователь
 
Регистрация: 23.04.2014
Сообщений: 18
По умолчанию Работа с классами

Реализовать класс Goods (пункт 1 ), используя для представления цены класс Money с пункта 2 Реализовать метод уценки товара, уменьшая цену на 1% за каждый день просрочки срока годности.

Пункт 1
Создать класс Goods (товар). В классе должны быть представлены поля: наименование товара, дата оформления, цена товара, количество единиц товара, номер накладной, по которой товар поступил на склад. Реализовать методы изменения цены товара, изменения количества товара (увеличение и уменьшение), вычисления стоимости товара. Метод toString должен выдавать в виде строки стоимость товара.

Пункт 2
Создать класс Money для работы с денежными суммами. Число должно быть представлено двумя полями: типа long для рублей и типа unsigned char - для копеек. Дробная часть (копейки) при выводе на экран должна быть отделена от целой части запятой. Реализовать сложение, вычитание, деление сумм, деление суммы на дробное число, умножение на дробное число и операции сравнения.
lixod96 вне форума Ответить с цитированием
Старый 01.11.2014, 16:26   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Хорошо задача поставлена. Ничего лишнего.
Однако, не хватает кое-каких данных.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 01.11.2014, 18:58   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
lixod96
Пробовал как-нибудь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 01.11.2014, 18:58   #4
lixod96
Пользователь
 
Регистрация: 23.04.2014
Сообщений: 18
По умолчанию

Есть исходники, как сделать работоспособный код???

Код:
#include<iostream>
#include<string>
#include<sstream>
#include<cmath>
#include <iostream>
#include <iomanip>
#include <limits> 
 
using namespace std;
const int dcup[14]={500000,100000,50000,10000,5000,1000,500,200,100,50,10,5,2,1};
 
class money
{
private:
int fullcopecs;
 
 
public:
    money() {fullcopecs=0;}
    money(unsigned int a){fullcopecs=a;}
    money(unsigned int r, unsigned int c){fullcopecs=r*100+c;}
    friend istream &operator >>(istream &in,money &A); //Ввод
    friend ostream &operator <<(ostream &out,money A);  //Вывода
    friend money operator+(money A,money B);   //Сложение
    friend money operator-(money A,money B);   //Вычитание
   
 
};
 
 
using namespace std;
 
 //Вводим данные
istream &operator>>(istream &in,money &A) {
    unsigned int roubles, copecks;
    in >>roubles >> copecks;
    A.fullcopecs =roubles*100+copecks;
    return in;
}
//Выводим
ostream &operator<<(ostream &out, money A) 
{
    unsigned int roubles, copecks;
    roubles=A.fullcopecs/100;
    copecks=A.fullcopecs%100;
    out<<"Roubles: "<< roubles <<"; Copecks: "<<copecks<<endl;
    return out;
 
}
    //Складываем
money operator+(money B, money A)
{ 
    money temp;
    temp.fullcopecs =A.fullcopecs+B.fullcopecs; 
    return temp;
}

int main()
{
    money A, B;
 
        cout << "\nEnter first summ in format 'roubles' and 'copecks':";
        cin >> A;
      cout << "Enter second summ in format 'roubles' and 'copecks'':";
        cin >> B;
        cout << "Sum:" << (A+B) << endl;
        
        system ("pause");
 
       return 0;
}



=======



#include "Goods.h"
#include <iostream>
 
 
Goods::Goods(void)
{
}
 
Goods::~Goods(void)
{
}
 
void Goods::putdata () {
    cout << "\n Наименование товара : " << naim << "\n Количество единиц товара: " << 
        kolic << "\n Дата поступления товара: " 
            << data[0] << "." << data[1] << "." << data[2] << endl;
}
 
void Goods::searchdata(char led[]) 
{
    if(strcmp(naim, led) == 0)
        this -> putdata();
}
 
void Goods::getdata()
{
    char c;
    cout << "\n Наименование товара: "; 
    cin >> naim;
    cout << " Количество единиц товара: ";
    cin >> kolic;
    cout << " Дата поступления товара: ";  
       // чтение разделителей в переменную c, можно также cin.ignore() для пропуска символа
    cin >> data[0] >> c >> data[1] >> c >> data[2]; 
}

Последний раз редактировалось Stilet; 01.11.2014 в 19:23.
lixod96 вне форума Ответить с цитированием
Старый 01.11.2014, 19:02   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Зочот автоматом.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 01.11.2014, 19:30   #6
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

min@y™
А че там конфетный код не конфетный?
Особенно в части комментариев.
rrrFer вне форума Ответить с цитированием
Старый 01.11.2014, 19:45   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от rrrFer Посмотреть сообщение
min@y™
А че там конфетный код не конфетный?
Особенно в части комментариев.
А вот почему!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 25.11.2015, 15:59   #8
yuliya20
Новичок
Джуниор
 
Регистрация: 25.11.2015
Сообщений: 2
По умолчанию нужна помощь

у меня задание на подобие это, но я работаю через вертуалку С++ Builder 6
код который есть, но выдает кучу ошибок
помогите сделать задание

1. Определить класс с именем Goods, содержащий следующие поля:
 название товара;
 номер накладной;
 количество единиц товара;
 стоимость товара в рублях.
Определить методы доступа к этим полям и операции извлечения и вставки для объектов типа Goods.
2. Написать программу, выполняющую следующие действия:
 ввод с клавиатуры данных в массив, состоящий из семи объектов типа Goods; записи должны быть размещены в алфавитном порядке по названиям товаров;
 вывод на экран информации о товаре, название которого введено с клавиатуры;
 если таких товаров нет, выдать на дисплей соответствующее сообщение.

Последний раз редактировалось yuliya20; 25.11.2015 в 16:05.
yuliya20 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с классами в C++ Ligeros905 Помощь студентам 0 24.03.2014 09:20
с++ работа с классами proef Помощь студентам 9 25.09.2013 00:04
Работа с классами RomiKon Помощь студентам 4 26.03.2013 21:21
работа с классами JinZh C++ Builder 2 20.04.2011 23:17
Работа с классами ImmortalAlexSan Помощь студентам 0 04.12.2010 14:07