Предмет: Информатика, автор: srshibamoving

Даны целое число n и массив, содержащий n элементов. Элементами массива являются записи, которые хранятся в текстовом файле и компонентами которого являются а) фамилии б) имена потребителей электроэнергии в) предыдущее показание счетчика, г) последнее показание счетчика. Выведите фамилии абонентов, потребление электроэнергии которых находится в заданном диапазоне [a,b]. Нарисуйте блок-схему и напишите программу на языке Turbo Pascal.

Ответы

Автор ответа: honvert
1

Ответ:

Блок-схема алгоритма может выглядеть следующим образом:

Считывание целого числа n и массива, содержащего n элементов.

Считывание значений a и b.

Цикл for, в котором итератор проходит по всем элементам массива.

Внутри цикла проверка условия, находится ли потребление электроэнергии абонента в диапазоне [a,b]. Если условие истинно, то вывод фамилии абонента.

Конец цикла.

Программа:

const

 N = 100; // максимальное количество записей

type

 TSubscriber = record

   surname: string[20];

   name: string[20];

   previous_reading: integer;

   current_reading: integer;

 end;

var

 subscribers: array[1..N] of TSubscriber;

 n: integer; // фактическое количество записей

 a, b: integer; // диапазон энергопотребления

begin

 // читаем массив записей

 readln(n);

 for i := 1 to n do begin

   readln(subscribers[i].surname, subscribers[i].name, subscribers[i].previous_reading, subscribers[i].current_reading);

 end;

 // считываем диапазон энергопотребления

 readln(a, b);

 // выводим фамилии абонентов, энергопотребление которых находится в диапазоне [a,b]

 for i := 1 to n do begin

   if (subscribers[i].previous_reading < subscribers[i].current_reading) and (subscribers[i].current_reading - subscribers[i].previous_reading >= a) and (subscribers[i].current_reading - subscribers[i].previous_reading <= b) then begin

     writeln(subscribers[i].surname);

   end;

 end;

end.

Похожие вопросы
Предмет: Українська мова, автор: Аноним
1. які є види опису? а) повідомлення, заява, оголошення; б) індуктивний та дедуктивний; в) пейзаж, портрет, інтер’єр; г) аналітичний і синтетичний. 2. укажіть рядок, у якому мовознавчі терміни безпосередньо стосуються синтаксису. а. означення, абревіація, складносурядне речення, узгодження. б. речення, прилягання, обставина, дієвідміна, період. в. додаток, період, словосполучення, підрядний зв’язок. г. прикладка, складне речення, недоконаний вид, керування. 3. укажіть відповідність між безсполучниковим складним реченням і розділовим знаком, який треба в ньому поставити (знаки вилучено). а. кома. 1. я ж кажу вашмосьці потрібна ще одна баталія і ще одна ханська зрада. б. крапка 2. подалися назад чамбули іслам-гірей звернув коня з комою. і залишаючи свій намет сам почвалав попереду… в. тире. 3. порозсідавшись навколо котла вони їли і крадькома запивали вином збоку на килимі за тацею вивершеною і ананасами сидів алім і теж пив вино. г. двокрапка. 4. перші краплі крихітними копитцями пробігли по затоці починався дощ. 4. укажіть схему, яка відповідає структурі речення. колись світ завойовували тучі безжальних залізних вершників, і дикі орди розповзалися по землі, як весняна вода по луках, а тепер так само розповзаються по планеті ці виплоди хворобливої торгашеської уяви, перед якою безсилі кордони, уряди і навіть голоси почуттів, які завжди переважали усе на світі. а. […], і […], (як…), а […], (якою…), (які…). б. […], і […], а […], (якою…), (які…). в. […], і […], (як…), а […], (які…). г. […], і […], (як…), а […]. 5. укажіть схему, яка відповідає структурі речення. рок-журналістика: в осіб, які не вміють говорити, беруть інтерв’ю особи, які не вміють писати, для того, щоб було що почитати особам, які не вміють читати. а. […]: […], (які…), […], (які…), (щоб…), (які…). б. […]: […], […], (які…), (щоб…), (які…). в. […]: (які… (які… (щоб…), (які…). г. немає правильної відповіді.