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

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Массивы, сортировка
Demm
сообщение 29.05.2004 0:31
Сообщение #1


Новичок
*

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

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


Помогите,пожалуста!
вот задача: Даны 2 массива упорядоченных по возрост. надо сформировать 3 также упорядоченный по возрастанию.
Сформировать 3 и потом упорядочить-проблем нет, но надо во время записи 3 массива расставлять элементы сразу на свои места.
Если кто может,покажите как это реализовывается!
Ввод, вывод и описания перем. не обязательно!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Spawn
сообщение 30.05.2004 23:53
Сообщение #2





Группа: Пользователи
Сообщений: 9

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


Виноват. Недоглядел.
Вот рабочая версия:
Код
const
n = 4; {длина массива А}
m = 5; {длина массива В}
t = n + m; {длина результирующего массива}
type
mA = array[1..n] of integer;
mB = array[1..m] of integer;
mC = array[1..t] of integer;
var i,j,k:integer;
A:mA;B:mB;C:mC;
procedure sort(var A : mA; var B : mB; var C : mC);
begin
i := 1; j := 1; k := 1;
repeat
if A[i]>B[j] then
begin
  C[k] := B[j];
  j := j + 1;
end
else
begin
  C[k] := A[i];
  i := i + 1;
end;
k := k + 1;
if i>n then
  for i := j to m do
  begin
    C[k] := B[i];
    k := k + 1;
  end
else if j>m then
  for j := i to n do
  begin
    C[k] := A[j];
    k := k + 1;
  end;
until k>=t;
end;

begin
   writeln('mass A');
 for i:=1 to n do
   read(A[i]);
   writeln('mass B');
 for j:=1 to m do
   read(B[j]);
   sort(A,B,C);
   writeln('poluch');
 for k:=1 to t do
   write(C[k],' ');
   readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 



- Текстовая версия 20.07.2025 19:12
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"