Нужна помощь по информатике, заранее спасибо, язык программирования паскаль

0 голосов
13 просмотров

Нужна помощь по информатике, заранее спасибо, язык программирования паскаль


image

Информатика (15 баллов) | 13 просмотров
0

Вы не указали язык программирования или программную среду.

0

Это на какую тему? Массивы или записи?

0

Записи

0

Куда проще это было решить без записей!

Дан 1 ответ
0 голосов
Правильный ответ

PascalABC.NET 3.4.2, сборка 1864 от 11.11.2018

Внимание! Если программа не работает, обновите версию!

type

 Расход = record

   Kol := new real[4];

 end;


begin

 var dt := new Расход[3];

 Println('Расход вводится помесячно для каждого счетчика');

 for var i := 0 to 2 do

 begin

   Write('Счетчик ', i + 1, ': ');

   for var j := 0 to 3 do

     Read(dt[i].Kol[j])

 end;

 var C := ReadReal('Тариф за кубометр воды, руб:');

 Println('Максимальный расход во втором месяце у счетчика',

     dt.Select((v, i)-> (i, v.Kol[1])).MaxBy(t -> t[1])[0] + 1);

 Println('Количество счетчиков с расходом в первом месяце больше 2:',

     dt.Where(t -> t.Kol[0] > 2).Count);

 Println('Оплата по счетчику №3, руб:',

     dt[2].Kol.Sum * C);

end.

Пример

Расход вводится помесячно для каждого счетчика

Счетчик 1: 1.5 2.4 3.1 0.2

Счетчик 2: 2.5 4.2 0.6 3

Счетчик 3: 4 3 4 1

Тариф за кубометр воды, руб: 38.32

Максимальный расход во втором месяце у счетчика 2

Количество счетчиков с расходом в первом месяце больше 2: 2

Оплата по счетчику №3, руб: 459.84

(654k баллов)