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

флаг заполнения масива через перегрузку - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Программа, выводящая на экран информацию о наличии товаров на складе http://www.cyberforum.ru/cpp-beginners/thread840609.html
Используя структуры, составить программу, выводящую на экран информацию о наличии товаров на складе (наименование, артикул, дата получения, единица измерения, количество, цена).
C++ Найти максимальный элемент массива и вывести последний четный элемент Короче нужно чтобы програма нашла максимальный елемент масива и выводила на екран последное четное число масива #include<iostream> using namespace std; int main() {int i,n,z; float *a; float s,max=0; cout <<"Vvedite k-st elementov masiva "; cin>>n; a=(float*)malloc(n*sizeof(float)); http://www.cyberforum.ru/cpp-beginners/thread840606.html
C++ Найдите общее количество проданных за день дисков с классической, эстрадной, джазовой и другой музыкой.
Найдите общее количество проданных за день дисков с классической, эстрадной, джазовой и другой музыкой. Названия направлений и количество продаж хранятся в соответствующих массивах. Определите направления, по которым количества продаж были ниже среднего.
Даны действительное a и натуральное n C++
даны действительное a и натуральное n. вычислить: 1. a!=1*2*3...*a; 2.a^n=a*a*...*a (n раз) 3.1 + 1/2 + 1/3 +1/4 + … + 1/n; 4.1 + 2 + 4 + 8 + … + 2^10; 5.1+2+6+24+...+a!
C++ Дана матрица. Найти максимальный по модулю элемент матрицы и переставить строки и столбцы http://www.cyberforum.ru/cpp-beginners/thread840587.html
1. Дана матрица А(nxn). Найти максимальный по модулю элемент матрицы. Переставить строки и столбцы матрицы таким образом, чтобы максимальный по модулю элемент матрицы был расположен на пересечении k - той строки и k - того столбца.
C++ Как заполнить квадратную матрицу числами по порядку? Осталась надежда только на вас! Не могу понять как сделать чтобы матрица заполнялась в цикле определенным порядком чисел, куда не смотрел везде генерируются случайный порядок. Подскажите как написать код, чтобы матрица выглядела так: 1 2 3 4 5 5 4 3 2 1 1 2 3 4 5 5 4 3 2 1 1 2 3 4 5 подробнее

Показать сообщение отдельно
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
22.04.2013, 11:42     флаг заполнения масива через перегрузку
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
#include <iostream>
#include <stdexcept>
 
class ArrayIsFilledException : public std::exception
{
};
 
class IntArray
{
public:
    IntArray(int capacity):
        m_size(0),
        m_capacity(capacity),
        m_array(new int[capacity])
    {
    }
    
    virtual ~IntArray()
    {
        delete[] m_array;
    }
    
    int size() const
    {
        return m_size;
    }
    
    int capacity() const
    {
        return m_capacity;
    }
    
    virtual void push_back(int value)
    {
        if (size() == capacity())
            throw ArrayIsFilledException();
        
        m_size += 1;
        m_array[size() - 1] = value;
    }
    
    int& operator[](int index)
    {
        if (!(0 <= index && index < size()))
            throw std::out_of_range("IntArray out of range");
        
        return m_array[index];
    }
    
    const int& operator[](int index) const
    {
        if (!(0 <= index && index < size()))
            throw std::out_of_range("IntArray out of range");
        
        return m_array[index];
    }
    
private:
    int m_size;
    int m_capacity;
    int *m_array;
};
 
class IntArrayWithFillFlag : public IntArray
{
public:
    IntArrayWithFillFlag(int capacity):
        IntArray(capacity),
        m_filled_flag(false)
    {
    }
    
    bool is_filled() const
    {
        return m_filled_flag;
    }
    
    virtual void push_back(int value)
    {
        try
        {
            IntArray::push_back(value);
        }
        catch (const ArrayIsFilledException&)
        {
            m_filled_flag = true;
        }
    }
    
private:
    bool m_filled_flag;
};
 
int main()
{
    IntArrayWithFillFlag arr(10);
    
    for (int i = 0; i < arr.capacity() + 5; ++i)
    {
        arr.push_back(i);
        std::cout << std::boolalpha << arr.is_filled() << std::endl;
    }
    
    for (int i = 0; i < arr.size(); ++i)
        std::cout << arr[i] << "  ";
    std::cout << std::endl;
    
    return 0;
}
 
Текущее время: 06:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru