![]() |
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 |
![]() ![]() |
Lapp |
![]()
Сообщение
#2
|
|||
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
чувствую что есть ошибки, Так не пойдет.. Типа другие должны проверять твой код по мере его написания, в реальном времени? ![]() Хотя бы _допиши_ свой код и _попробуй_скомпилить_. Синтаксические ошибки тебе скажет компилятор. Можешь даже нажать F9, не дописав - большая часть ошибок (если они есть) будет найдена. Останутся вопросы или просто непонимание, что происходит - you're always welcome! Насколько я понял, по алгоритму у теья больше вопросов нет. Но если появятся - тоже неси ![]() Добавлено через 16 мин.
Пара замечаний по стилю.. 1. Желательно цикл или условный оператор не обрывать на do, then или else. То есть вот это: for i:=1 to n do- лучше записать так: for i:=1 to n do write(Mas[i]:4)- или по крайней мере сместить нижнюю строку вправо: for i:=1 to n do 2. Если после do, then, else идет begin, то, в соответствии с вышесказанным, лучше писать его на той же строке. 3. После begin, repeat, case следующие строки смещай вправо до закрытия блока (end, until) for i:=1 to n do begin -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
|||
ivan |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ок. Спасибо за замечания
|
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 14:18 |