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

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

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

Двумерные массивы и возврат значения из функции - C++

04.03.2014, 14:13. Просмотров 253. Ответов 1
Метки нет (Все метки)

Доброго времени суток уважаемые фуромчане!
Решил обратиться к более опытным людям ибо сам допереть не могу
Ситуация вот в чём.Нужно написать программу которая бы выделяла динамическую память под двумерный массив?передавала его в
функцию,а та в свою очередь проверяла бы являются ли элементы этого двумерного массива числами фибоначи.
Задача до безобразия простая по идее.Но вот реализованная мною программа как то не правильно возвращает результат из функции
Не могу понять в чём дело.Понятно что в приведённом мною ниже листинге нужно ещё реализовать освобождение памяти,с этим вопросов нет.
А вот с функцией...,может я не правильно передал двумерный массив?
Буду признателен за замечания по теме.


#include <cstdlib>
#include <iostream>

using namespace std;
int functFibon(int** arr,int,int);// прототип функции


int main(int argc, char *argv[])
{
int i,j;

cout<<"Enter your matrix"<<endl;
int x,y;
cout<<" lines-";cin>>x;//строки

cout<<" columns-";cin>>y;//столбцы



int **neo = new int* [x]; // х строк
for (i = 0; i < x; i++)
neo[i] = new int [y];// у столбцов



for (i=0;i<x;i++)
{
for(j=0;j<y;j++)
cin>>neo[i][j];
}
cout<<endl;
for (i=0;i<x;i++)
{
for(j=0;j<y;j++)
cout<<"\t"<<neo[i][j]<<"\t";// вывод матрицы на экран
cout<<endl<<endl;
}
////////////////////
for (i=0;i<x;i++)
{
int r;
for(j=0;j<y;j++)

r=functFibon(neo,j,i);

if (r==1)
cout<<"Line "<<i+1<<" Fibonacci numbers not found "<<endl;
else
cout<<"Line "<<i+1<<" found Fibonacci numbers - "<<r<<endl;
}
system("PAUSE");
return EXIT_SUCCESS;
}



int functFibon(int** arr,int m,int n)//функция проверки числа
{
int r=0;
for (int i=0;i<=n;i++)
{
for (int j=2;j<=m;j++)
if ((arr[i][j]=((arr[i][j-1])+(arr[i][j-2]))))
{

r=arr[i][j];
}
else
r=0;
return r;
}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2014, 14:13     Двумерные массивы и возврат значения из функции
Посмотрите здесь:

Возврат значения функции - C++
Что такое возврат значения функции? я уже всю голову изломал, что и куда возвращается? в гугле нашёл мол возвращается результат (куда? в...

Возврат значения из полиморфной функции - C++
Доброго времени суток всем. Ребят не знаю как правильно сформулировать свой вопрос. Суть вот в чем: В базовом классе Cell определена...

Возврат копии значения из функции - C++
Сегодня нашел информацию о том, что можно сохранять ссылку на временный объект, например #include &lt;iostream&gt; int foo() { int...

Неправильный возврат значения функции - C++
При компиляции если значение меньше или равно 100 программа прекращает работу а если значение выше 100 то работает нормально. ...

Двумерные массивы и функции!!! - C++
Ребят,нужно ниписать прогу,которая будет перемножать 2-ый массив с использованием функций! я неким чудом ввела массив,а вот с...

Функции и двумерные массивы - C++
Добрый вечер.... Очень нужна помощь в решении задачи... Отсортировать элементы каждой строки квадратной матрицы размерности N по...

Двумерные массивы C++.Функции. - C++
Помогите пожалуйста,очень нужно. В каждой строке матрицы n*m вместо максимального элемента записать количество положительных элементов...

Двумерные массивы и функции - C++
Помогите пожалуйста с заданием: Заполнить квадратную матрицу случайными числами (функция). Написать функцию для поиска минимального...

Возврат значения через параметр функции - C++
Пишу функцию,которая должна создавать динамическую матрицу,а затем возвращать ее через параметр. Правильно ли я понимаю,что для этого надо...

Двумерные массивы через функции - C++
В задании нужно найти сумму матриц. Первую ввести(я зарандомил ее). Вторая это транспонированная к данной. Найти суму двух матриц....


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Naudiz
14 / 12 / 1
Регистрация: 04.11.2011
Сообщений: 137
04.03.2014, 15:00     Двумерные массивы и возврат значения из функции #2
Ychenik007, пожалуйста заключайте свой код в тэги в дальнейшем.

Цитата Сообщение от Ychenik007 Посмотреть сообщение
if ((arr[i][j]=((arr[i][j-1])+(arr[i][j-2]))))
Скорее всего имелось в виду(63-я строка):
C++
1
if ((arr[i][j]==((arr[i][j-1])+(arr[i][j-2]))))
Добавлено через 32 минуты
Цитата Сообщение от Ychenik007 Посмотреть сообщение
int functFibon(int** arr,int m,int n)//функция проверки числа
{
int r=0;
for (int i=0;i<=n;i++) //Зачем нужен этот цикл, если поиск чисел Фибоначи осуществляется
//в пределах строки
{
for (int j=2;j<=m;j++)
if ((arr[i][j]=((arr[i][j-1])+(arr[i][j-2]))))
{
r=arr[i][j];
}
else
r=0;
return r;
}
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
int functFibon(int** arr,int m,int n)//ГґГіГ*êöèÿ ïðîâåðêè Г·ГЁГ±Г«Г*
{
    int r=0;
    for (int j=2;j<=m;j++)
    if ((arr[n][j]==((arr[n][j-1])+(arr[n][j-2]))))
    {
       r=arr[n][j];
    }
    else
        r=0;
    return r;
}
Ответ Создать тему
Опции темы

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