• сформировать массив произвольной длины заполненный вещественными числами в диапазоне от 1 до 100 найти и вывести на экран произведение всех элементов а также максимальное значение элементов

Ответы 2

  • Так подойдет?const n=5;var  a,b: array[1..n] of single;  p: real;  m: single;  i: integer;begin  randomize;  m:=-0.1;  p:=1;  for i:=1 to n do begin;     a[i]:=random+random(1,99);     writeln (a[i]);     p:=p*a[i];     if a[i]>m then m:=a[i];  end;  writeln;   writeln ('Произведение элементов = ',p);  writeln ('Максимальный элемент = ',m);end.  ----------результат-------------30.5712558.6965577.2407221.761229.61645Произведение элементов = 89328084.4036029Максимальный элемент = 77.24072
  • 1. Короткое современное решение// PascalABC.NET 3.2, сборка 1362 от 14.12.2016// Внимание! Если программа не работает, обновите версию!begin  var n:=ReadInteger('n=');  var a:=SeqRandom(n,1000, 100000);  var b:=a.Select(x->x/1000).ToArray; b.Println;  Writeln('П=',b.Aggregate(1.0,(p,q)->p*q));  Writeln('Max=',b.Max)end.Примерn= 1064.006 47.819 87.225 6.856 32.112 93.963 11.053 50.93 18.959 14.785П=871460676775803Max=93.9632. А так (примерно) учат в большинстве школconst  nn=1000; // предел для кол-ва элементовvar  n,i:integer;  a:array[1..nn] of real;  max,p:real;begin  Write('n='); Read(n);  p:=1;  max:=0; // меньше меньшего  for i:=1 to n do    begin    a[i]:=(Random(99001)+1)/1000;    Write(a[i],' ');    p:=p*a[i];    if a[i]>max then max:=a[i]    end;  Writeln;  Writeln('П=',p);  Writeln('Max=',max)end.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years