program Prog;
var i, x, Proiz, MinEl: Integer;
arr: array[1..8] of Integer;
begin
Proiz:=1;
MinEl:=13;
randomize;
write('Введите X: ');
read(x);
// запоолнение, вычисление мин. эл., и умножения
for i:=1 to 8 do begin
arr[i]:=random(12)+2;
Proiz:=Proiz*arr[i];
if arr[i]<MinEl then
MinEl:=arr[i]
end;
// вывод всего массива
for i:=1 to 8 do
write(arr[i], ' ');
writeln;
// вывод нужных элементов
writeln('Минимальный элемент: ', MinEl);
writeln('Произведение элементов: ', Proiz);
writeln('Элементы, равные X: ');
for i:=1 to 8 do
if arr[i]=x then
write(arr[i], ' ')
end.
{
if (a.Length != b.Length || a.Length == 0) throw new Exception("не верные параметры");
double ab = 0;
double a_length = 0;
double b_length = 0;
for (var i = 0; i < a.Length; i++)
{
ab += a[i] * b[i];
a_length = a[i] * a[i];
b_length = b[i] * b[i];
}
if (a_length * b_length == 0) throw new Exception("Нулевые вектора");
return ab / Math.Sqrt(a_length) / Math.Sqrt(b_length);
}