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

Работа с одномерным целочисленным массивом в функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка компиляции: идентификатор не определен http://www.cyberforum.ru/cpp-beginners/thread1775673.html
Приветствую всех. У меня такой вопрос , почему когда я пишу такой код, мне выдает ошибку на car* p_catalo = new car (идентификатор не определен.) Что я забыл написать? struct Car { string name; int year; }; int main()
C++ Функции, вычислить сумму n первых членов арифметической прогрессии 1. Исходные данные должны вводиться в функции main(). 2. Первая функция должна возвращать заданную величину. 3. Во второй функции обеспечить контроль правильности исходных данных. Вторая функция, кроме вычисления заданной величины, должна возвращать признак правильности исходных данных. 4. В функции main() вывести результат работы первой функции и результат работы второй функции или сообщение... http://www.cyberforum.ru/cpp-beginners/thread1775662.html
Написать комментарии к коду C++
Помогите написать комментарии к этому заданию. И подробно прояснить. #include <cstdlib> #include <cstdio> #include <string.h> class OneArmedBandit { int Chips; int **Ring; void RandQueue(int); public:
C++ Найти сумму элементов матрицы в тех столбцах, которые содержат хотя бы один отрицательный элемент
Найти сумму элементов в тех столбцах, которые содержат хотя бы один отрицательный элемент. Вот, написал код, а выводит только матрицу, которую вводим вручную и все. В чем ошибки? #include <iostream> #include <stdio.h> #define N 30 int main(void) { int i,j, n, m, sum;
C++ Метод простой итерации http://www.cyberforum.ru/cpp-beginners/thread1775630.html
Метод простой итерации для решения систем линейных алгебраических уравнений
C++ Вектор объектов класса Всем привет! Несколько недель назад я писал сюда по поводу одной задачи. Она заключается в том, чтобы реализовать класс "Зоомагазин" с полями: тип животного, пол, цена, количество, а также придумать для этого класса функционал. Я решил сделать функции добавления животных в магазин, просмотр списка животных и их покупка. Для того, чтобы удалять животных из списка при покупке, я решил использовать... подробнее

Показать сообщение отдельно
Kenny95
0 / 0 / 0
Регистрация: 26.02.2013
Сообщений: 15

Работа с одномерным целочисленным массивом в функции - C++

04.07.2016, 19:27. Просмотров 160. Ответов 5
Метки (Все метки)

Здравствуйте. Я написал несколько функций по работе с массивом. В dimentInt() я объявляю массив и передаю его в addNewElIDA, которая добавляет новый элемент в массив на указанное место. Дело в том, что функция addNewElIDA работает как надо. но когда я из меню функции dimentInt() вызываю функцию shawIDA, то выводится массив IDA, но новый элемент остаётся на последнем месте и вместо значения выводится белеберда. Что я делаю не так?

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
void shawIDA(int *IDA, int sizeIDA) {
    system("cls");
    for (int i = 0; i < sizeIDA; i++) {
        cout << IDA[i] << " ";
    }
    _getch();
}
 
void addNewElIDA(int *IDA, int &sizeIDA) {
    int number, pos, temp;
    int *tempIDA = new int(sizeIDA);
    for (int i = 0; i < sizeIDA; i++) {
        tempIDA[i] = IDA[i];
    }
    sizeIDA++;
    IDA = new int(sizeIDA);
    for (int i = 0; i < sizeIDA-1; i++) {
        IDA[i] = tempIDA[i];
    }
    system("cls");
    cout << "Введите номер нового элемента: ";
    while (!(cin >> pos) || (cin.peek() != '\n') || ((pos < 0) || (pos > sizeIDA))) {
        cin.clear();
        while (cin.get() != '\n');
        cout << endl << "Введено не корректное значение!" << endl;
        cout << "Введите номер нового элемента: ";
    }
    cout << "Введите значение нового элемента: ";
    while (!(cin >> number) || (cin.peek() != '\n')) {
        cin.clear();
        while (cin.get() != '\n');
        cout << endl << "Введено не корректное значение!" << endl;
        cout << "Введите значение нового элемента: ";
    }
    IDA[sizeIDA - 1] = number;
    for (int i = sizeIDA-1; i > pos; i--) {
        temp = IDA[i-1];
        IDA[i-1] = IDA[i];
        IDA[i] = temp;
    }
    cout << endl;
    for (int i = 0; i < sizeIDA; i++) {
        cout << IDA[i] << " ";
    }
    _getch();
}
 
void dimentInt() {
 
    int choiceAct, sizeIDA;
    system("cls");
    cout << "Введите размер одномерного целочисленного массива массива: ";
 
    while (!(cin >> sizeIDA) || (cin.peek() != '\n') || (sizeIDA < 1)) {
 
        cin.clear();
        while (cin.get() != '\n');
 
        system("cls");
        cout << "Введено не корректное значение!" << endl;
        cout << "Введите размер одномерного целочисленного массива массива: ";
    }
 
    int *IDA = new int(sizeIDA);
 
    do {
        system("cls");
        cout << "Выберете действие: " << endl;
        /*...*/
        cout << "\t2) Вывести массив." << endl;
                /*...*/
        cout << "\t10) Добавить новый элемент массива." << endl;
        /*...*/
        cout << "Ваш выбор: ";
        while (!(cin >> choiceAct) || (cin.peek() != '\n') || ((choiceAct < 1) || (choiceAct > 12))) {
            cin.clear();
            while (cin.get() != '\n');
            system("cls");
            cout << "Введено не корректное значение!" << endl;
            cout << "Выберете действие: " << endl;
            /*...*/
            cout << "\t2) Вывести массив." << endl;
                        /*...*/
            cout << "\t10) Добавить новый элемент массива." << endl;
            /*...*/
            cout << "Ваш выбор: ";
        };
        switch (choiceAct) {
            /*...*/
            case 10: {
                addNewElIDA(IDA, sizeIDA);
                break;
            }
                        /*...*/
        }
    }
    while (choiceAct != 12);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru