![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
ivan |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Задача-сформировать одномерный массив C, содержащий элементы, встречающиеся в массиве А несколько раз, которые есть в массиве В в одном экземпляре. Элементы в массиве C не должны повторяться.
Вопрос в написании алгоритма "Формирование" и соответствующему ему кода на языке Паскаль. Код Алгоритм “Формирование массива” Внутренние переменные: nA: цел. nB: цел. nC: цел. A, B, C : : массив [1..20]:цел. Начало Вывод (‘Задание.’) Ввод (A,na,’A’) Ввод (B,nb, ’B ’) Формирование(A,na,B,nb,C,nc) Вывод (A,na, ’A ’) Вывод (B,nb, ’B ’) Вывод (C,nc, ’C ’) Конец Алгоритм “Ввод ” Входные переменные: Name: символ; Выходные переменные: n : цел. {количество элементов во вводимом массиве } Mas [1..20] : массива : цел Внутренние переменные: i : цел. Начало Цикл Вывод (‘Введите число элементов массива ’,name,’ <=20’) Ввод(n) Кцикла-до (n>1) и (n<=20) Вывод (‘Элементы массива ’,name,’ – целые числа’) Цикл-для I от 1 до n Вывод (name,’[',i,']=') Ввод (Mas[i]) Кцикла Конец Алгоритм “Вывод ” Входные переменные: n : цел. {количество элементов в выводимом массиве} Mas [1..20] : массива : цел {Выводимый массив} Name : символ Внутренние переменные: i: цел. Начало Если n>=1 то Вывод (‘Число элементов массива ’,name,’ = ’, n); Вывод (‘Массив ’,name); Цикл-для i от 1 до x Вывод (Mas[i]) Кцикла Иначе Вывод (‘Нет элементов, удовлетворяющих условию!’) Кесли Конец Алгоритм “Формирование ” Входные переменные: nA : цел. {количество элементов массива A} nB : цел. {количество элементов массива B} A [1..20] : массива : цел {массив A} B [1..20] : массива : цел {массив B} Выходные переменные: nC: цел. {количество элементов массива C} C [1..20] : массива : цел {массив C} Внутренние переменные: i: цел. j, kol, z: цел. Начало ??? Конец Сообщение отредактировано: ivan - 24.02.2009 15:24 |
![]() ![]() |
ivan |
![]()
Сообщение
#2
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Меня в Паскале пока что многое приведет в недоумение, к сожалению. Попытка написания кода согласно алгоритму выше (до "Формирования"), но уже сам чувствую что есть ошибки, просьба их указать.
Код uses crt; var nA,nB,nC:integer; A,B,C:array [1..20] of integer; procedure vvod (var Mas:array[1..20] of integer; n:integer; Name:char); var I:integer; begin repeat writeln('vvedite 4islo elementov massiva ',name,' <=20'); read(n); until (n>1) and (n<=20); writeln('Elementi massiva ',name,' - zelie 4isla'); for I:=1 to n do begin write(name,'[',i,']='); read(Mas[i]); end; end; procedure vivod (const Name: char; Mas: array of integer; n: integer); var i:integer; begin if n>=1 then begin Writeln('Chislo elementov massiva',name,' = ', n); Writeln('Massiv ',name); for i:=1 to n do write(Mas[i]:4) end else Writeln('Net elementov, ydovletvorayshih ysloviy!'); end; |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 14:19 |