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

Динамические массивы. Ошибка в процессе работы программы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массив структур Aeroflot. Сортировка, вывод. http://www.cyberforum.ru/cpp-beginners/thread705956.html
Помогите сделать задание в С++ 1.Описать структуру с именем Aeroflot, содержащую следующие поля: dest – название пункта назначения рейса, number – номер рейса, type – тип самолета. Написать...
C++ Класс Invoice (накладная) Вообщем проблема в том , что я не могу разобрать что и куда , подобного класса в полном описании найти не могу сама задача вбивает меня в ступор , если у кого будет время прошу помогите кодом с... http://www.cyberforum.ru/cpp-beginners/thread705951.html
C++ Хеш-таблицы: string subscript out of range
#include <iostream> #include <string.h> #include <string> using namespace std; typedef string nametype; struct celltype { nametype element; celltype* next;
C++ Двумерный массив. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.
Дано целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент. Характеристикой строки целочисленной матрицы назовем сумму ее отрицательное...
C++ Вычислить точную сумму ряда http://www.cyberforum.ru/cpp-beginners/thread705935.html
Всем привет!!! Нужна помощь в дописание программы. Суть такова: Нужно вычислить точную сумму ряда. Результат представить в виде обыкновенной дроби. Числовой ряд вида 1+1/n1+1/n2..., где...
C++ перевести код из паскаля в С++ program Terri; uses crt; const m=100; // Максимальный размер массива var mg:array of byte; // Матрица смежности stack:array of word; // Стек i,j:word; column,row:word; sp:word; ... подробнее

Показать сообщение отдельно
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
24.11.2012, 01:31
Судя по Вашему коду, Вы не умеете работать с указателями совершенно, так что мой совет - книжку в руки и учиться!!!

Исправил код, все изменения касаются только указателей. Не стал менять прототипы функций, изменил только содержимое в соответствии с тем, что Вы передаете, и изменил объявление x и способ вызова функций
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
#include<iostream>
#include<math.h>
#include <stdio.h>
#include <conio.h> 
#include<cstdlib>
 
using namespace std;
 
    void Vvod (double ** x, int n);
    void Print ( double ** x,int n);
    double Prod( double ** x, int n);
int main ()
{
int n;
    cout<<"VVEDITE N:"<<endl;
    cin>>n;
    double * x=0;
    
    Vvod(&x,n);
    Print (&x,n);
    
double g;
g= Prod(&x,n);
cout <<"g="<<g<<endl;
 
getch();
return 0;
}
void Vvod (double ** x,int n)//Нужно передать адрес указателя, а не копию самого указателя
{
int i;
*x= new double[n];
for (i=0;i<n;i++)
(*x)[i]=pow(i+1,1./2.0)-log(i+1.0);//
}
 
void Print ( double ** x,int n)
{
    int i;
    cout <<"Massiv X"<<endl;
for (i=0;i<n;i++)
 
cout <<(*x)[i]<<" ";
 
cout<<endl;
}
 
double Prod( double ** x,const int n)
{double sumplus=0,summinus=0;
    for (int i=0;i<n;i++)
    {
    if ((*x)[i]<0)
summinus+=(*x)[i];
    }
    for (int i=0;i<n;i++)
    {
    if ((*x)[i]>=0)
sumplus+=(*x)[i];
    }
    double P=sumplus*summinus;
return P;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru