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

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

Войти
Регистрация
Восстановить пароль
 
b0nny
3 / 1 / 0
Регистрация: 11.11.2013
Сообщений: 346
#1

Сформировать массив S, состоящий из одинаковых элементов исходных массивов - C++

01.07.2014, 20:15. Просмотров 607. Ответов 5
Метки нет (Все метки)

2 массива X, Y, каждый из 10 эл-в. Сформировать массив S, состоящий из одинаковых эл-в исходных массивов.
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
36
37
38
39
40
41
42
43
44
45
46
47
#include<iostream>
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<iomanip>
 
using namespace std;
 
main()
{
    //setlocale(LC_ALL, "Russian");
    //setlocale(0, "");
    int n=10, x[n], y[n], s[n];
    srand((unsigned)time(NULL));
    std::cout<<"Массив X:"<<std::endl;
    for (int i=0; i<n; i++)
    {
        x[i]=rand()%21-15;
        cout<<x[i]<<" ";
    }
    cout<<endl;
    std::cout<<"Массив Y:"<<std::endl;
    for (int i=0; i<n; i++)
    {
        y[i]=rand()%21-15;
        cout<<y[i]<<" ";
    }
    cout<<endl;
/// 
    for (int i=0; i<n; i++)
    {
        s[i]=x[i];
    }
    for (int j=0; j<n; j++)
    {
        s[n]=y[j];
        n++;
    }
    std::cout<<"Массив S:"<<std::endl;
    for (int i=0; i<n; i++)
    {
        cout<<s[i]<<" ";
    }
///
    system("pause");
    return 0;
}
Падает на предпоследнем for. Помогите решить проблему.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2014, 20:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сформировать массив S, состоящий из одинаковых элементов исходных массивов (C++):

Сформировать массив, состоящий из одинаковых элементов выходных массивов - C++
Ввести два массива X и Y, состоящие из 10-ти элементов целого типа. Сформировать массив S, состоящая из одинаковых элементов выходных...

Сформировать массив из элементов исходных массивов, меньших произведения последних элементов заданных массивов. - C++
Программа должна: 1)генерировать случайным образом элементы исходных массивов; 2)выполнять действия в соответствии с условием задачи; ...

Сформировать массив из элементов исходных массивов, образующих возрастающую последовательность - C++
Задача: Заданы массивы целых положительных чисел X(n), Y (k), Z(m). Сформировать массив U из таких элементов массивов X, Y , Z, которые в...

Из упорядоченных по возрастанию значений двух исходных массивов сформировать третий массив - C++
Добрый день, друзья, очень нужна ваша помощь. Задача: Ввести два массива действительных чисел, состоящих из N и M элементов. ...

Создать третий массив из неповторяющихся элементов исходных массивов - C++
помогите плиз.. чет проблемы с массивом у меня ((( Задать два массива вещественных чисел с помощью датчика случайных чисел. Создать...

Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию. - C++
написать программы! Вот задания! Я болел и просто не успею все зделать! 1)Дан массив целых чисел. Воспользовавшись указателями,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
nmcf
5309 / 4629 / 1550
Регистрация: 14.04.2014
Сообщений: 18,437
01.07.2014, 20:40 #2
Выходишь за границы массива. n изначально равно десяти, то есть уже за границами. И вообще не надо задавать размер статических массивов изменяемой переменой. Либо
C++
1
int x[10], y[10], s[10];
Либо
C++
1
2
const int n=10;
int x[n], y[n], s[n];
b0nny
3 / 1 / 0
Регистрация: 11.11.2013
Сообщений: 346
01.07.2014, 20:44  [ТС] #3
nmcf, тогда на
n++ ругается в цикле. Мне же размер массива нужно увеличивать для S, когда он эл-т находим.
Убрал я его. Массив S получается чисто как X .
saharok2000
1 / 1 / 0
Регистрация: 01.07.2014
Сообщений: 49
01.07.2014, 20:52 #4
Вы увеличиваете n и при этом кол-во повторов цикла равно n.
Что-то не так.
b0nny
3 / 1 / 0
Регистрация: 11.11.2013
Сообщений: 346
01.07.2014, 20:55  [ТС] #5
Эм... Я походу не правильно подумал...
Я их похоже по коду хотел вместе соединить в 1 массив. А мне нужно из одинаковых...
nmcf
5309 / 4629 / 1550
Регистрация: 14.04.2014
Сообщений: 18,437
01.07.2014, 21:33 #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
n оставь для размера массивов и условий в циклах. Для других целей придумай другую переменную.

Добавлено через 37 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int k, sn = 0;
for (int i = 0; i < n; i++)
{
    for (int j=0; j<n; j++)
    {
        if(x[i] == y[j])
        {
            for(k = 0; k < sn; k++) if(s[k] == x[i]) break;
            if(k == sn)
            {
                s[sn] = x[i];
                sn++;
            }
        }
    }
}
for(k = 0; k < sn; k++) cout << s[k] << " ";
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.07.2014, 21:33
Привет! Вот еще темы с ответами:

Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию - C++
Хелп плиз) Даны два массива, упорядоченных по возрастанию: А и B. Сформируйте массив C, состоящий из элементов массивов А и В,...

Сформировать массив состоящий из максимальных элементов столбцов - C++
Нужно сформировать массив состоящий из максимальных элементов столбцов матрицы. Это нужно оформить в виде функции. #include &lt;iostream&gt; ...

Сформировать новый массив B, состоящий из элементов массива A, которые превышают X - C++
Если по заданию дано число массив или массивы, то их значения получать от пользователя и при необходимости выполнять проверку правильности...

Сформировать матрицы одномерный массив, состоящий из элементов, которые лежат в интервале (-3; 5] - C++
С++ дано целочисленную прямоугольную матрицу, сформировать из неё одномерный массив, который состоит из элементов, которые лежат в...


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

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

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