IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Помогите с сортировкой
tory
сообщение 30.01.2007 11:08
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


М
Читай правила!
В следующий раз, пост без тегов - удалю!


Список устройств нужно отсортировать по убыванию их стоимости.
Вот что получилось, но не работает... Не могу скомпилировать.
Помогите довести до ума.

Program Lab;
uses crt;
const
n = 5;

type
TRec = record
end;
Var
TBase: array [1..n] of TRec;
Name : string;
Ves : real;
Vus : real;
Dli : real;
Shi : real;
Stoim : real;
procedure Input (var b : TBase); {ўў®¤ ¤ ­­ле}
var
i : byte;
begin
for i := 1 to n do begin
writeln('‡ ЇЁбм N ',i);
write('Naimenovanie ustroistva : '); readln(b[i].name);
write('Ves : '); readln(b[i].Ves);
write('Vusota : '); readln(b[i].Vus);
write('Dlina : '); readln(b[i].Dli);
write('Shirina : '); readln(b[i].Shi);
write('Stoimost : '); readln(b[i].Stoim);
writeln;
end;
end;

procedure Print(b : TBase); // ўлў®¤ ¤ ­­ле
var
i : byte;
begin
for i := 1 to n do begin
writeln('‡ ЇЁбм N ',i);
write('Naimenovanie ustroistva : '); readln(b[i].name);
write('Ves : '); readln(b[i].Ves);
write('Vusota : '); readln(b[i].Vus);
write('Dlina : '); readln(b[i].Dli);
write('Shirina : '); readln(b[i].Shi);
write('Stoimost : '); readln(b[i].Stoim);
writeln;
end;
end;
procedure Sort(var b : TBase); {б®авЁа®ўЄ § ЇЁбЁ Ї® Ї®«о Age}
var
i : byte;
temp : TRec;
flag : boolean;
begin
repeat
flag := true;
for i := 1 to n - 1 do
if not (b[i].Stoim >= b[i+1].Stoim) then begin
temp := b[i];
b[i] := b[i + 1];
b[i + 1] := temp;
flag := false;
end;
until flag;
end;

var
base : TBase;
Begin
clrscr;
Writeln(' ':25,'Vedomost P-21');
writeln(' ':5,'|---|--------------|-----|--------------------------|-------|');
writeln(' ':5,'| |Naimenovanie |Ves | Gabaritu, cm | Stoim |');
writeln(' ':5,' | ustroistva | kG | Vusota | Dlina |Shirina | grn |');
writeln(' ':5,'|---|--------------|-----|--------------------------|-------|');
var
base : TBase;
begin
writeln('‚ў®¤ ¤ ­­ле : ');
Input(base);
writeln('‚лў®¤ ¤® б®авЁа®ўЄЁ : ');
Print(base);
Sort(base);
writeln;
writeln('‚лў®¤ Ї®б«Ґ б®авЁа®ўЄЁ : ');
Print(base);
readln;
end.


Сообщение отредактировано: Altair - 30.01.2007 11:14
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 30.01.2007 11:45
Сообщение #2


Гость






type
TRec = record
end;
Var
TBase: array [1..n] of TRec;
Name : string;
Ves : real;
Vus : real;
Dli : real;
Shi : real;
Stoim : real;
заменить на
type
TRec = record
Name : string;
Ves : real;
Vus : real;
Dli : real;
Shi : real;
Stoim : real;
end;
TBase = array [1..n] of TRec;

Основная программа должна выглядеть так:
Begin
clrscr;
Writeln(' ':25,'Vedomost P-21');
writeln(' ':5,'|---|--------------|-----|--------------------------|-------|');
writeln(' ':5,'| |Naimenovanie |Ves | Gabaritu, cm | Stoim |');
writeln(' ':5,' | ustroistva | kG | Vusota | Dlina |Shirina | grn |');
writeln(' ':5,'|---|--------------|-----|--------------------------|-------|');
{
Этот фрагмент - лишний, убираем...
var
base : TBase;
begin
}
writeln('‚ў®¤ ¤ ­­ле : ');
Input(base);
writeln('‚лў®¤ ¤® б®авЁа®ўЄЁ : ');
Print(base);
Sort(base);
writeln;
writeln('‚лў®¤ Ї®б«Ґ б®авЁа®ўЄЁ : ');
Print(base);
readln;
end.

Теперь программа компилируется... Отлаживай... smile.gif
 К началу страницы 
+ Ответить 
tory
сообщение 30.01.2007 15:42
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


Вольво лучший. Спасибо!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 24.06.2024 18:29
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"