Дан массив A[1..10]. Необходимо образоваться массив B[1..10], i-тый элемент которого равен среднему арифметическому первых i-тых элементов массива А.
Вот я тут написал:
program tratata;
var
a: array [1..10] of Integer;
i,s: Integer;
b: array [1..10] of Real;
begin
randomize;
Write('Дана целочисленная таблица: a[ ');
for i:=1 to 10 do a[i]:=random(5);\\Заполняем массив случайными числами
for i:=1 to 10 do Write(a[i],' ');\\Выводим массив
Write(']');\\на экран
ReadLn;\\жмем Enter
WriteLn('Заполните вещественную таблицу b[i], i-тый элемент которой равен');\\Выводим на экран
Write('среднему арифметическому первых i-тых элементов таблицы a.');\\условие задачи
ReadLn;\\ждем нажатия клавиши Enter
s:=0;\\Обнуляем счетчик суммы i-тых элементов массива
for i:=0 to 9 do\\задаем цикл
begin
s:=s+a[i+1];\\сумма i-тых элеиентов
b[i+1]:=s/(i+1);\\значение i-того элемента нового массива
Write('b[',i+1,']=',b[i+1]);\\Выводим на экран каждый i-тый элемент
ReadLn;\\Ждем нажатия клавиши Enter
end;
Write('Полученный массив: b[');\\Выводим на экран
for i:=1 to 10 do Write(b[i],' ');\\новый
WriteLn(']');\\массив
Write('Для завершения гажмите "Enter".');\\Завершаем работу программы
ReadLn;\\Ждем нажатия клавиши Enter
end.
В связи с тем, что массив B объявлен как вещественный тип, то он на экран он выводится в виде жуткой экспоненциальной каракатицы. Как избавиться от всех этих нулей? Как задаваться точностью округления (до десятых, тысячных и т.д.)? Спасибо )