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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2009, 17:03   #1
Asira
Пользователь
 
Регистрация: 12.12.2009
Сообщений: 84
По умолчанию Записной тип данных...

Помогите понять почему прога не выводит имя государства с наибольшим количеством городов???
Код:
{$APPTYPE CONSOLE}

uses
  SysUtils;

const n=3;
type gos =record
             name:string;
             s,ch,col:integer;
            end;
     mas=array[1..n] of gos;
var i,k,k1,k2,m1,m2:integer;
   sr, pl,col,max:real;
    a,b:string;
    m:mas;
begin
 for i:=1 to n do
  begin
   writeln('Enter name');
   readln(m[i].name);
   writeln('Enter s,ch,col ');
   readln(m[i].s,m[i].ch,m[i].col);
end;
 sr:=0;
 max:=0;
 for i:=1 to n do
  begin
   if (m[i].s<>0) and (m[i].ch<>0) then sr:=m[i].ch/m[i].s;
   writeln(m[i].name,' ',sr:0:2);
   if col>max then
    begin
     max:=col;
     k:=i;
    end;
  end;
 writeln('Max. colichestvo gorodov v gosudarstve ',m[k].name);
writeln('Enter name1');
 readln(a);
 writeln('Enter name2');
 readln(b);
 k1:=0;
 k2:=0;
 for i:=1 to n do
   if a=m[i].name then
 begin
     m1:=m[i].s;
     k1:=1;
 end;
       for i:=1 to n do
        if b=m[i].name then
     begin
     m2:=m[i].s;
     k2:=1;
     end;
 if (k1=0) or (k2=0) then writeln('No this gos ')
 else
 if m1=m2 then writeln('Odinakovo')
 else
 if m1<m2 then writeln('Ploschad ',b,' bolshe plo ',a,' na ',m2-m1)
 else writeln('Plochad ',a,' bolshe pl ',b,' na ',m1-m2);
readln;
end.
задачка такая
Данные о государстве: название, площадь, численность населения, количество городов. Определить среднюю плотность населения в каждом государстве, государство с наибольшим количеством городов, а также по запросу названий государств, в каком из них большая площадь и на сколько.
Asira вне форума Ответить с цитированием
Старый 22.12.2009, 22:02   #2
Greblin
Меркантильный кю
Участник клуба
 
Аватар для Greblin
 
Регистрация: 02.02.2008
Сообщений: 1,001
По умолчанию

Цитата:
Код:
 if col>max then
    begin
     max:=col;
     k:=i;
    end;
Не с той переменной col работаете, надо m[i].col
Росли вроде умными, выросли дурнями... (c)А.Васильев
Greblin вне форума Ответить с цитированием
Старый 22.12.2009, 23:51   #3
Asira
Пользователь
 
Регистрация: 12.12.2009
Сообщений: 84
По умолчанию

Спасиб!!!!!!!!!!!! Сама бы наверное не заметила....!
Asira вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Комбинированный тип данных Nightt Помощь студентам 0 19.06.2009 18:25
Пользовательский тип данных cudalover Помощь студентам 10 05.04.2009 17:04
В Access есть тип данных "Счетчик".Есть ли подобный тип данных в MS Sql Server 2000? An_ton SQL, базы данных 5 16.01.2009 17:55
Тип данных в Interbase Canadec БД в Delphi 4 29.08.2007 17:34