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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
faradej
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 67
#1

Массивы и функции - C++

06.05.2013, 18:32. Просмотров 247. Ответов 6
Метки нет (Все метки)

Здравствуйте. Очень интересная ошибка возникает в результате работы этого когда:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void schet(double result[], int ar_size);
int main()
{
    using namespace std;
    double * result = new double;
    int i = 0;
    int ar_size = 10;
    schet(result, ar_size);
    cout << result[0];
    system ("pause");
    return 0; 
}
void schet(double result[], int ar_size)
{
    int summa = 0;
    cout << "Pls enter score: " << endl;
    for (int j=0; j<ar_size && cin >> result[j]; j++)
{
    cout << "fff" << endl;
}
 
}
Когда нажимаю "Начать отладку" в VS2010, то первый тест, при вводе значений, проходит успешно а на второй раз отправляет читать отладчик. Я так понимаю что не правильно записываю данные в массив, но не знаю что именно.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2013, 18:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массивы и функции (C++):

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) - C++
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

массивы и функции - C++
Хочу решить задачку через функции, знаю что можно сделать проще))) ругается на &quot;синтаксическая ошибка: идентификатор &quot;i&quot;&quot;в строке с...

Функции / Массивы - C++
задача 5\вариант2 &quot;Написать программу, определяющую образуют ли элементы целочисленных массивов А и B неубывающую...

Массивы и функции - C++
Вот задачка: Даны натуральное число p и вещественные квадратные матрицы A, B, и C размером 4х4. Получить (АxВxС)^р, используя...

Си++ массивы, функции - C++
Дан массив B, нужно с помощью написания отдельных функции, определить количество нулевых ячеек в нем, и сжать его (т.е. выкинуть из его...

Массивы и функции - C++
Функция такова y=1/2(одна вторая) ln x (логарифм от x вроде) y=1/2 ln x Попрошу вас дорогие программисты , в с++ переделать с...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
hofmn
Helter Skelter
61 / 61 / 1
Регистрация: 19.09.2012
Сообщений: 133
06.05.2013, 18:41 #2
Что вообще должна делать программа? Вычислять сумму элементов массива?
0
faradej
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 67
06.05.2013, 18:47  [ТС] #3
Ну для начала записать введенные значения в массив, максимум 10 числовых значений. Проблема в том что в таком варианте программа работает только после первого запуска, а в следующие запуски ошибка.
0
BabyGluk
26 / 26 / 4
Регистрация: 10.04.2013
Сообщений: 167
06.05.2013, 18:51 #4
Попробуй так, нету возможности запустит,пишу с моб.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
* * using namespace std;
* * 
* * int i = 0;
* * int ar_size = 10;
double * result = new double[ar_size];
 
 
* * schet(result, ar_size);
* * cout << result[0];
delete [] result;
* * system ("pause");
* * 
}
1
faradej
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 67
06.05.2013, 18:56  [ТС] #5
Ну так работает. Но я не понимаю почему, вот аналогичный код с предыдущего упражнения и он работает. Почему?
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
int main()
{
    using namespace std;
    int x = 0;
    int y = 0;
    int i = -1;
    double * x_digit = new double;
    double * y_digit = new double;
    double * result = new double;
    do
    {
        i++;
        cout << "Pls enter first number: ";
        cin >> x_digit[i];
        cout << "Pls enter second number: ";
        cin >> y_digit[i];
        cout << endl;
    }
    while(x_digit[i] != 0 && y_digit[i] !=0);
    garm(x_digit, y_digit, result, i);
    i=i-1;
    for(int w = 0; w <= i; w++)
    {
    cout << "Srednee garmonichnoe " << w << " :" << result[w] << endl;
    };
    system ("pause");
    return 0; 
}
void garm(double x_digit[], double y_digit[], double result[], int i)
{
i = i - 1;
int j;
for (j=0; j<=i; j++)
{
    result[j] = 2 * x_digit[j] * y_digit[j] / (x_digit[j] + y_digit[j]);
}
 
}
0
BabyGluk
26 / 26 / 4
Регистрация: 10.04.2013
Сообщений: 167
06.05.2013, 19:13 #6
Хз, но точно знаю что динамический масив нужно удалять в конце и задавать чтоль размер масива когда его создаешь..
1
faradej
0 / 0 / 0
Регистрация: 25.04.2013
Сообщений: 67
06.05.2013, 19:21  [ТС] #7
Ну может тогда недотестил. Спасибо.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2013, 19:21
Привет! Вот еще темы с ответами:

функции (массивы) - C++
Даны 3 массива найти количество отрицательных элементов каждом массиве и суммы отрицательных элементов в этих массивах и посчитать: ...

Массивы и функции - C++
1.1)Записать каждое число в виде целой десятичной, восмеричной и шестнадцатиричной константы: 212 45 174 99 1.2)записать...

Массивы + функции - C++
Напишите программу, определяющую, образуют ли элементы целочисленного массива A(n) невозрастающую последовательность. Значение n следует...

Функции и массивы в С++ - C++
Помогите с решением зада(если не трудно). 1.Одномерный массив: Используя функции сформировать с помощью ДСЧ одномерный массив и вывести...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
06.05.2013, 19:21
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru