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

Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. - C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
ищтшеф
1 / 1 / 0
Регистрация: 24.03.2012
Сообщений: 32
24.03.2012, 10:05     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #1
прошу помощи

дан массив a[n], заполнить массив b[n] элементами масива а следующим образом: вначале заполнить элементами с четными индексами, а затем - с нечетными.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2012, 10:05     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными.
Посмотрите здесь:

Увеличить элементы массива с четными индексами на 1, а с нечетными - на 2 C++
Вывести вначале его элементы с четными номерами, а затем — элементы с нечетными номерами C++
C++ Вывести вначале элементы с четными номерами, а затем с нечетными (все в порядке возрастания)
Найти сумму элементов с четными индексами и произведение элементов с нечетными индексами C++
C++ Массивы. Вначале заполнить элементами с четными индексами, а затем — с нечетными. Осуществить сдвиг вправо на k позиций
Динамические массивы: разбить исходный массив на два - с четными и нечетными элементами C++
C++ В массиве определить произведение элементов с четными индексами и сумму элементов с нечетными индексами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aleksis
2 / 2 / 0
Регистрация: 01.09.2010
Сообщений: 15
24.03.2012, 10:48     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int j=0;
for(int i=0;i<=n;i++)
{
    if(i%2==0)
    {
        b[j]=a[i];
    }
    else
    {
        b[(n+i)/2]=a[i];
        j++;
    }
}
ищтшеф
1 / 1 / 0
Регистрация: 24.03.2012
Сообщений: 32
26.03.2012, 17:10  [ТС]     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #3
можно по-подробнее пожалуйста?
fasked
Эксперт C++
 Аватар для fasked
4925 / 2505 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
26.03.2012, 17:13     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #4
C
1
2
3
4
5
6
7
// четные
for(i = 0; i < n; i += 2)
     b[i] = a[i];
 
// нечетные
for(i = 1; i < n; i += 2)
     b[i] = a[i];
ищтшеф
1 / 1 / 0
Регистрация: 24.03.2012
Сообщений: 32
26.03.2012, 20:25  [ТС]     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <stdlib.h>
 
void main ()
{int i, a[10], b[10];
 
for (i=0; i<10; i++)
scanf ("%d", &a[i]);
// четные
for(i = 0; i < 10; i += 2)
     b[i] = a[i];
 
// нечетные
for(i = 1; i < 10; i += 2)
     b[i] = a[i];
printf ("b[10]=%d", b[10]);
getch ();
}


ввожу 0 1 2 3 4 5 6 7 8 9
ответ выдает 2293700

Добавлено через 24 минуты
up up

Добавлено через 47 минут
up up

 Комментарий модератора 
Для того, чтобы поднять тему в разделе существует специальная кнопка, которой вы можете воспользоваться раз в несколько часов. Или же используйте осмысленные сообщения, например, "Тема/проблема/задача актуальна". Если вы чего-то достигли в решении проблемы на этот момент, сообщите об этом.
Kuzia domovenok
 Аватар для Kuzia domovenok
1886 / 1741 / 117
Регистрация: 25.03.2012
Сообщений: 5,910
Записей в блоге: 1
26.03.2012, 20:33     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #6
Ну так b[10] выходит за границы массива же! У тебя в массиве 10 чисел, не 11!!!
Выводи b[9]...
ищтшеф
1 / 1 / 0
Регистрация: 24.03.2012
Сообщений: 32
27.03.2012, 19:52  [ТС]     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #7
b[10] это же массив состоящий из 10ти элементов. 0 1 2 3 4 5 6 7 8 9 - всего 10 элементов
ищтшеф
1 / 1 / 0
Регистрация: 24.03.2012
Сообщений: 32
29.03.2012, 09:35  [ТС]     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #8
актуально
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2012, 10:38     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными.
Еще ссылки по теме:

C++ Заполнить элементами с нечётными индексами, а затем - с чётными
Заполнить массив чередующимися четными и нечетными числами C++
В двумерном массиве заменить элементы строк с четными индексами элементами строк с нечетными индексами C++
C++ Вывести элементы массива с четными/нечетными индексами
Сформировать массив, у которого вначале расположены элементы массива А с нечетными индексами, затем с четными C++

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

Или воспользуйтесь поиском по форуму:
fasked
Эксперт C++
 Аватар для fasked
4925 / 2505 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
29.03.2012, 10:38     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными. #9
Цитата Сообщение от ищтшеф Посмотреть сообщение
b[10] это же массив состоящий из 10ти элементов. 0 1 2 3 4 5 6 7 8 9 - всего 10 элементов
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Ну так b[10] выходит за границы массива же! У тебя в массиве 10 чисел, не 11!!!
Выводи b[9]...
Цитата Сообщение от ищтшеф Посмотреть сообщение
C
1
printf ("b[10]=%d", b[10]);
Вам же уже сказали, что b[10] выходит за границы массива.
Yandex
Объявления
29.03.2012, 10:38     Вначале заполнить массив элементами с четными индексами, а затем - с нечетными.
Ответ Создать тему
Опции темы

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