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

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


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

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

Лучшие эксперты по данной тематике

Асмик Гаряка
Статус: Советник
Рейтинг: 10736
∙ повысить рейтинг »
Орловский Дмитрий
Статус: Мастер-Эксперт
Рейтинг: 7241
∙ повысить рейтинг »
Роман Селиверстов
Статус: Советник
Рейтинг: 5180
∙ повысить рейтинг »

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

Номер выпуска:1250
Дата выхода:10.08.2013, 10:30
Администратор рассылки:Boriss (Академик)
Подписчиков / экспертов:46 / 53
Вопросов / ответов:3 / 4

Консультация # 158726: Здравствуйте, уважаемые эксперты! Задание у меня состоит в следующем: - описать объект в рамках Pascal; - продемонстрировать работу с объектом, созданным динамически и уничтожить; - создать иерархию объектов, имеющую не менее 3ех уровней (постараться использовать виртуальные методы). У меня проблема в следующем: не могу приду...


Консультация # 130582: Здравствуйте, уважаемые эксперты, помогите пожалуйсто с решением задачу. Тема - строки. Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 букв, между соседними словами - запятая, за последним словом точка. Напечатать все слова, отличные от последнего преобразовав каждое по правилу: удалить из слова все предыдущие в...
Консультация # 132311: Здравствуйте, уважаемые эксперты! Сегодня две задачки. Необходимо циклически сдвинуть элементы массива влево на k позиций. Число k задаётся после числовой последовательности. 7 1 2 3 4 5 6 7 3 4 5 6 7 1 2 3 Решите предыдущую задачу так, чтобы общее количество парных обменов элементов не превосходило n. 9 2 7 2 9 ...

Консультация # 158726:

Здравствуйте, уважаемые эксперты!

Задание у меня состоит в следующем:
- описать объект в рамках Pascal;
- продемонстрировать работу с объектом, созданным динамически и уничтожить;
- создать иерархию объектов, имеющую не менее 3ех уровней (постараться использовать виртуальные методы).

У меня проблема в следующем: не могу придумать ни объект, ни иерархию.

Подскажите, пожалуйста, какой объект можно описать (и какие у него описать методы), и если можно иерархию.

Заранее спасибо!

Дата отправки: 25.01.2009, 18:43
Вопрос задал: Draconit
Всего ответов: 2
Страница онлайн-консультации »


Консультирует Киселёва Алёна aka Verena (Академик):

Здравствуйте, Draconit!
Самый тривиальный пример: первичный объект - список (элемент, ссылки на следующий/предыдущий, создание, удаление), на основе этого объекта, например, объект-стек (реализуем методы добавления и удаления из начала списка), на основе объекта-стека реализуем объект-D-очередь (если не ошибаюсь, так называется список, где добавление и удаление возможно из конца и начала) (добавляем к имеющемуся ещё методы добавления и удаления из конца). Пример понятный и полезный, потому как можно его использовать потом.
Удачи!

Консультировал: Киселёва Алёна aka Verena (Академик)
Дата отправки: 25.01.2009, 19:06
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Зенченко Константин Николаевич (Модератор):

Здравствуйте, Draconit!

В приложении программа, которая создает иерархию из трёх объектов: oPoint, oLine и oFigure. Можете использовать её как пример.
Удачи!

Приложение:

Консультировал: Зенченко Константин Николаевич (Модератор)
Дата отправки: 26.01.2009, 11:03
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 130582:

Здравствуйте, уважаемые эксперты, помогите пожалуйсто с решением задачу. Тема - строки. Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 букв, между соседними словами - запятая, за последним словом точка. Напечатать все слова, отличные от последнего преобразовав каждое по правилу: удалить из слова все предыдущие вхождения последней буквы. Спасибо

Дата отправки: 04.04.2008, 18:12
Вопрос задал: Samuray
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Зенченко Константин Николаевич (Модератор):

Здравствуйте, Samuray!

В приложении программа, которая всё делает только с помощью строк и строковых функций.
ps:вопросы задавайте в мини-форум.
Удачи!

Приложение:

Консультировал: Зенченко Константин Николаевич (Модератор)
Дата отправки: 07.04.2008, 17:18
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 132311:

Здравствуйте, уважаемые эксперты!
Сегодня две задачки.
Необходимо циклически сдвинуть элементы массива влево на k позиций. Число k задаётся после числовой последовательности.
7
1 2 3 4 5 6 7
3
4 5 6 7 1 2 3
Решите предыдущую задачу так, чтобы общее количество парных обменов элементов не превосходило n.
9
2 7 2 9 8 3 4 1 7
6
4 1 7 2 7 2 9 8 3
Обе задачи я решил, но во второй у меня есть ошибка. Подскажите мне её пожалуйста. Код в приложении.

Дата отправки: 15.04.2008, 13:43
Вопрос задал: Хощенко Артём Владимирович
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Denisss:


Здравствуйте, Хощенко Артём Владимирович!


For i := 1 To n Do
Begin
  If
((n Mod i = 0) And (k Mod i = 0)) Then
  Begin

    gcd := i;
  End;
End;


1) Не ясно чего Вы хотите получить в результате (по сути, код ищет наибольший общий делитель).
2) Нет гарантии, что в результате такого перебора переменной gcd будет присвоено какое-либо значение. Например, если k и n - разные простые числа, переменной gcd не будет присвоено никакого значения.


For i := 1 To gcd Do
  Begin
    While
(t1 <= gcd) Do
    Begin

      t2 := x[t1];
      x[t1] := x[t1+gcd];
      x[t1+gcd] := t2;
      Inc(t1);
    End;
End;


1) Учитывая, что gcd может оказаться неопределенной, то этот код уже сам по себе ошибка.
2) Цикл for совершенно здесь не нужен.
3) В результате такого "сдвига" Вы сможете только в единственном варианте сдвинуть весь массив - только если gcd = n / 2. Иначе Вы сдвигаете только часть массива, а оставшуюся часть оставляете нетронутой.

Т.е. в результате, Ваш код будет работать верно только при n = 1, либо при соответствующем заполнении массива будет создаваться ощущение, будто все перемещено верно.

Предлагаю Вам свой вариант решения второй задачи (см. в приложении), который является модификацией Вашего кода (возможно он не самый оптимальный, но вполне удовлетворяет поставленному условию).

Успехов!

Приложение:

Консультировал: Denisss
Дата отправки: 16.04.2008, 20:07
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное