0 / 0 / 0
Регистрация: 10.02.2016
Сообщений: 33
1

Получить из исходного массива новый массив по заданному правилу

11.03.2016, 09:37. Показов 1462. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даны действительные числа a1, …, a20. Получить числа b1,…, b20, где bi– среднее арифметическое всех членов последовательности a1,… a20, кроме ai (i=1,2,…, 20).
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.03.2016, 09:37
Ответы с готовыми решениями:

Получить новый массив из исходного по заданному правилу
Даны натуральное число n, действительные числа а1...аn. Получить числа b1...bn, которые связаны с...

Из элементов исходного массива сформировать новый массив по заданному правилу
Из элементов массива С сформировать массив А той же размерности по правилу: если элемент...

Из исходного массива сформировать новый массив того же размера по заданному правилу
Дан массив А размера N. Сформировать новый массив того же размера по следующему правилу: элемент В...

Из элементов исходного массива сформировать новый массив по заданному правилу
Работа с массивами Дан одномерный массив Вi (i = 1 :12) целых положительных чисел, вводимых с...

2
318 / 208 / 162
Регистрация: 08.12.2015
Сообщений: 863
11.03.2016, 11:24 2
Лучший ответ Сообщение было отмечено k_k как решение

Решение

Проверяйте:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
const
    nMax = 20;
 
type
    arr = array [1..nMax] of real;
 
var
    A, B: arr;
    i: integer;
 
procedure writeArray(rA: arr);
var
    z: integer;
begin
    for z := 1 to nMax do writeln(rA[z]:6:2);
    writeln;
end;
 
function arithMean(x: integer; var arA: arr): real;
var
    z: integer;
    s: real;
begin
    s := 0;
    for z := 1 to nMax do
        if z <> x then s := s + arA[z];
    arithMean := s / (nMax - 1);
end;
 
begin
    randomize;
    for i := 1 to nMax do
        A[i] := 50 - random() * random(101);
    writeln('Massiv A: ');
    writeArray(A);
    for i := 1 to nMax do
       begin
            B[i] := arithMean(i,A);
       end;   
    writeln('Massiv B: ');
    writeArray(B);
    readln
end.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7775 / 4603 / 2825
Регистрация: 22.11.2013
Сообщений: 13,085
Записей в блоге: 1
11.03.2016, 11:37 3
capricornus CF,
проще и эффективнее сумму посчитать один раз вместо 20:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
const n=20;
var
  a, b: array [1..n] of Real;
  s: Real;
  i: Integer;
begin
  Randomize; {s:=0;}
  for i:=1 to n do begin a[i]:=-50+100*Random; s:=s+a[i]; end;
  for i:=1 to n do b[i]:=(s-a[i])/(n-1);
  Write('A ='); for i:=1 to n do Write(' ',a[i]:0:1); WriteLn;
  Write('B ='); for i:=1 to n do Write(' ',b[i]:0:1); WriteLn;
end.
3
11.03.2016, 11:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2016, 11:37
Помогаю со студенческими работами здесь

Из элементов исходного массива сформировать новый массив по заданному правилу
Народ, помогите пожалуйссста с заданием, кому не трудно) Дан массив X из 10 элементов....

Сформировать новый массив из исходного по заданному правилу
Задача из Златопольского: Из элементов массива p сформировать массив q того же размера по правилу:...

Создать новый массив на основе исходного по заданному правилу
Дан массив K(12). Создать новый массив С, где все элементы, расположенные на чётных позициях равны...

Получить новый массив из исходного по правилу
Помогите пожалуйста написать программу на VBA.Очень надо: &quot;Задан массив X={x1};i=1,n&lt;=20.Получить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru