Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2011, 15:57   #1
Slim_py
Новичок
Джуниор
 
Регистрация: 04.11.2011
Сообщений: 1
Вопрос Входят ли все элементы одного массива в другой

Входят ли все элементы одного одномерного массива в другой одномерный массив?
Вот что я чудил, но это не правильно и надо как-то исправить что бы ответ был четким "Да" или "Нет".. а у меня вообще непонятно что
Исправьте пожалуйста


program Nomer10;
const n=12;
var b:array[1..n] of integer;
a:array[1..10] of integer;
i,j,x:integer; k:string;
begin
k:='входит';
writeln('Введите массив а с неповторяющихся чисел');
for i:=1 to 10 do
readln(a[i]);
writeln('Введите массив b');
for j:=1 to n do
readln(b[j]);
for i:=1 to 10 do
for j:=1 to n do
if a[i]=b[j] then
writeln('Входит!');
end.
Slim_py вне форума Ответить с цитированием
Старый 04.11.2011, 16:25   #2
Sna1L
Форумчанин
 
Аватар для Sna1L
 
Регистрация: 15.03.2011
Сообщений: 272
По умолчанию

Алгоритм:
Заполняем 2 массива(рандом для удобства).
Сразу выводим.
Потом создаем 2 вложенных цикла с параметром и проверяем.
Проверку предлагаю организовать так:
Код:
for i:=1 to n do
begin 
  b:=false;
  for j:=1 to n do
    if (a1[i] = a2[j]) and not(j in mn) then //пара найдена
      begin
        mn:= mn + [j];
        b:=true;
        break;
      end;
  if b=false then begin writeln('Нет'); break; end; // значит пара не найдена
end;

if b = true then writeln('Да');
Где mn - множество индексов, которым подобрана пара, а b - булева переменная, для проверки найдена ли пара.

Хотя по-моему алгоритм нехороший у меня получился, лучше Вам самому подумать.

ЗЫ кстати если в массиваз числа не повторяющиеся(как у вас в коде написанно), то можно просто ограничиться двумя множествами и найти их разность

Последний раз редактировалось Sna1L; 04.11.2011 в 16:28.
Sna1L вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Элементы матрицы. Все ненулевые элементы массива D(k) расположить в начале массива E(k) и подсчитать их к Вася Маклауд Помощь студентам 0 03.04.2011 17:21
Переписать елементы из одного массива в другой allegri Помощь студентам 3 03.01.2011 18:57
копирование из одного двумерного массива в другой Sanprof Общие вопросы Delphi 7 08.10.2010 17:31
Си. перенос элементов одного массива в другой Денни Помощь студентам 7 07.02.2010 15:34
1.Найти в матрице первую строку, все элементы которой отрицательны 2.отсортировать элементы массива по в w0lf16 Помощь студентам 2 22.11.2009 15:47