Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C++] Объединение массивов


Автор: PyS 4.10.2006, 08:59
Всем привет!

Помогите, пожалуйста! Это срочно! smile

Есть задача:

Цитата

Необходимо написать на С++:
Заполнить два одномерных массива и затем объединить их в один!
Просмотреть результат!


прошу модераторов не удалять/перемещать тему! smile

Автор: sergejzr 4.10.2006, 09:10
Например - так:
Код

#define LENGTH1 15
#define LENGTH2 20

int main()
{
int array1[LENGTH1];
int array2[LENGTH2];
int sliced_length=LENGTH1+LENGTH2;
int *sliced=new int[sliced_length];
int i,j;
//Заполняем первый массив 
for( i=0;i<LENGTH1;i++)
{
 array1[i]=i;
}
//Заполняем второймассив 
for( i=0;i<LENGTH2;i++)
{
 array2[i]=i;
}

//Заполняем общий массив
for( i=0;i<LENGTH1;i++)
{
 sliced[i]=array1[i];
}

for(j=0;i<LENGTH2;i++,j++)
{
 sliced[i]=array2[j];
}

//Просматриваем общий массив
printf("Sliced array: ");
for(i=0;i<sliced_length-1;i++)
{
 printf("%i, ",sliced[i]);
}
printf("%i\n",sliced[i]);

}

PyS, Обрати внимание, как в центре помощи оформлены другие темы. Названия темам надо давать макимально приближённые к сути.

Добавлено @ 09:11 
Цитата(PyS @  4.10.2006,  06:59 Найти цитируемый пост)
прошу модераторов не удалять/перемещать тему! smile

Модератор: Прошу участников читать/соблюдать правила раздела  smile 

Автор: EvgenZ 4.10.2006, 09:42
Код

int a[20];
int b[10];
//int c[20];
for(int i = 0; i < 10; ++i){
a[i] = i*2;
b[i] = i*i;
}


for(int i = 10, j = 0; i < 20; ++i, ++j )
a[i] = b[j];

что сразу в голову пришло, это если без доп массива.

Модератор: не забываем про кнопочку "КОД"

Автор: Alexeis 4.10.2006, 11:14
PyS, пожалуйста, один топик - один вопрос.

Модератор: тема разделена 
Новая тема в разделе "Разные вопросы" под заголовком "Visual С и C++ - это одно и тоже или нет?"

Автор: PyS 4.10.2006, 11:31
alexeis1, спасибо!

Автор: Oleg_Ci 4.10.2006, 15:59
Цитата(PyS @  4.10.2006,  12:59 Найти цитируемый пост)
Необходимо написать на С++:Заполнить два одномерных массива и затем объединить их в один!Просмотреть результат!
Код

#include<iostream>

int main(int argc, char* argv[])
{    
    const int len1 = 5, len2 = 8, len3 = len1 + len2;
    int mas1[len1], mas2[len2], mas3[len3];

    for( int i=0; i<len1; ++i )    mas1[i] = i;  // запролняем первый массив
    for( int i=0; i<len2; ++i )    mas2[i] = i + 30; // заполняем второй
    for( int i=0; i<len3; ++i )    mas3[i] = i < len1 ? mas1[i] : mas2[i-len1]; // объединяем в третий
    for( int i=0; i<len3; ++i )    std::cout << mas3[i] << std::endl;// выводим на консоль

    std::cin.get();
    return 0;
};

Автор: PyS 4.10.2006, 17:48
sergejzr, EvgenZ, Олег4, 
Спасибо! +1

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)