![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
ruVdim |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Задание: Вводится последовательность целых чисел(по одному). Используя список, найти среднее двух соседних чисел. Организовать новый список в котором расположить средние по неубыванию. Распечатать списки.
. Я создал список, затем нужно только вычислить средние ариф. соседних чисел ![]() Заранее спасибо.. |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Ты зря сортировал ЭТОТ список...
Опиши процедуру Append, задачей которой будет добавлять переданное в нее значение типа Real в список... Потом проходи по исходному списку, и делай так: ...После заполнения списка средних его надо будет отсортировать... Справишься? |
ruVdim |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Ты зря сортировал ЭТОТ список... Опиши процедуру Append, задачей которой будет добавлять переданное в нее значение типа Real в список... Потом проходи по исходному списку, и делай так: ...После заполнения списка средних его надо будет отсортировать... Справишься? Не знаю, попробую... ![]() |
ruVdim |
![]()
Сообщение
#4
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Не знаю, попробую... ![]() Я описал процедуру, которая добавляет в новый список вещ. числа
Но при выполнении этой процедуры возникли сложности : "Фактический параметр должен быть переменной" append(pk, (p^.info + p^.link^.info) / 2); |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата Procedure append(var pk: pt; var r: real); |
ruVdim |
![]()
Сообщение
#6
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
|
ruVdim |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
|
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Цитата почему со всего исходного списка n-целых чисел, после подсчета средних, получается вещ. список, содержащий только одно среднее(последняя пара 2-ух целых чисел)? Значит, что-то неправильно вызываешь...Кстати, я посмотрел на твои изменения в программе. Ты очень много лишнего делаешь, тебе не кажется? Можно же обойтись одной структурой tlist для хранения обоих списков. Ведь Real совместим с Integer по присваиванию, то есть значение типа Integer можно без проблем занести в поле типа Real. И еще. Когда я говорил о написании процедуры Append, я имел в виду, что при заполнении первого списка тоже может использоваться эта процедура. Смотри: uses crt;Не забудь удалить списки... |
ruVdim |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Спасибо тебе огромное !
![]() |
ruVdim |
![]()
Сообщение
#10
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
|
volvo |
![]()
Сообщение
#11
|
Гость ![]() |
Цитата Задача была все-таки незачтена. Причина? Нежелание преподавателя признать ее правильной (или ты не смог объяснить ее работу), или она сбоит где-то? С первым ничего поделать нельзя, со вторым - можно и даже нужно. Говори на каких данных сбоит, будем разбираться... |
ruVdim |
![]()
Сообщение
#12
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Причина? Нежелание преподавателя признать ее правильной (или ты не смог объяснить ее работу), или она сбоит где-то? С первым ничего поделать нельзя, со вторым - можно и даже нужно. Говори на каких данных сбоит, будем разбираться... Препод сказал, что надо работать со СПИСКОМ: чтение и запись производить с головы в хвост и обратно. А мы зануляли положение указателя. |
volvo |
![]()
Сообщение
#13
|
Гость ![]() |
Сорри, можно у меня в коде показать, ГДЕ я что там "занулял"?
Или твой преподаватель хочет сказать, что надо работать с неинициализированными переменными-указателями на "голову"/"хвост" списка (это единственное место, где у меня в коде присутствует присвоение NIL)? Тогда пусть идет учит матчасть... |
ruVdim |
![]()
Сообщение
#14
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Просмотрев программу, он, позже, отметил:"Ошибка в процедуре append"
Добавлено через 7 мин. Вообщем надо сделать просто так, чтобы чтение первого списка и запись его в другой проходило с хвоста (в текущем положении указателя) к голове. |
ruVdim |
![]()
Сообщение
#15
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
|
volvo |
![]()
Сообщение
#16
|
Гость ![]() |
Цитата Просмотрев программу, он, позже, отметил:"Ошибка в процедуре append" Ошибка на самом деле глубже - у него в ДНК... Это не лечится. Append не содержит никакой ошибки, и работает ровно так, как от него требуется... А насчет Цитата надо сделать просто так, чтобы чтение первого списка и запись его в другой проходило с хвоста - бери и делай... Изначально в задании этого не было, а переделывать программу под каждое изменение задания преподавателем у меня нет никакого желания. |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 14:13 |