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

Определить, пуст ли данный элемент массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция в строке должна вычислять количество слов (слова разделяются пробелом) http://www.cyberforum.ru/cpp-beginners/thread865113.html
int sum (const char *pS ) { const char *p (pS); int n (0); while ( *p ) { if ( isspace (*p)) ++n; p++; } return n+1;
C++ Вызов функции, которая возвращает 2 параметра Видимо я что-то принципиально не понимаю, что же тут не так #include <iostream> #include <string> #include <iostream> #include <string> #include <math.h> #include <time.h> #include <stdlib.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread865109.html
C++ Конструкторы с параметром, копии и перегрузка операций
Здравствуйте, есть программка следующего содержания: #include "stdafx.h" #include "conio.h" int n1, n2; class LIST { private: int info; LIST *next; LIST *prev; public:
C++ отображение графических примитивов
не подскажите как нарисовать круг, треугольник и домик. Ищу в интернете не как не могу найти(
C++ Прокомментировать функционал программы http://www.cyberforum.ru/cpp-beginners/thread865092.html
//----------------------------------------------------------------------------------------------------- #pragma hdrstop //----------------------------------------------------------------------------------------------------- #include <conio.h> //áèáëèîòåêà ïîäêëþ÷åíèÿ ôóíêöèè getch() #include <iostream.h> //áèáëèîòåêà äëÿ cin è cout #include <malloc.h> //áèáëèîòåêà äëÿ äèíàìè÷åñêîãî...
C++ Определение числовых коэффициентов О-нотации Здорова господа! Есть задачка: Изучите О — нотацию (параграф 17.1.2). Выполните измерения для операций стандартных контейнеров с целью определения числовых коэффициентов вовлеченных в О — нотацию. Что такое О большое я то понял, токо как мне определить коэффициенты? Возьмем пока просто контейнер vector у него по таблице из параграфа 17.1.2 видно что операция operator постоянная, то есть не... подробнее

Показать сообщение отдельно
o33ik
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228

Определить, пуст ли данный элемент массива - C++

14.05.2013, 20:22. Просмотров 275. Ответов 0
Метки (Все метки)

Есть массив обьектов некоторого класса(GOODS goods[]). Хочу написать ф-цию которая покажет пользователю, какие позиции массива пусты, чтоб потом можно было туда чтото записать. Сообственно надо ето както проверить. Я пока разписую методы для всех класов, поетму не могу взять и скомпилировать програму, поетому пишу сюда. Такой вариант (goods[i]==0) как мне кажется не проканает.

Если надо код то вот:
Кликните здесь для просмотра всего текста
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
128
129
130
#include <iostream>
#include <string>
#include <string.h>
 
#define GOODS_IN_SHOP 255
 
using namespace std;
 
class GOODS
{
protected:
    bool ANAVALIBLE;
    string NAME;
    string COUNT_TYPE;
    int COUNT;
    int PRICE;
    int PRICE_;
public:
    void SELL(int count)
    {
        COUNT=COUNT-count;
    }
    bool ANAVALIBLE(int count, string name)
    {
        if(COUNT>count && NAME==name)
            return true;
        else
            return false;
    }
    int REST(int get_money, int count)
    {
        return get_money - (PRICE+PRICE_)*count;
    }
    void ADD_NEW_GOOD(int numb)
    {
        cout << "\n\t\tGood #" << numb << "\n\tEnter Name:\n\t";
        cin >> NAME;
        cout << "\n\tEnter count type:\n\t";
        cin >> COUNT_TYPE;
        cout << "\n\tEnter count:\n\t";
        cin >> COUNT;
        cout << "\n\tEnter price:\n\t";
        cin >> PRICE;
        cout << "\n\tEnter mark-up:\n\t";
        cin >> PRICE_;
    }
}
 
class SHOP
{
protected:
    GOODS goods[GOODS_IN_SHOP];
    int ALL_CASH;
public:
     void ADD_GOOD(int position)
     {
         goods[position-1].ADD_NEW_GOOD(position);
     }
     int SELL(string good_name, int good_count, int money)
     {
         int NUMBER=-1;
         for(int i=0; i<GOODS_IN_SHOP; i++)
         {
             bool ANAV=false;
             ANAV = goods[i].ANAVALIBLE(good_count, good_name);
             if (bool ANAV=true)
             {
                 NUMBER = i;
                 break;
             }
             else
                 continue;
         }
         if(NUMBER>=0)
         {
            goods[NUMBER].SELL(good_count);
            ALL_CASH = ALL_CASH + money - goods[NUMBER].REST(money, good_count);
            return goods[NUMBER].REST(money, good_count);
         }
     }
}shop;
 
class DIRECTOR: SHOP
{
public:
    void TAKE_CASH()
    {
    }
    void GET_CASH()
    {
    }
    void ORDER_GOODS()
    {
    }
    void ADD_GOODS()
    {
        int position;
        cout << "\n\tEnter position in list, where you want add new good: ";
        cin >> position;
        shop.ADD_GOOD(position);
    }
}
 
 
class SELLER: SHOP
{
protected:
    int get_cash;
    int take_cash;
    string good_name;
    int good_count;
public:
    void SELL()
    {
        cout << "\n\tEnter name of good which you want buy: ";
        cin >> good_name;
        cout << "\n\tEnter count of good: ";
        cin >> good_count;
        cout << "\n\tPlease, take a money: ";
        cin >> get_cash;
        if (shop.SELL(good_name, good_count, get_cash)<0)
            cout << "\n\tNot enough money.";
        else
            cout << "\n\tThank you for your purchase. Your rest: " << shop.SELL(good_name, good_count, get_cash) << " . Come more) \n";
    }
}
 
void main()
{
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru