Другое > Hard'n'Soft
Нужна помощь по сям
(1/1)
virf:
Нужно замутить передачу двумерного массива через параметр функции на C++.
.flint:
Так двумерные массивы в C++ -- суть указатели. Т.е, есть у тебя двумерный массив, скажем, array[][] из данных типа double. И есть функция function, в которую ты его и передаешь. Тогда, помня, что массивы и указатели в C++ мало чем отличаются, смотри, как это делается:

void function(double ** array)

Все, готово.
virf:
ошибку вроде не даёт в объявлении. не пойму только как её теперь вызвать.


float det(float **p, int n)
{
..if(n==1) return **p;
..float det=0;
..for(int i=0; int m=n>i; i++) {
....float **add = new float*[n-1];
....for(int i=0; i
Romasik (RS):
Во-первых, лучше в арифметических операциях юзать double, а не float. У второго есть свои глюки в некоторых реализациях.
Во-вторых, не det(add[][],n-1), а det(add,n-1), т.к. add у тебя и есть указатель.
ЗЫ: код не читал :)
ЗЫ2: при рекурсии удобно использовать статические переменные, чтобы они не переобъявлялись (статическая переменная - одна для всего исполняемого блока, объявляется как static )
virf:
det += p[0]*det(add, n-1)|;

[C++ Error] Unit1.cpp(24): E2314 Call of nonfunction
Навигация
Главная страница сообщений

Перейти к полной версии