Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 23.09.2016
Сообщений: 51
1

Заменить отрицательные элементы, расположенные выше главной диагонали, средним геометрическим положительных

07.10.2016, 23:22. Показов 1288. Ответов 7
Метки нет (Все метки)

Ребят, не могли бы помочь?
Есть задача:в матрице a(8,8) заменить отрицательные элементы расположенные выше главной диагонали, средним геометрическим положительных чисел.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Var
  i,j,k:integer;
  a:array[1..8,1..8]of integer;
begin
for i:=1 to 8 do
begin
for j:=1 to 8 do
begin
a[i,j]:=random(20);
write (a[i,j]:4);
end;
writeln;
end;
for i:=1 to 8 do
for j:=1 to 8 do
 
 
writeln;
end.
(В общем, ребят не могли бы помочь, сам чет не допру никак, что нужно изменить или дописать вместо пропуска. А мне срочно эта задача нужна!!! Заранее спасибо огромное!)
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.10.2016, 23:22
Ответы с готовыми решениями:

В матрице заменить отрицательные элементы, расположенные выше диагонали, средним геометрическим положительных
Не знаю как исправить надо. Мне нужно, чтобы все элементы, расположенные выше диагонали, имели одно...

Заменить нулями все элементы матрицы, расположенные на главной диагонали и выше нее.
Дана действительная квадратная матрица порядка 12. Заменит нулями все ее элементы, расположенной...

Заменить буквой «a» все элементы, расположенные выше главной диагонали и не являющиеся цифрами
Заменить буквой «a» все элементы, расположенные выше главной диагонали и не являющиеся цифрами.

Заменить нулями все отрицательные элементы матрицы, лежащие выше главной диагонали
:scratch: Если все элементы главной диагонали квадратной целочисленной матрицы упорядочены по...

7
Модератор
Эксперт Pascal/DelphiЭксперт NIX
6172 / 3698 / 2558
Регистрация: 22.11.2013
Сообщений: 10,571
Записей в блоге: 1
07.10.2016, 23:28 2
1) как вы думаете, среднее геометрическое положительных чисел в общем случае будет целым числом?
2)
Pascal
14
15
  for i:=1 to 7 do for j:=i+1 to 8 do
    if a[i,j]<0 then a[i,j]:=ag;
3) не забудьте предварительно вычислить ср.геометрическое положительных ag.
0
0 / 0 / 0
Регистрация: 23.09.2016
Сообщений: 51
08.10.2016, 14:40  [ТС] 3
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
Var
  i,j,k:integer;
  sr:real;
  a:array[1..8,1..8]of integer;
begin
sr:=0;
for i:=1 to 8 do
begin
for j:=1 to 8 do
begin
a[i,j]:=random(20);
sr:=sr+a[i,j];
write (a[i,j]:4);
end;
writeln;
sr:=sr/64;
writeln('среднее=',sr);
end;
for i:=1 to 7 do 
for j:=i+1 to 8 do
    if a[i,j]<0 then 
    a[i,j]:=ag;
 
 
writeln;
end.
В общем, ребят не могли бы подправить программу, пожалуйста? Заранее спасибо огромное!
0
CAPITAL OF ROCK!
1281 / 708 / 982
Регистрация: 03.03.2010
Сообщений: 2,286
08.10.2016, 15:19 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
const
    N = 8;
var
    ar: Array[1..N, 1..N] Of Real;
    i, j: 1..N;
    count: 0..N*N;
    avr: Real;
begin
    Randomize;
    WriteLn('Original array:');
    count := 0; avr := 0;
    for i := 1 to N do
    begin
        for j := 1 to N do
        begin
            ar[i, j] := Random * 198 - 99;
            Write(ar[i, j]:7:2);
            if (ar[i, j] > 0)
            then
            begin
                Inc(count);
                avr := avr + ar[i, j];
            end;
        end;
        WriteLn;
    end;
    if (count > 0)
    then
        avr := avr / count;
    for i := 1 to N - 1 do
        for j := i + 1 to N do
            if (ar[i, j] < 0)
            then
                ar[i, j] := avr;
    WriteLn('Modified array:');
    for i := 1 to N do
    begin
        for j := 1 to N do
            Write(ar[i, j]:7:2);
        WriteLn;
    end;
end.
0
0 / 0 / 0
Регистрация: 23.09.2016
Сообщений: 51
08.10.2016, 16:04  [ТС] 5
Спасибо вам!
0
0 / 0 / 0
Регистрация: 23.09.2016
Сообщений: 51
08.10.2016, 16:05  [ТС] 6
Спасибо, большое вам!
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
6172 / 3698 / 2558
Регистрация: 22.11.2013
Сообщений: 10,571
Записей в блоге: 1
09.10.2016, 01:17 7
JokeR.BY,
среднее геометрическое считается несколько иначе (корень n-й степени из произведения n элементов).
0
CAPITAL OF ROCK!
1281 / 708 / 982
Регистрация: 03.03.2010
Сообщений: 2,286
09.10.2016, 11:14 8

Не по теме:

шота я совсем потерял внимание последние дни...


обновлённый код
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
const
    N = 8;
var
    ar: Array[1..N, 1..N] Of Real;
    i, j: 1..N;
    count: 0..N*N;
    gm: Real;
begin
    Randomize;
    WriteLn('Original array:');
    count := 0; gm := 1;
    for i := 1 to N do
    begin
        for j := 1 to N do
        begin
            ar[i, j] := Random * 198 - 99;
            Write(ar[i, j]:7:2);
            if (ar[i, j] > 0)
            then
            begin
                Inc(count);
                gm := gm * ar[i, j];
            end;
        end;
        WriteLn;
    end;
    if (count > 0)
    then
        gm := Exp(Ln(gm) / count);
    for i := 1 to N - 1 do
        for j := i + 1 to N do
            if (ar[i, j] < 0)
            then
                ar[i, j] := gm;
    WriteLn('Modified array:');
    for i := 1 to N do
    begin
        for j := 1 to N do
            Write(ar[i, j]:7:2);
        WriteLn;
    end;
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.10.2016, 11:14

Заменните нулями всё элементы матрицы, расположенные на главной диагонали и выше её
Парни и Девушки прошу помочь так как сам в это вообще не вник . Пусть дана вещественная матрица...

Замените буквой а все элементы матрицы, расположенные выше главной диагонали
Пусть дана символьная квадратная матрица порядка 10. Замените буквой а все ее элементы,...

Все элементы массива, расположенные выше главной диагонали сделать равными 0
Создать массив случайных чисел B. Все элементы массива, расположенные выше главной диагонали...

Обнулить все элементы квадратной матрицы, расположенные выше главной диагонали
Напишите программу, которая обнуляет все элементы квадратной матрицы, расположенные выше главной...


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

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

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