Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на языке Pascal


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный платный хостинг на базе Windows 2008

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Чемпионы рейтинга экспертов в этой рассылке

_Ayl_
Статус: Студент
Рейтинг: 1438
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 1392
∙ повысить рейтинг »
Micren
Статус: Бакалавр
Рейтинг: 1272
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Программирование / Pascal (Паскаль)

Номер выпуска:995
Дата выхода:20.12.2009, 19:00
Администратор рассылки:Калашников О.А., Руководитель
Подписчиков / экспертов:361 / 189
Вопросов / ответов:1 / 1

Вопрос № 175281: Здравствуйте,срочно нужно подробное и простое решение 2х след.задач Даны два массива x[1] ≤… ≤ x[k], y[1] ≤ … ≤ y[l]. Найти их «пересечение», т.е. массив z[1] ≤… ≤ z[m], содержащий их общие элементы, приче...



Вопрос № 175281:

Здравствуйте,срочно нужно подробное и простое решение 2х след.задач

Даны два массива x[1] ≤… ≤ x[k], y[1] ≤ … ≤ y[l]. Найти их «пересечение», т.е. массив z[1] ≤… ≤ z[m], содержащий их общие элементы, причем, кратность каждого элемента в массиве z равняется минимуму из его кратностей в массивах x и y .Число действий должно быть порядка k+ l.


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Дано натуральное число N. Определить длину периода 1/n. Период дроби равен периоду в последовательности остатков. Построить график зависимости периода от N.

на эти задачи нужна еще блок схема,в коде программы прошу в скобках пояснять выполнение.спасибо

Отправлен: 15.12.2009, 09:11
Вопрос задал: Benqq, Посетитель
Всего ответов: 1
Страница вопроса »


Отвечает Verena, Профессионал :
Здравствуйте, Benqq.
Вообще-то, нужно задавать по одной задаче в вопросе, поэтому решу только первую.
Тип данных, полагаю, непринципиален, буду использовать word. Поскольку массивы заданы уже отсортированные, то мы можем упростить нахождение одинакового элемента. Покажу на примере:
X: 1 2 3 3 4 6
Y: 1 1 3 4 5
В результате должен получиться массив Z: 1 2 3 4. Выбираем в качестве основного массив с меньшей размерностью, то есть в данном случае Y, идём по нему в цикле. Рассматриваем первый элемент (1), запускаем цикл по X (пока с 1-го элемента, потому что мы зашли в него впервые), на первой же итерации видим совпадение значений, а значит сразу пишем 1 в Z и переводим текущую позицию в массиве X на следующий элемент, чтобы не учесть ещё раз тот же самый. Возвращаемся во внешний цикл, выбираем следующий элемент X - 2. Ищем его в Y, начиная со второго элемента. 1 - не подходит, а 3 - уже больше, чем заданное число, а значит, можно прерывать поиск: учитывая отсор тированность массивов, найти нужное число дальше мы уже не сможем. При этом текущую позиция в Y мы не меняем, потому что как бы не знаем, что там хранится. И так далее.
Весь этот процесс для удобства выделим в процедуру.
Код с комментариями - в приложении, если что-то непонятно, спрашивайте.
Удачи!

Приложение:

-----
Эта история - не для истории, понимаешь?

Ответ отправил: Verena, Профессионал
Ответ отправлен: 16.12.2009, 22:35

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 257822 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2009.6.12 от 30.11.2009

    В избранное