![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
noskovgleb |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
program p2;
uses crt;
type
TPtr = ^TElem;
TElem = record
SPG : char;
link : TPtr;
end;
var
j :integer;
i :byte;
BegQ,EndQ :TPtr;
SG :char;
{-----------BEGIN PROCEDURE-------------}
Procedure AddCh(var Ch: char);
var p :TPtr;
Begin
new(p);
p^.SPG := ch;
p^.link:= nil;
if EndQ = nil {Ґб«Ё б(r)§¤ Ґвбп ЇҐаўл(c) н«Ґ¬Ґв (r)зҐаҐ¤Ё}
then BegQ := P
{Ґб«Ё б(r)§¤ Ґвбп (r)зҐаҐ¤(r)(c) н«Ґ¬Ґв (r)зҐаҐ¤Ё}
else EndQ^.link:= p;
EndQ := p;
End;
{---------------------------------------}
procedure GetDelEl( var Ch:char);
var
P: TPtr;
Begin
ch := BegQ^.SPG;
p := BegQ;
BegQ:= P^.link;
if BegQ = nil {Ґб«Ё г¤ «пҐвбп Ї(r)б«Ґ¤Ё(c) н«Ґ¬Ґв (r)зҐаҐ¤Ё}
then EndQ := nil;
dispose(p);
End;
{------------END PROCEDURE--------------}
BEGIN
clrscr;
j := 176;
BegQ := nil;
EndQ := nil;
for i:=176 to 223 do
AddCh(char(i));
writeln('“¤ «ҐЁҐ (r)зҐаҐ¤Ё б а бЇҐз вЄ(r)(c) § 票(c) ҐҐ н«Ґ¬Ґ(r)ў');
while BegQ <>nil do
begin
GetDelEl(SG);
write(j,'=',SG);
inc(j)
end;
readln;
END.
Добавлено через 1 мин. собственно вопрос задан... помогите, объясните мне... |
noskovgleb |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
Все задание звучит так: Составить список, состоящий из кодов псевдографических символов. Упорядочить список в порядке убывания. У меня пока получилось составить список и вывести этот список в порядке возрастания. Буду благодарен любой помощи!
|
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
Цитата У меня пока получилось составить список и вывести этот список в порядке возрастания Это неправильное решение. Ты не упорядочиваешь список, а создаешь его уже упорядоченным. С таким же успехом можно: for i:=223 downto 176 do
AddCh(char(i));
, но это опять же не решение поставленной задачи. В поиске есть много чего по сортировке списков. Смотрел? |
noskovgleb |
![]()
Сообщение
#4
|
Новичок ![]() Группа: Пользователи Сообщений: 30 Пол: Мужской Репутация: ![]() ![]() ![]() |
тогда я не правильно понял задачу. Можешь объяснить? что нужно сделать?
|
Lapp |
![]()
Сообщение
#5
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
тогда я не правильно понял задачу. Можешь объяснить? что нужно сделать? Вот, что.1. Сделать саму структуру списка: соответствующим образом организованную память + процедуры управления им (добавить, удалить, найти элемент и т.п). 2. С самого начала список как бы пустой. 3. Затем ты в него должен добавить эоементы: хочешь, с клавиатуры (например, через меню), хочешь с помощью случайного процесса. 4. Список не обязательно заполняется до конца (то есть в нем не обязательно ВСЕ допустимые элементы). 5. После того, как список создан, ты его должен отсортировать. Для этого, думаю, тебе надо предусмотреть специальную процедуру, выполняющую сортировку. Все. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 24.07.2025 2:19 |