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

вопрос про скобки - C++

Восстановить пароль Регистрация
 
lesorub_
2 / 2 / 0
Регистрация: 20.02.2011
Сообщений: 51
13.03.2011, 01:21     вопрос про скобки #1
Здравствуйте, получил задание написать программу, смысл которой заключается в умножении матрицы на столбец. Матрица статическая, функция умножения пишется собственная.

Программу написал, единственное, что не могу понять, почему без скобок по обе стороны указателя на тип (строка 51) функция не работает? Объясните пожалуйста этот момент, вот код:

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
#include <iostream>
 
using namespace std;
#define n 3
#define m 3
 
void product_mas_st(double *matrix, double *vector, double *product) //функция произведения cтатической матрицы на столбец
{ 
int i, j;
cout << "Произведение (A * B): " << endl;
for (i=0; i<n; i++) 
{ 
product[i] = 0;
for (j=0; j<m; j++) 
product[i] += matrix[i*m+j]*vector[j]; 
}
 
}
 
 
 
void main()
{ 
setlocale(LC_ALL, "Russian");
 
// Статистический массив
 
cout << "Статический массив\n\n";
 
int i,j;          
double matrix_st[n][m], vector_st[m], product_st[n];
 
cout << "Введите элементы матрицы A[" << n << "][" << m <<"]: ";
 
for(i=0; i<n; i++) 
for(j=0; j<m; j++) 
cin >> matrix_st[i][j];
 
for(i=0; i<n; i++){ 
    for(j=0; j<m; j++)
        cout << "\t" << matrix_st[i][j];
    cout << endl << endl;}
 
cout << "Введите элементы вектора B[" << m << "]: ";
for(j=0; j<m; j++)
    cin >> vector_st[j];
for(j=0; j<m; j++)
{cout << "\t" <<vector_st[j];
cout << endl << endl;}
 
product_mas_st((double*) matrix_st, (double *)vector_st, (double *)product_st);
for(i=0; i<n; i++) 
cout << "\t" << product_st[i] << endl << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2011, 01:21     вопрос про скобки
Посмотрите здесь:

C++ Вопрос про outtextxy()
Вопрос про память... C++
Вопрос про реестр C++
C++ Вопрос про конструктор
Вопрос про friend C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
instagib
122 / 85 / 3
Регистрация: 14.02.2011
Сообщений: 341
13.03.2011, 01:27     вопрос про скобки #2
lesorub_, не знаю на счет указателей. но мне известно что мол функция main должна возвращать значение..
int main()
return ;
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
13.03.2011, 01:39     вопрос про скобки #3
Цитата Сообщение от instagib Посмотреть сообщение
lesorub_, не знаю на счет указателей. но мне известно что мол функция main должна возвращать значение..
int main()
return ;
Зачем? void тоже работает.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
13.03.2011, 01:43     вопрос про скобки #4
Цитата Сообщение от Chelioss Посмотреть сообщение
Зачем? void тоже работает.
В стандарте языка нет такой перегрузки функции main().
instagib
122 / 85 / 3
Регистрация: 14.02.2011
Сообщений: 341
13.03.2011, 01:54     вопрос про скобки #5
lesorub_, попробуй написать без звездочек и скобок например
C++
1
product_mas_st(matrix_st, vector_st, product_st);
ибо обычно когда передают в функцию параметры, не создают их там же к примеру:

func(int x, int y);


а так func(x, y);
lesorub_
2 / 2 / 0
Регистрация: 20.02.2011
Сообщений: 51
13.03.2011, 02:04  [ТС]     вопрос про скобки #6
Цитата Сообщение от instagib Посмотреть сообщение
lesorub_, попробуй написать без звездочек и скобок например
C++
1
product_mas_st(matrix_st, vector_st, product_st);
ибо обычно когда передают в функцию параметры, не создают их там же к примеру:

func(int x, int y);


а так func(x, y);
пробовал, ошибка осталась
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
13.03.2011, 03:00     вопрос про скобки #7
Цитата Сообщение от asics Посмотреть сообщение
В стандарте языка нет такой перегрузки функции main().
Я пока новичек. У меня в Visual Studio 2008 все прекрасно работает.
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
13.03.2011, 04:15     вопрос про скобки #8
В 51 строке перед тем, как передать параметры в функцию, ты приводишь их к соответствующим типам. А если убрать скобки, то получится синтаксическая ошибка - повторное объявление функции
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.03.2011, 13:06     вопрос про скобки
Еще ссылки по теме:

Задача про скобки C++
Вопрос про табуляцию в C++ C++
Для каждой открывающей скобки найти позицию ей соответствующей закрывающей скобки C++

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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
13.03.2011, 13:06     вопрос про скобки #9
Chelioss, если работает, то это ещё не значит, что так правильно. Прислушайтесь к asics и не зависимо от того, новичок вы или опытный программист, делайте так, как правильно, а не так, как работает.
Yandex
Объявления
13.03.2011, 13:06     вопрос про скобки
Ответ Создать тему
Опции темы

Текущее время: 23:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru