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

Объединить массивы - C++

Восстановить пароль Регистрация
 
Дімич
 Аватар для Дімич
5 / 5 / 0
Регистрация: 08.04.2013
Сообщений: 98
27.11.2013, 20:12     Объединить массивы #1
Здравствуйте, помогите поелементно объединить елементы массива.
C++
1
2
int mas1[8]={1, 7, 8, 9, 45, 26, 48 ,15};
    int mas1[8]={8, 98, 7, 45, 98, 97, 56 ,75};
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
27.11.2013, 20:40     Объединить массивы #2
Если правильно понял задание,то вот
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
 
int cnt (int n)
{
    int k = 0;
    while (n!=0)
    {
        ++k;
        n/=10;
    }
    return k;
}
 
int main()
{
    int mas1[8] = {1, 7, 8, 9, 45, 26, 48 ,15};
    int mas2[8] = {8, 98, 7, 45, 98, 97, 56 ,75};
    int a[8];
    int k;
    for (int i=0; i<8; i++)
    {
        k = 1;
        a[i] = mas1[i];
        for (int j=1; j<=cnt(mas2[i])-1; j++)
            k*=10;
        for (int j=1; j<=cnt(mas2[i]); j++)
        {
            a[i]*=10;
            a[i]+=(mas2[i]/k)%10;
            k/=10;
        }
        std::cout <<a[i] <<" ";
    }
    return 0;
}
Дімич
 Аватар для Дімич
5 / 5 / 0
Регистрация: 08.04.2013
Сообщений: 98
04.12.2013, 20:41  [ТС]     Объединить массивы #3
а как зделать чобы было 16 типу 2 слить в 1 или меньше 16 типу какие одинакови те удалялись.?
Toda
10 / 10 / 0
Регистрация: 16.11.2012
Сообщений: 320
04.12.2013, 20:51     Объединить массивы #4
Дімич, я с Украины, но я не понял твое последнее сообщение. Напиши его с запятыми и на одном из славянских языков, кроме беларусского, пожалуйста
Дімич
 Аватар для Дімич
5 / 5 / 0
Регистрация: 08.04.2013
Сообщений: 98
04.12.2013, 21:50  [ТС]     Объединить массивы #5
Смотри, это прога обединяет 2 массива в один пример {1,45} и второй, {23,2}, то получится {123, 452}, на надо {1, 23,45,2} и плз скажи что значит "cnt"?
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
04.12.2013, 21:55     Объединить массивы #6
Цитата Сообщение от Дімич Посмотреть сообщение
скажи что значит "cnt"?
cnt() - функция, которая возвращает кол-во цифр в числе,которое мы передали ей в качестве аргумента
Дімич
 Аватар для Дімич
5 / 5 / 0
Регистрация: 08.04.2013
Сообщений: 98
04.12.2013, 22:07  [ТС]     Объединить массивы #7
спасибо=)

Добавлено через 2 минуты
for (int j=1; j<=cnt(mas2[i]); j++) значит пока не будет 8?
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
04.12.2013, 22:15     Объединить массивы #8
Цитата Сообщение от Дімич Посмотреть сообщение
for (int j=1; j<=cnt(mas2[i]); j++)
Это цикл с 1 до количества цифр в i-ом элементе массива mas2
На первой итерации будет с 1 до 1
Дімич
 Аватар для Дімич
5 / 5 / 0
Регистрация: 08.04.2013
Сообщений: 98
04.12.2013, 22:20  [ТС]     Объединить массивы #9
{1,45} и второй, {23,2}, то получится {123, 452}, на надо {1, 23,45,2} а можно отак зделать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2013, 22:52     Объединить массивы
Еще ссылки по теме:

Объединить массивы C++
C++ Объединить 2 кода
C++ Как первый и второй массивы с цифрами объединить и записать в третий массив и отсортировать?

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

Или воспользуйтесь поиском по форуму:
MicM
 Аватар для MicM
820 / 487 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
04.12.2013, 22:52     Объединить массивы #10
Так?
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>
 
int main()
{
    int mas1[8] = {1, 7, 8, 9, 45, 26, 48 ,15};
    int mas2[8] = {8, 98, 7, 45, 98, 97, 56 ,75};
    int a[16];
    int k = 0;
    for (int i=0; i<16; i+=2)
    {
        a[i] = mas1[k];
        ++k;
    }
    k = 0;
    for (int i=1; i<16; i+=2)
    {
        a[i] = mas2[k];
        ++k;
    }
    for (int i=0; i<16; i++)
        std::cout <<a[i] <<" ";
    return 0;
}
Yandex
Объявления
04.12.2013, 22:52     Объединить массивы
Ответ Создать тему
Опции темы

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