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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2013, 19:58   #1
Nickolay0512
Пользователь
 
Регистрация: 26.10.2013
Сообщений: 54
По умолчанию Помогите с решением задач на паскале

1)Используйте линейные списки для хранения последовательности чисел.
Опишите процедуру, которая вставляет:
а) новый элемент Е после первого элемента непустого списка;
б) новый элемент Е1 за каждым вхождением элемента Е.

2)Дано натуральное n. Программа: напечатать в порядке убывания все
рациональные числа вида
a / b, где a , b > 0, b <= n, 0 < a/b <= 1, a и b - взаимно просты. Используйте
сортировку с помощью дерева.
Nickolay0512 вне форума Ответить с цитированием
Старый 26.10.2013, 20:06   #2
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

1.а) Создается новый элемент, в него встраивается указатель на 2й, в первом меняется указатель со 2го на нововеденный
1.б) Если элемент входит в список > 1 раза - бесконечный цикл получен. Может для элемента с таким же значением? Тогда см. п. 1.а
2) if (a mod b <> 0) then ... + проверки на простоту + проверки на невыход значения за границы.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 26.10.2013, 21:15   #3
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
2) if (a mod b <> 0) then ... + проверки на простоту + проверки на невыход значения за границы.
Если бы всё так просто..
Только я вообще не понимаю, зачем там дерево.. (да и вообще идей нет)..
А хотя нет.. идея есть..
Решетом (каким угодно) сливаем простые числа (до N) в массив.. далее тупо цикл в цикле и выводим.. но я всё равно не понимаю, зачем здесь деревья..

Последний раз редактировалось Poma][a; 26.10.2013 в 21:20.
Poma][a вне форума Ответить с цитированием
Старый 26.10.2013, 21:52   #4
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Nickolay0512
Цитата:
1)Используйте линейные списки для хранения последовательности чисел.
Опишите процедуру, которая вставляет:
а) новый элемент Е после первого элемента непустого списка;
б) новый элемент Е1 за каждым вхождением элемента Е.
По этому вопросу (линейные списки) предлагаю посмотреть учебник по языку Паскаль от Т.А. Павловской: В разделе Паскаль есть список литературы, там есть. В учебнике есть хороший пример со всеми процедурами для работы со списком.

Цитата:
2)Дано натуральное n. Программа: напечатать в порядке убывания все
рациональные числа вида
a / b, где a , b > 0, b <= n, 0 < a/b <= 1, a и b - взаимно просты. Используйте
сортировку с помощью дерева.
Так думаю, что необходимо организовать циклы.
Один - по b -> от n до 1;
Второй - по a -> от b до 1;
Во втором цикле проверять, что a и b взаимно простые - алгоритм Евклида для поиска наибольшего общего делителя. Если НОД = 1 - числа взаимно простые.
Поскольку надо сортировать полученные рациональные числа и выводить в порядке убывания, то можно, так думаю, организовать процедуры для работы с деревом. Всякое найденное рациональное число вставляем в дерево.
После завершения циклов просматриваем дерево и выводим в требуемом порядке.
Вот только как его, дерево, использовать?
Например: узлы - числитель, листья - знаменатель.


Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с решением задач на C# Galgameh Общие вопросы .NET 4 11.11.2009 14:29
Помогите пожалуйста с решением задач на Паскале Митяй Помощь студентам 0 08.04.2009 16:23
помогите с решением задач на паскале с использованием цикла!!! Alex@ndra Помощь студентам 2 07.12.2008 10:00