IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Задача на одномерные массивы =(, C++
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 38
Пол: Мужской

Репутация: -  0  +


Задача:
Даны две последовательности a1 ≤ a2 ≤ ... ≤ аn и b1 ≤ b2 ≤ ... ≤ bn. Образовать из них новую последовательность чисел так, чтобы она тоже была неубывающей (дополнительный массив не использовать).
Я придумал следующий алгоритм:
Берем элемент массива Б(i) и сравниваем его со всеми элементами массива А. Если этот элемент больше или равен какому-либо элементу массива А(j) и меньше следующего в массиве А(J+1), то добавляем его после j и перед j+1 в массив А.
Получилась такая программа но при компиляции происходит либо ошибка памяти либо просто закрывается компилятор (Borland C++ 4.1). Подскажите плз ошибки в коде\алгоритме. При просмотре через дебаггер видно что в массив элементы дописываются не каждый раз.
Получившаяся программа:

 #include <iostream.h>
#include <conio.h>

int *fill(int* a, char nam, int* n)
{
int i;
cout << "\nEnter size of array " << nam << ": ";
cin >>*n;
for (i=0;i<=*n-1;i++)
{
cout << "\nEnter " << i+1 << " elem. of array:";
cin >> a[i];
}
return a,n;
}

int *work(int* a, int* sa, int* b, int* sb)
{
int m,n,t=0,sat;
for (n=0;n<=*sb-1;n++)
{
for (m=0;m<=*sa;m++)
{
if (a[m]<=b[n]) \\ Вопрос: Как эти два выражения совместить в одно?
{
if (a[m+1]>b[n])
{
for (t=*sa;t>=m+1;t--)
{
a[t+1]=a[t];
}
a[t]=b[n];
sa=sa+1;
}
}
}
}
return a,sa;
}




void main ()
{
clrscr();
int i,aa[20],ab[10],*sia,*sib;
fill(aa,'A',sia);

fill(ab,'B',sib);
work(aa,sia,ab,sib);
for (i=1;i<=*sia;i++)
{
cout << aa[i] <<" ";
}
getch();
}


Сообщение отредактировано: volvo -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 19:02
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name