Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Комбинированный и множественный типы данных.

Автор: ДеД*Гы^ 24.01.2007 8:17

Комбинированный и множественный типы данных.

Цитата
Определена запись:
Record
name:array [1..m] of char; {название государства}
sqr : real; {площадь территории}
peop, sch, hosp, inst: word{численность населения, число школ, больниц, вузов}
end;
Используя предложенную структуру записи, составить программу, которая для указанных государств СНГ вводит информацию и печатает название государства, удовлетворяющего требованиям, указанным в варианте и соответствующие характеристики.
Россия, Молдова, Украина. Распечатать названия и характеристики государств в порядке неубывания числа школ, приходящихся на 1000 человек.


я просматрел форум но ничего похожего не увидел...
если я чтото просмотрел подскажите где...

Автор: Lapp 24.01.2007 9:12

Цитата(ДеД*Гы^ @ 24.01.2007 5:17) *

я просматрел форум но ничего похожего не увидел...

До какой степени должно быть похоже? Обычная БД и печать по выборке. Таких задач тысячи..
Вводишь в цикле, записываешь файл, считываешь файл, ищешь в цикле по полям, печатаешь..
Тут даже алгоритма нет как такового..

PS
замени поле sqr на что-нить еще - вдруг понадобится функция Sqr(x) ..

Автор: arhimag 24.01.2007 11:08

Код
const m=255;
type tt = Record
name:array [1..m] of char; {íàçâàíèå ãîñóäàðñòâà}
sqr : real; {ïëîùàäü òåððèòîðèè}
peop, sch, hosp, inst: word{÷èñëåííîñòü íàñåëåíèÿ, ÷èñëî øêîë, áîëüíèö, âóçîâ}
end;
var tmp : string;
var country : array [1..30] of tt;
var ar : array [1..30] of real;
var index : array [1..30] of integer;
var n,i,j : integer;

Procedure Bubble();
Var i, j, t: Integer;
tmp : real;
Begin
  For i := 1 To n Do
    For j := n DownTo i+1 Do
      If ar[Pred(j)] > ar[j] Then Begin { < }
        Tmp := ar[Pred(j)]; ar[Pred(j)] := ar[j]; ar[j] := Tmp;
        T := index[Pred(j)]; index[Pred(j)] := index[j]; index[j] := T
      End
End;

begin
  for i:= 1 to 30 do
    index[i]:=i;
  for i:= 1 to 30 do
    for j:= 1 to m do
      country[i].name[j]:=' ';
  read(n);
  for i:= 1 to n do begin
    readln(tmp);
    for j:= 1 to length(tmp) do
      country[i].name[j]:=tmp[j];
    readln(country[i].sqr);
    readln(country[i].peop,country[i].sch,country[i].hosp,country[i].inst);
  end;
  for i:= 1 to n do
    ar[i]:=country[i].sch/country[i].peop;
  bubble;
  for i:= 1 to n do begin
    for j:= 1 to m do
      write(country[index[i]].name[j]);
    writeln;
  end;
    { TODO -oUser -cConsole Main : Insert code here }
end.

Автор: ДеД*Гы^ 25.01.2007 17:12

спасибки...

Автор: can you buy zithromax in south a 4.12.2021 2:27

Comprar Cialis En Estados Unidos