Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Динамические структуры данных. Описать структуру с именем NOTE https://www.cyberforum.ru/ cpp-beginners/ thread824983.html
Описать структуру с именем NOTE, с полями: фамилия, номер телефона, год рождения. Сформировать односвязный список. Реализовать просмотр списка в прямом и обратном порядке, а также добавление нового элемента в список в заданную позицию. Помогите, пожалуйста!
C++ Интеграл Справа задача по С++
Здравствуйте. написал программу и разделил его по блокам но сейчас я тут выложу объеденную #include <stdio.h> #include <locale.h> void interg(function f, double x0, double x1, int n, double x, double y) { int i; double dx;
C++ Сортировка. Счетчики Всем привет, достаточно долго сижу на этом сайте, вот в первые решил попросить помощи, надеюсь на вас! Вообщем задание было следующее: Отсортировать каждый столбик двумерной матрицы по возрастанию различными способами и вывести на экран количество сравнений и перестановок в каждой сортировке. Собственно программу то я написал, а вот со счетчиками уже около месяца разобраться до конца не могу. ... https://www.cyberforum.ru/ cpp-beginners/ thread824980.html C++ В одномерном массиве, вычислить много чего. Всё в описании. Спасите https://www.cyberforum.ru/ cpp-beginners/ thread824979.html
Помогите пожалуйста!.. Вводить из клавиатуры массивы и обрабатывать их, пока на запрос “Хотите продолжать работу дальше (да, нет) ?” пользователь не ответит “нет”. Введены линейные массивы обрабатывать за заданными алгоритмами а), б) и в), какие оформить в виде подпрограмм (функций). В подпрограммах-функциях ни введения, ни выведения данных, не должно быть. Главная функция должна вводить данные...
Соединение нескольких одномерных массивов в одну программу C++
Помогите пожалуйста решить 4 задачи так, чтобы они были записаны одной программой. 1. Найдите количество элементов, находящихся в диапазоне между двумя заданными числами. 2. Упорядочите элементы массива по убыванию модулей элементов. 3. Найдите сумму элементов массива, расположенных после первого положительного элемента. 4. Из данного массива и другого массива такого же типа, но другой...
C++ Ассоциативный массив в С++ (типо пэхапе) Где можно посмотреть такой класс? Сделал такое, но пространства имен не изучал еще. Как сделать так что бы можно было написать: using namespace Ass; и мне бы не приходилось каждый раз писать расширение области видимости в индексах Ass::ID, Ass::SCORE using namespace std; class Ass { private: https://www.cyberforum.ru/ cpp-beginners/ thread824974.html
C++ Погрешность,значение функции.Задача https://www.cyberforum.ru/ cpp-beginners/ thread824967.html
У нас есть полином, для которого нужно составить таблицу значений на интервале с шагом 0.05 и точностью 10^4 и функциональный ряд для известной функции, значение которой нужно вычислить с заданной точностью ε для любого заданного x, используя рекурентные соотношения между членами ряда, и сравнить со значением, что можно получить из соответствующей функции языка С- P(x) = 0.374x5−...
C++ Программа работающая с файлом
Друзья, помогите решить следующую задачу: Дан файл, содержащий текст на русском языке. Выбрать из него те символы, которые встречаются только два раза, в том порядке, в котором они встречаются в тексте.
C++ ПОмогите найти ошибку https://www.cyberforum.ru/ cpp-beginners/ thread824959.html
Программа работает, но она выдаёт все строки одинаковые .А они должны быть разные. Вычислить m значений заданной функции f(x) на отрезке . Результаты оформить в виде табл. 1. Столбцы таблицы: 1 — значение xi; 2 — значение функции f1(xi), вычисленное с использованием библиотечных функций компилятора; 3 — значение функции f2(xi), вычисленное с помощью явного разложе-ния в ряд (итерационный...
C++ Рекурсия функции, определитель матрицы https://www.cyberforum.ru/ cpp-beginners/ thread824957.html
Пишу функцию для нахождения определителя n-ой матрицы, в конце концов я должен вызывать функцию внутри себя, но при компиляции в 24 строке выдает ошибку "opr cannot be used as a function". float opr(float **M,int n) { float p=1,opr,buf; int k,k2; bool is_null, done; if(n==1) return M; else if(n==2) return M*M-M*M; else { if(M==0) { for(k=1;k<n;k++) {if(M!=0) {
Текст с консоли в int C++
while(true) { system("cls"); cout << "Введите номер комманды:\n"; int номер_комманды = -1; cin >> номер_комманды; if (номер_комманды == 1) break; } Почему когда я ввожу буквы в консоль, он просто пролетает? И начинает заного крутить цикл и нифнига не делает. Или как можно поставить запрет на все кроме цифр?
C++ Нюансы работы с массивами: как правильно передать массив в функцию в качестве аргумента? Здравствуйте!!!Начал недавно изучать с++ и с по книге!!!там есть пример и возник небольшой вопрос к нему!Скину весь код, чтобы было понятнее!! #include <cstdio> #include <iostream> #include <cstdlib> #include <ctype.h> using namespace std;
15 / 15 / 5
Регистрация: 07.02.2013
Сообщений: 123
01.04.2013, 18:59 0

Перенагрузка масивов - C++ - Ответ 4344194

01.04.2013, 18:59. Показов 592. Ответов 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
#include <iostream>
using namespace std;
 
class Safe
{
    int size;     //Размер массива
    int *arr;   //Указатель для хранения массива
    int how_add; //Сколько было добавлено памяти
public:
    Safe (int SIZE); //Конструктор с параметром
    Safe (const Safe &object); //Конструктор копий
    ~Safe ();        //Деструктор
    void Set_to (); //Дополнение массива значениями
    int View (char flag[8]);  //Получение информации с private переменных
    int &operator[] (int i); //Перегрузка оператора индексирования + контроль границ
    friend ostream &operator<< (ostream &stream, Safe &object);  //Вывод всего массива
    friend istream &operator>> (istream &stream, Safe &object); //Заполнение массива с начала
    friend Safe &operator+ (Safe &object, int ADD);  //Добавление размера
    friend Safe &operator- (Safe &object, int ROB); //Уменьшение размера
};
 
Safe::Safe (int SIZE) //Конструктор с параметром
{
    size = SIZE;
    arr = new int[size];
    cout << '\a';
}
Safe::Safe (const Safe &object) //Конструктор копий
{
    size = object.size;
    arr = new int[size];
    for (int i = 0; i < object.size; i++)
        arr[i] = object.arr[i];
    how_add = object.how_add;
}
Safe::~Safe () //Деструктор
{
    delete[] arr;    cout << '\a' << '\a';
}
 
void Safe::Set_to () //Дополнение массива значениями
{
    for (int i = size - how_add; i < size; i++)
        cin >> arr[i];
}
int  Safe::View (char flag[8]) //Получение информации с private переменных
{
    if (flag == "size" )        return size;        
    else if (flag == "how_add") return how_add;
    else return 0;
}
 
int &Safe::operator[] (int i) //Перегрузка оператора индексирования + контроль границ
{
    if (i < 0 || i > size-1)
        cout << endl << "Warning! Exceeded! " << endl;
    else return arr[i];
}
ostream &operator<< (ostream &stream, Safe &object) //Вывод всего массива
{
    for (int i = 0; i < object.size; i++)
        stream << object[i] << " ";
    return stream;
}
istream &operator>> (istream &stream, Safe &object) //Заполнение массива с начала
{
    for (int i = 0; i < object.size; i++)
        cin >> object[i];
    return stream;
}
Safe &operator+ (Safe &object, int ADD) //Добавление размера
{
    int *temp = object.arr;
    object.arr = new int[object.size+ADD];
    for (int i = 0; i < object.size; i++)
        object.arr[i] = temp[i];
    object.size += ADD;
    object.how_add = ADD;
    delete[] temp;
    return object;
}
Safe &operator- (Safe &object, int ROB) //Уменьшение размера
{
    int *temp = object.arr;
    object.arr = new int[object.size-ROB];
    for (int i = 0; i < object.size-ROB; i++)
        object.arr[i] = temp[i];
    object.size -= ROB;
    delete[] temp;
    return object;
}
 
int main ()
{   setlocale(LC_ALL, "Russian");
 
    int SIZE, add;
    char choice = 'y', way;
 
    cout << "Размер массива: ";    cin  >> SIZE;
    Safe mass(SIZE); //Объект класса Safe – массив размера SIZE
 
    cout << "Заполнение: ";       cin >> mass;
    cout << "Просмотр массива: "     << mass << endl;
    while (true)
    {
        cout << endl << "Добавить размер: ";   cin >> add;     
        mass+add; //Увеличение размера массива. Перегруженный оператор +int
 
        again:
        cout << "Заполнение. С начала[b] или продолжать[c] : ";
        cin >> way;
        if (way == 'c')  { cout << "Продолжение: ";      mass.Set_to(); }
        else if (way == 'b') { cout << "С начала: ";     cin >> mass;   }
        else goto again;
 
        cout << "Обновленный массив: " << mass          << endl;
        cout << "Размер: "            << mass.View("size")     << endl;
        cout << "Сколько добавили: "   << mass.View("how_add") << endl;
        cout << "Continue? [y/n]: ";      cin >> choice;
        if (choice == 'y') continue;
        else break;
    }
    system("pause");
    return 0;
}


Вернуться к обсуждению:
Перенагрузка масивов C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.04.2013, 18:59
Готовые ответы и решения:

Перенагрузка функции
Надо написать с помощю перегагрузки такую задачу: Нахождение максимума двух, трех, четырех целых...

Объединение масивов
Итак есть задание:&quot; n- количество масивов какие нужно обеденить, a- масив указателей на масивы...

Обработка масивов
Задана матрица размерностью N * M . Поменять местами строки матрицы по алгоритму : 1 с последним ,...

Сортировка масивов
Сабж. Не могу додуматься до решения, особенно вторая задача. 1. Организуйте массив, содержащий 20...

6
01.04.2013, 18:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.04.2013, 18:59
Помогаю со студенческими работами здесь

Сортировка масивов
Посмотрите пжл что не так# include &lt;iostream&gt; using namespace std; int main() {int...

Создание масивов
unsigned char buffer; evt_le_meta_event* meta = (evt_le_meta_event*)(buffer + HCI_EVENT_HDR_SIZE +...

Сортировка двух масивов с++
Помогите разработать програму, которая прописовает все числа, которые не повторяються с масива А(n)...

Обработка двумерных масивов
Задана матрица А(n,n). Определить максимальный элемент среди элементов матрицы, расположенных выше...

Обработка одномерных масивов.
1) Найти максимальный элемент массива A. 2) Найти среднее арифметическое элементов массива В. A...

Програма на масив масивов
Помогите написать задачу, очень надо... Я в с++ вааше 0... Ввести прямоугольною матрицу целых...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru