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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2011, 21:09   #1
Alina111
Пользователь
 
Регистрация: 20.12.2011
Сообщений: 40
Восклицание Не могу доделать вторую часть программы,сортировка

Создать массив записей, содержащих информацию об автомобилях(гос.номер, марка,категория, объем двигателя).Отсортировать массив по номеру.
Массив создала,нужна сортировка.

Код:
Program lab;
Type
avtomobil = Record
gosnomer : integer;
marka: String;
kat: char;
obdv:integer;
End;
Var Baza:array[1..30] of avtomobil;
n,i,j,f:integer;
Procedure Form(Var  baza:array [1..30] of avtomobil);
Begin
 Writeln('Введите колличество машин <=30');
 Readln(n);
 For i:=1 to n do
 With baza[i] do
 Begin
 Writeln('Введите государственный номер ',i,'-ого автомобиля');
 Readln(gosnomer);
 Writeln('Введите марку  ',i,'-ого автомобиля');
 Readln(marka);
 Writeln('Введите категорию ',i,'-ого автомобиля');
 Readln(kat);
 Writeln('Введите объем двигателя ',i,'-ого автомобиля');
 Readln(obdv);
 End;
  Writeln;
 Writeln('Информация об автомобилях');
 end;
 
 Procedure vivod(Var  baza:array [1..30] of avtomobil);
 begin
 For i:=1 to n do
 Write('*');
 Writeln;
 Writeln('*Государственный номер* Марка * Категория * Объем двигателя *');
 For i:=1 to n do
 Write('*');
 Writeln;
 For i:=1 to n do
 With baza[i] do
 begin
 Writeln (gosnomer:21, marka:7, kat:11, obdv:17);
 end;
 end;
 
 
 Begin
 Form(baza);
 vivod(baza);
 End.

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 28.12.2011 в 22:34.
Alina111 вне форума Ответить с цитированием
Старый 28.12.2011, 22:56   #2
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

А в чем конкретно проблема? )
Son Of Pain вне форума Ответить с цитированием
Старый 28.12.2011, 23:05   #3
Alina111
Пользователь
 
Регистрация: 20.12.2011
Сообщений: 40
По умолчанию

Не получается,не сильна я в этом..)
Не поможете?
Alina111 вне форума Ответить с цитированием
Старый 28.12.2011, 23:08   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
flag:=1; // flag:byte;buf:avtomobil;
while flag=1 do begin
flag:=0;
 For i:=1 to n-1 do 
 if baza[i].gosnomer>baza[i+1].gosnomer then begin
 buf:=baza[i]
 baza[i]:=baza[i+1];
baza[i+1]:=buf;
flag:=1;
end;
end;
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу доделать задачу X-REY Паскаль, Turbo Pascal, PascalABC.NET 1 25.10.2011 20:50
не могу доделать лабу) alexander1111 Помощь студентам 0 05.03.2011 14:19
не могу доделать на си VIKA1829 C# (си шарп) 3 27.02.2011 14:40
Не могу доделать ymanety Общие вопросы C/C++ 0 09.11.2010 22:11
Уважаемые! Помогите пожалуйста заполнить вторую часть таблицы в примере) Лука Microsoft Office Excel 0 07.07.2009 16:12