Задание №1
Составить программу решения данной задачи в соответствии с номером своего варианта. Использовать данную функцию или процедуру в качестве фрагмента программы, организовать в программе обращение к ней, указав соответствующие фактические параметры при каждом вызове подпрограммы.
Вариант 1.
Составить программу вычисления наибольшего общего делителя трёх введённых чисел х, у, z, используя процедуру вычисления наибольшего общего делителя этих чисел.
Procedure NOD(a,b:integer; var k:integer);
Begin
While a<>b do
If a>b then a:=a-b else b:=b-a;
k:=a;
End;
Вариант 2.
Составить программу, которая определяет, являются ли три введённые числа х, у, z взаимно-простыми. Взаимно-простыми называются числа, наибольший общий делитель которых равен 1. Использовать функцию вычисления наибольшего общего делителя этих чисел.
Function NOD(a,b:integer):integer;
Begin
While a<>b do
If a>b then a:=a-b else b:=b-a;
NOD:=a;
End;
Задание №2
1. Составить программу вычисления значения выражения:
, используя функцию для вычисления значения .
2. Напишите программу вычисления выражения:
, где .
Вычисление значений х оформить в виде подпрограммы-функции.
Задание №3
1.Составить программу, которая вычисляет периметр треугольника, если заданы координаты вершин . Вычисление расстояния между двумя точками оформить в виде функции по известной формуле: .
2. Составить программу, которая находит наибольшую сторону треугольника, если заданы координаты вершин . Вычисление расстояния между двумя точками оформить в виде функции по известной формуле: .
Определим величину видеопотока данных.
1920*1080*2*18=74649600 (Байт/с) = 74649600/2^20=71.19 (МБайт/с)
В этом выражении 2 Байта- это 16/8 бит глубины цвета.
Определим величину аудиопотока данных.
Для хранения отсчета при 4096 уровнях квантования требуется 12 бит (2^12=4096).
Упаковки нет, поэтому будет использовано целое число байт - 2.
Тогда аудиопоток составит 192000*2*48=18432000 (Байт/с)=18432000/2^20=17.58 (МБайт/с).
Суммарный поток 71.19+17.58=88.77 (Мбайт/с)
Тогда длительность видеоролика составит 24300/88.77 ≈ 273.7 (c)
А цикл с постусловием - на оборот, он сначала выполнит, а потом проверит условие и если условие true, то цикл завершится.
Цикл с постусловием, можно использовать в таких ситуациях, когда надо что-то сделать и если чего-то не хватает, то сделать еще раз. Напрмер отправить письмо на email, а если не отправилось, то повторить еще 3 раза. Сначала выполнится тело цикла, в котором находятся функции отправки письма и если отправка удачная, то сообщаем until() true. Иначе тело выполнится еще и еще и еще кучу раз, если мы не задали счетчик в теле цикла, как вариант...
Цикл с предусловием можно использовать, если надо проверять какое-то значение ПЕРЕД выполнением тела цикла и тебе не важно, должно ли оно хоть раз выполниться. Например запросить пароль у пользователя. Но если пользователь уже ввёл пароль, то зачем его запрашивать? Тут можно было бы использовать while