1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Задача на одномерные массивы с исп. процедур., ПОМОГИТЕ!!!
Задали д.з., как решать ума не приложу, точнее вроде всё понятно, НО задача не решается, помогите пожалуста, опытный человек с разу всё напишет, а я не могу
Формировать одномерный массив С, содержащий повторяющиеся элементы массива А, которых нет в массиве В, элементы в массиве С не должны повторяться. Дополнительный массив не использовать. (Одномерные массивы А и В, содержат не более 20 элементов целого типа.) Задачу решить через процедуры.
const n = 20; type arrType = array[1 .. n] of integer;
{ Эта функция подсчитывает в передаваемом ей массиве Х количество вхождений числа num... } function countArr(num: integer; x: arrType): integer; var i, count: integer; begin count := 0; for i := 1 to n do inc( count, byte(x[i] = num) ); countArr := count end;
{ Эта процедура добавляет элемент num к массиву, передаваемому в нее как Х (элемент добавляется с индексом index) } procedure addToArr(var x: arrType; var index: integer; num: integer); begin inc(index); x[index] := num; end;
{ Процедура для печати массива X } procedure Print(x: arrType; n: integer); var i: integer; begin for i := 1 to n do write(x[i]:4); writeln end;
var c: arrType; i, index: integer; begin for i := 1 to n do {если текущий элемент встречается в массиве А не один раз ...} if countArr(a[i], a) > 1 then { ... и он не встречается в массиве В и в массиве С ...} if (countArr(a[i], b) = 0) and (countArr(a[i], c) = 0) { ... то добавить его к массиву С} then addToArr(c, index, a[i]);
{ печатаем результат - массив С... } Print(c, index) end.