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

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

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

Вывод на экран каждого второго элемента массива через рекурсивную функцию - C++

23.06.2016, 08:06. Просмотров 344. Ответов 4
Метки нет (Все метки)

Добрый день, подскажите пожалуйста как вывести каждый второй элемент массива с помощью рекурсивной функции? В задаче сказано для определения каждого второго элемента, использовать условие ((i + 1) % 2 == 0).

Вот фундамент программы:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
 
using namespace std;
 
int SecTeam(int array[], int len) {
 
}
 
int main() {
  int players[22] = {0, 35, 5, 9, 4, 1, 21, 12, 36, 11, 41, 13, 2, 17, 8, 20, 10, 18, 30, 25, 6, 19};
 
  SecTeam(players, 22);
 
  return 0;
}
Если кому надо, то вот сама задача:
Кликните здесь для просмотра всего текста

На футбольной тренировке тренер построил игроков в шеренгу, что бы составить 2 команды. Каждый второй футболист будет играть за первую команду, остальные за вторую. Массив хранит номера игроков в порядке, в котором они стоят в шеренге. Напишите функцию SecTeam (с параметрами: целочисленный массив array, целочисленное число len), которая выведет в столбик номера игроков из первой команды.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.06.2016, 08:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывод на экран каждого второго элемента массива через рекурсивную функцию (C++):

Из каждого элемента массива, начиная со второго, вычесть все остальные элементы - C++
Дан массив, из каждого элемента, начиная со второго, нужно вычесть все остальные элементы. вот пример: 1 2 3 4 5 (2 - 3 - 4 - 5 -...

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

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

Написать функцию, которая преобразовывает значение каждого элемента массива в куб этого значения - C++
Код я написал, но программа работает не верно. Вот код: #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace...

Вывод на экран значений корней и квадратов каждого из элементов массива - C++
Введите с клавиатуры пять целочисленных элементов массива X. Выведите на экран значения корней и квадратов каждого из элементов массива.

заполнение массива через rand и вывод на экран через указатели - C++
Учитель задал заполнить массивы и случайными числами и вывезти на экран через указатели, через функцию rand выводит как вы понимаете одни...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6358 / 5922 / 1919
Регистрация: 18.12.2011
Сообщений: 15,218
Завершенные тесты: 1
23.06.2016, 08:12 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<iostream>
 
using namespace std;
 
void SecTeam(int* array, int i,int len) 
{
    if((i + 1) % 2 == 0)
        cout<<array[i]<<' ';
    i++;
    if(i<len)
        SecTeam(array,i,len);
    else
        cout<<endl;
}
 
int main() {
    int players[22] = {0, 35, 5, 9, 4, 1, 21, 12, 36, 11, 41, 13, 2, 17, 8, 20, 10, 18, 30, 25, 6, 19};
    SecTeam(players,0,22);
    system("pause");
    return 0;
}
Xessao
0 / 0 / 0
Регистрация: 13.07.2015
Сообщений: 17
23.06.2016, 08:21  [ТС] #3
К сожалению нельзя изменять начальный код, т.е. обязательно должно быть так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
 
using namespace std;
 
int SecTeam(int array[], int len) {
 //Тут уже можно писать всё что нужно.
}
 
int main() { //Здесь всё так и должно остаться.
  int players[22] = {0, 35, 5, 9, 4, 1, 21, 12, 36, 11, 41, 13, 2, 17, 8, 20, 10, 18, 30, 25, 6, 19};
 
  SecTeam(players, 22);
 
  return 0;
}
zss
Модератор
Эксперт С++
6358 / 5922 / 1919
Регистрация: 18.12.2011
Сообщений: 15,218
Завершенные тесты: 1
23.06.2016, 08:48 #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
 
using namespace std;
 
void SecTeam(int* array,int len) 
{
    static int i=0;
    if((i + 1) % 2 == 0)
        cout<<array[i]<<' ';
    i++;
    if(i<len)
        SecTeam(array,len);
    else
        i=0;
}
 
int main() {
    int players[22] = {0, 35, 5, 9, 4, 1, 21, 12, 36, 11, 41, 13, 2, 17, 8, 20, 10, 18, 30, 25, 6, 19};
    SecTeam(players,22);
    cout<<endl;
    system("pause");
    return 0;
}
Xessao
0 / 0 / 0
Регистрация: 13.07.2015
Сообщений: 17
23.06.2016, 09:43  [ТС] #5
Не буду вас вводить в заблуждения, но код не хочет принимать этот сайт:
Кликните здесь для просмотра всего текста
http://academy.cppstudio.com/lesson/118/

Я понимаю, что две программы, которые вы написали выше - работают, но сайт их не хочет принимать. Если вам не трудно, можете написать код, который будет принимать этот сайт?)

Добавлено через 47 минут
zss, спасибо за оказанную помощь, задача решена.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2016, 09:43
Привет! Вот еще темы с ответами:

Поиск и вывод на экран терминала элемента массива - C++
Задача такая: нужно при вводе с клавиатуры имени объекта, расположенного в массиве структуры , выполнялся поиск всех переменных присвоенных...

Удаление каждого второго элемента линейного списка - C++
нужно написать функцию удаления каждого 2 элемента списка, вот код по сути требуется только подставить функцию но вобще не получается её...

Вывод двумерного массива через функцию - C++
Задача - вывести двумерный массив, используя функцию. Одно условие: делать это нужно без использования указателей.

Ошибочный вывод массива через функцию - C++
Помогите исправить код... #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; const int...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.06.2016, 09:43
Ответ Создать тему
Опции темы

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