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

Слияние массивов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Хэш - таблицы с открытой адресацией http://www.cyberforum.ru/cpp-beginners/thread538219.html
Молю о помощи, а то конец мне: Перевод слов задается в следующем виде: а. Язык с которого осуществляется перевод б. Язык на который осуществляется перевод в. Написание слова на языке а. г. Напсисання слова на языке б. Задан набор структур описывающих перевод слов. Дано слово, язык к которому относится это слово и речь на которую нужно перевести это слово. Вывести...
C++ Многомерные массивы. Матрица. Всем привет. Прошу помочь с заданием по программированию, не до конца понимаю кое-что… Задание: Дана матрица целых чисел N x M. Количество строк N и столбцов M задается пользователем. Преобразовать матрицу следующим образом: числа, кратные 5, но не кратные 10, уменьшить в 5 раз; числа, кратные 10, уменьшить в 10 раз; остальные увеличить в 10 раз. Измененную матрицу вывести на экран.... http://www.cyberforum.ru/cpp-beginners/thread538203.html
C++ Быстрое преобразование Фурье
Мне надо написать программу, позволяющую осуществить быстрое преобразование Фурье. Программу я бы написал (возможно), но проблема в том, что точные формулы быстрого преобразования я не знаю. Искал в нете, перерыл кучу сайтов, и на каждом из них разные формулы (может просто разные методы, но все равно непонятно), формулы совсем мне непонятны( Самые приличные формулы, по-моему, тут...
C++ Вывести на экран в возрастающем порядке все трехзначные числа
Вывести на экран в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых четных цифр.Помогите пожалуйста составить такую программу на Си
C++ Помогите разобратся, статья из журнала ][акер (функция CrsClientCallServer) http://www.cyberforum.ru/cpp-beginners/thread538196.html
вот статья http://www.xakep.ru/post/55567/?print=true я так понял чтобы сделать CreateRemove Thread, нам надо подменить функции. как работать с таблицей импорта(извеняйте за ламерность ) и куда вписать новую функцию?
C++ Кратно ли число другому числу Напишите программу, которая считывает два целых числа, после чего определяет, кратно ли первое второму, и выводит эту информацию на печать. Вот код: #include <iostream> #include <conio.h> using namespace std; int main()b { int intChislo1, intChislo2, ostatok; cout << "Vvedite dva celih chisla\n"; подробнее

Показать сообщение отдельно
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
04.04.2012, 18:19     Слияние массивов
Цитата Сообщение от elka Посмотреть сообщение
а нельзя мой код посмотреть?просто оба массива выводятся,а когда при слиянии он ничего не выводит
Ну а что? Там ошибки! Всё потому что выпендрёж с инкрементированием указателей. Хотел сделать "красиво", а вышло?
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
for (;p<a+n;p++)
{
cin>>*p;//каждый раз указатель уходит всё дальше от начала массива
}//и не возвращается в него
int x=n+m;
c=new int[x];
int *h=c;           //ещё до начала цикла p указывает на последний элемент, даже дальше
//и тут забыли   вставить p=a, чтоб сначала начать.
// как минимум или перестать выпендриваться
for (;h<c+n;h++)//h++ в цикле делается, а p++ нет
{
*h=*p;//копирование только последнего элемента массива p
//вставить p++
}
for (*h=n;h<c+x;h++)//*h=n??? что за?? ты вообще что хотел сказать? может h=c+n (всё без "*")
{
*h=*(b+n-1);//та же ошибка h увеличивается, указ. на копируемое - нет
//и вообще я не понял, что за n-1
}
for (;h<c+x;h++)
{
cout<<*h<<" ";
}
cin.get();//В конце память освобождать надо!!!
ci
Короче если не понимаешь что у тебя переменная, что указатель, какой указатель куда указывает переделай с использованием оператора [ ]

Добавлено через 11 минут
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
48
49
50
#include <iostream.h>
#include <string.h>
int main()
{
int i;
int n,m;
int *a,*b,*c;
int *p;
int *q;
cout<<"Vvedite razmer  1 massiv";
cin>>n;
a= new int[n];
cout<<"Vvedite massiv 1";
for (p=a;p<a+n;p++)
{
cin>>*p;
}
cout<<endl;
cout<<"Vvedite razmer   massiv";
cin>>m;
b=new int[m];
cout<<"Vvedite massiv 2";
for (p=b; p<b+m;p++)
{
cin>>*p;
}
cout<<endl;
int x=n+m;
c=new int[x];
q=a;
for (p=c;p<c+n;p++)
{
*p=*q;
q++;
}
q=b;
for (*p=c+n;p<c+x;p++)
{
*p=*q;
q++;
}
for (p=c;p<c+x;p++)
{
cout<<*p<<" ";
}
delete[] a;
delete[] b;
delete[] c;
cin.get();
}
Так лучше
 
Текущее время: 13:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru