Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Топ:
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Интересное:
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Пусть известно, что в автопарке, имеющем 18 машин марки КАМАЗ, каждый из КАМАЗов перевез за день определенный объем груза. Определить суммарный объем перевозок грузов за день.
При решении задачи будем использовать тип массива KAMAZ для описания всех КАМАЗов автопарка; переменную Р[i] для описания объема груза, перевезенной i-ой машиной за день (i меняется от 1 до 18).
Алгоритм решения задачи:

Текст программы может иметь при этом следующий вид:
Program pr1;
Type KAMAZ =array[1..18] of real;
Var i:integer;
P:KAMAZ;
S:real;
Begin
S:=0;
For i:=1 to 18 do
Begin
Writeln (‘Введите объем перевозок ’, i, ‘–й машины, т’);
Readln (p[i]);
S:=S+p[i];
End;
Writeln (‘Суммарный объем перевозок S=’,S:8:2,’ т’);
End.
Накопление суммы в данном примере будет проводиться по шагам, при вводе для очередной машины значения объема перевозок сумма будет увеличиваться на данную величину.
Аналогично реализуется и алгоритм нахождения произведения элементов массива (с заменой начального значения суммы S:=0 на начальное значение произведения S:=1, и с заменой операции сложения элементов массива «+» на операцию умножения «*»).
Нахождение наибольшего элемента в массиве
Известна среднемесячная зарплата всех 16 сотрудников одного отдела. Найти величину наибольшей среднемесячной зарплаты в отделе.
Для описания списка зарплат сотрудников воспользуемся типом массива ZARPL, для задания зарплаты каждого из сотрудников – переменной SOTR.
Алгоритм решения задачи:

Текст программы к приведенному примеру:
Program pr2;
Type ZARPL=array[1..16] of real;
Var i:integer;
sotr:ZARPL;
Max: real;
Begin
For i:=1 to 16 do
Begin
Writeln (‘Введите зарплату ’, i,’ –го сотрудника, руб.’);
Readln(sotr[i]);
End;
Max:=sotr[1];
For i:=2 to 16 do if max<sotr[i] then max:=sotr[i];
Writeln(‘Наибольшая зарплата =’,max:10:2,’ руб.’);
End.
В данной программе реализован следующий алгоритм. В начальный момент предполагается, что наибольшей является зарплата первого из сотрудников. Далее величина этой зарплаты сравнивается с зарплатами остальных сотрудников, и, если найдется зарплата, большая, чем предполагаемый максимум, то переменной Мах присваивается это значение.
Аналогично может быть найден и наименьший элемент в массиве. Для этого достаточно заменить в изложенной программе условие max<sotr[i] на условие min>sotr[i], где i меняется от 1 до 1 до 16, min – переменная типа REAL.
Нахождение количества элементов массива, удовлетворяющих некоторому условию
Известны результаты экзамена 22 студентов одной группы по информатике. Определить, сколько студентов сдали экзамен на 4 и 5.
Один из вариантов решения поставленной задачи имеет следующий вид:
Program pr3;
Label 1;
Type INF=array[1..22] of integer;
Var stud:INF;
i,p:integer;
begin
p:=0;
for i:=1 to 22 do
begin
1: writeln(‘Введите оценку ’,i,’-го студента’);
readln(stud[i]);
if (stud[i]<1) or (stud[i]>5) then goto 1;
if stud[i]>3 then p:=p+1;
end;
writeln(‘На 4 и 5 сдали экзамен ’,p:2,’ студентов’);
end.
В данной программе для обозначения списка оценок по информатике использовался тип массива INF, для обозначения оценок конкретных студентов – переменная stud. Программа предусматривает проверку корректности вводимых данных: при попытке ввода несуществующей по пятибалльной системе оценки, программа повторяет ее ввод. Для этого используется оператор перехода GOTO, где имя метки, к которой осуществляется переход (в данном случае 1), описывается в разделе описания меток LABEL.
|
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!