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

рекурсия в с++ ( ?: = if() else) - C++

Восстановить пароль Регистрация
 
Romantikkk
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 144
03.12.2012, 22:29     рекурсия в с++ ( ?: = if() else) #1
Подскажите, пожалуйста, как сделать с помощью рекурсивной функции?

C++
1
2
3
4
int sum (int *arr, size_t size)
{
    return size ? *arr + sum (arr + 1, size - 1) : 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2012, 22:29     рекурсия в с++ ( ?: = if() else)
Посмотрите здесь:

Рекурсия C++
C++ рекурсия
Рекурсия C++
Рекурсия C++
Рекурсия C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
03.12.2012, 22:34     рекурсия в с++ ( ?: = if() else) #2
а это какая функция?
Romantikkk
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 144
03.12.2012, 22:48  [ТС]     рекурсия в с++ ( ?: = if() else) #3
рекурсивная функция для обчисления елементов массива
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
03.12.2012, 22:54     рекурсия в с++ ( ?: = if() else) #4
тогда что тебе не хватает?
Romantikkk
0 / 0 / 0
Регистрация: 19.10.2012
Сообщений: 144
03.12.2012, 22:56  [ТС]     рекурсия в с++ ( ?: = if() else) #5
извините, забыл дописать, что надо сделать через if - else.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
03.12.2012, 22:58     рекурсия в с++ ( ?: = if() else) #6
C++
1
2
3
4
5
6
7
int sum (int *arr, size_t size)
{
    if (size) 
       return *arr + sum (arr + 1, size - 1);
    else 
       return 0;
}
Оно?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11800 / 6779 / 765
Регистрация: 27.09.2012
Сообщений: 16,829
Записей в блоге: 2
Завершенные тесты: 1
03.12.2012, 23:01     рекурсия в с++ ( ?: = if() else) #7
Цитата Сообщение от Romantikkk Посмотреть сообщение
извините, забыл дописать, что надо сделать через if - else.
если это
C++
1
return size ? *arr + sum (arr + 1, size - 1) : 0;
расписать через if..else, тогда получится примерно так:
C++
1
2
3
4
if (size)
   return *arr + sum (arr + 1, size - 1);
else
   return 0;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2012, 11:28     рекурсия в с++ ( ?: = if() else)
Еще ссылки по теме:

Рекурсия C++
C++ Рекурсия
C++ Рекурсия

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

Или воспользуйтесь поиском по форуму:
ForEveR
04.12.2012, 11:28     рекурсия в с++ ( ?: = if() else)
  #8
 Комментарий модератора 
Оффтопы не по теме перенесены в Тернарный оператор vs if/else и пожалуйста, завязываем со флудом.
Yandex
Объявления
04.12.2012, 11:28     рекурсия в с++ ( ?: = if() else)
Ответ Создать тему
Опции темы

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