Описать, используя структуру данных запись, завод - Pascal
Формулировка задачи:
Доброго дня всем.
Такое вот задание:
Описать, используя структуру данных запись, завод (наименование станка, время простоя в месяц, время работы в месяц). Составить программу, определяющую общее время простоя на заводе, списки станков, не имеющих простоя, относительное время простоя всех и каждого станка.
Похожие уже написанные программы смотрел, под редактирование не подошли. Помогите пожалуйста с написанием
Решение задачи: «Описать, используя структуру данных запись, завод»
textual
Листинг программы
- type zavod=record
- name:string[20];
- IdleTime:longint;
- WorkTime:longint;
- end;
- const n=5;
- var
- Tidle:longint;
- TWork:longint;
- a:array[1..n] of zavod;
- i:integer;
- begin
- for i:=1 to n do begin
- writeln('#',i);
- write('Наименование станка:');readln(a[i].name);
- write('Время работы:');readln(a[i].WorkTime);
- write('Время простоя:');readln(a[i].IdleTime);
- end;
- Tidle:=0;TWork:=0;
- for i:=1 to n do begin Tidle:=Tidle+a[i].IdleTime;TWork:=TWork+a[i].WorkTime;end;
- writeln('Общее время простоя:',Tidle);
- writeln('Список станков не имеющих простоя:');
- for i:=1 to n do if a[i].IdleTime=0 then writeln(a[i].name);
- writeln('Конец списка!');
- if TWork>0 then writeln('Относительное время простоя:',Tidle/TWork*100:0:2) else writeln('все станки простаивали!');
- for i:=1 to n do if a[i].WorkTime>0 then writeln('Станок "',a[i].name,'" относительное время простоя:',a[i].IdleTime/a[i].WorkTime*100:0:2)
- else writeln('Станок "',a[i].name,'" не работал')
- end.
Объяснение кода листинга программы
- Объявляется тип данных
zavod
, который представляет собой запись со следующими полями:name
: строка длиной до 20 символов, представляющая наименование станкаIdleTime
: целое число, представляющее время простоя станкаWorkTime
: целое число, представляющее время работы станка
- Объявляется константа
n
, равная 5. - Объявляются переменные:
Tidle
: целое число, для хранения общего времени простояTWork
: целое число, для хранения общего времени работыa
: массив из 5 элементов типаzavod
, для хранения данных о станкахi
: целое число, используется как счетчик в циклах
- Запускается цикл, в котором запрашивается информация о каждом станке, и данные сохраняются в массиве
a
. - Вычисляется общее время простоя и общее время работы для всех станков при помощи цикла.
- Выводится общее время простоя всех станков.
- Выводится список станков, которые не имели простоя.
- Выводится относительное время простоя (в процентах) от общего времени работы.
- В цикле выводится относительное время простоя для каждого станка, либо сообщение о том, что станок не работал.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д