0 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 8

Найти среднее арифметическое элементов, лежащих выше главной диагонали, через процедуры и функцию

06.03.2012, 18:22. Показов 2457. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток)Небольшая запара(
Дана матрица В(6х6). Найти среднее арифметическое элементов, лежащих выше главной диагонали. Если это четное число - отсортировать строки, иначе - столбцы.
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 program zzz;
uses crt;
const n=6; m=6;
var b:array[1..n,1..m] of integer;
i,j,c,sum,kol:integer;
sr:integer;
BEGIN clrscr; randomize;
for i:=1 to n do
begin
for j:=1 to m do
begin
b[i,j]:=random(100)-50;
write(b[i,j]:3,' ');
if i<j then
begin
sum:=sum+b[i,j];
kol:=kol+1;
end;
end;
writeln;
end;
sr:=round(sum/kol);
writeln('srednee arifmeticheskoe = ',sr);
writeln;
if sr mod 2 = 0 then
begin
writeln('sortirovka po strokam');
writeln;
for i:=1 to n do
begin
j:=1;
repeat
if b[i,j]>b[i,j+1] then
begin
c:=b[i,j];
b[i,j]:=b[i,j+1];
b[i,j+1]:=c;
if j>1 then j:=j-1;
end
else j:=j+1;
until j>=m;
end;
end
else
begin
writeln('sortirovka po stolbikam');
 writeln;
for j:=1 to m do
begin
i:=1;
repeat
if b[i,j]>b[i+1,j] then
begin
c:=b[i,j];
b[i,j]:=b[i+1,j];
b[i+1,j]:=c;
if i>1 then i:=i-1;
end
else i:=i+1;
until i>=n;
end;
end;
for i:=1 to n do
begin
for j:=1 to m do
write(b[i,j]:3,' ');
writeln;
writeln;
end;
readkey;
END.

нужно переделать через процедуры и ф-ию:
Функция определяющая среднее арифметическое;
Процедуры:
1)инициализации(ввода);
2)вывода;
3)сортировки строк;
4)сортировки столбцов.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.03.2012, 18:22
Ответы с готовыми решениями:

В квадратной матрице увеличить все элементы на среднее арифметическое элементов матрицы, лежащих выше главной диагонали
по заданию надо разработать максимально возможное число вспомогательных алгоритмов :) в моем коде увеличивается последняя строка, а не...

Найти среднее арифметическое элементов матрицы, лежащих выше дополнительной (обратной) диагонали!
срочно помогите написать программу,мне нужно найти среднее арифметическое элементов матрицы, лежащих выше дополнительной (обратной)...

Определить среднее арифметическое положительных элементов матрицы, лежащих выше главной диагонали
Добрый вечер! Задана матрица (m,n) m&lt;=17, n&lt;=17.Поменять местами 1-ую и последнюю,2-ую и предпоследнюю и т.д. строки матрицы. В...

6
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
06.03.2012, 19:34
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
program zzz;
uses crt;
const n=6;
type mtr=array[1..n,1..n] of integer;
procedure Init(var b:mtr);
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do
b[i,j]:=random(100)-50;
end;
procedure Print(b:mtr);
var i,j:integer;
begin
for i:=1 to n do
 begin
  for j:=1 to n do
  write(b[i,j]:5);
  writeln;
 end;
writeln
end;
function Sred(b:mtr):integer;
var i,j,sum,k:integer;
begin
sum:=0;
k:=0;
for i:=1 to n-1 do
for j:=i+1 to n do
 begin
  k:=k+1;
  sum:=sum+b[i,j];
 end;
Sred:=round(sum/k);
end;
procedure SortStr(var b:mtr);
var i,j,c:integer;
begin
for i:=1 to n do
 begin
  j:=1;
  repeat
  if b[i,j]>b[i,j+1] then
   begin
    c:=b[i,j];
    b[i,j]:=b[i,j+1];
    b[i,j+1]:=c;
    if j>1 then j:=j-1;
   end
   else j:=j+1;
   until j>=n;
 end;
end;
procedure SortStb(var b:mtr);
var i,j,c:integer;
begin
for j:=1 to n do
 begin
  i:=1;
  repeat
  if b[i,j]>b[i+1,j] then
   begin
    c:=b[i,j];
    b[i,j]:=b[i+1,j];
    b[i+1,j]:=c;
    if i>1 then i:=i-1;
   end
  else i:=i+1;
  until i>=n;
 end;
end;
var b:mtr;
    s:integer;
BEGIN
clrscr;
randomize;
Init(b);
writeln('Исходная матрица');
Print(b);
s:=Sred(b);
writeln('Среднее арифметическое ваыше главной диагонали=',s);
if s mod 2=0 then
 begin
  writeln('Оно четное, сортировка строк');
  SortStr(b);
 end
else
 begin
  writeln('Оно нечетное, сортировка столбцов');
  SortStb(b);
 end;
Print(b);
readkey;
END.
1
0 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 8
06.03.2012, 20:55  [ТС]
Благодарю))
0
0 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 8
09.03.2012, 11:19  [ТС]
Сделайте еще плиз функцию:максимальный элемент главной диагонали
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
09.03.2012, 11:26
А сделай сам.

Добавлено через 1 минуту
Принцип
Pascal
1
2
3
max:=a[1,1];
for i:=1 to n do
if a[i,i]>max then max:=a[i,i];
0
0 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 8
09.03.2012, 11:56  [ТС]
Что то не получается помоги плиз(((
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
09.03.2012, 12:04
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
program zzz;
uses crt;
const n=6;
type mtr=array[1..n,1..n] of integer;
procedure Init(var b:mtr);
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do
b[i,j]:=random(100)-50;
end;
procedure Print(b:mtr);
var i,j:integer;
begin
for i:=1 to n do
 begin
  for j:=1 to n do
  write(b[i,j]:5);
  writeln;
 end;
writeln
end;
function Sred(b:mtr):integer;
var i,j,sum,k:integer;
begin
sum:=0;
k:=0;
for i:=1 to n-1 do
for j:=i+1 to n do
 begin
  k:=k+1;
  sum:=sum+b[i,j];
 end;
Sred:=round(sum/k);
end;
procedure SortStr(var b:mtr);
var i,j,c:integer;
begin
for i:=1 to n do
 begin
  j:=1;
  repeat
  if b[i,j]>b[i,j+1] then
   begin
    c:=b[i,j];
    b[i,j]:=b[i,j+1];
    b[i,j+1]:=c;
    if j>1 then j:=j-1;
   end
   else j:=j+1;
   until j>=n;
 end;
end;
procedure SortStb(var b:mtr);
var i,j,c:integer;
begin
for j:=1 to n do
 begin
  i:=1;
  repeat
  if b[i,j]>b[i+1,j] then
   begin
    c:=b[i,j];
    b[i,j]:=b[i+1,j];
    b[i+1,j]:=c;
    if i>1 then i:=i-1;
   end
  else i:=i+1;
  until i>=n;
 end;
end;
function Max(b:mtr):integer;
var i,mx:integer;
begin
mx:=b[1,1];
for i:=1 to n do
if b[i,i]>mx then mx:=b[i,i];
Max:=mx;
end;
var b:mtr;
    s,mx:integer;
BEGIN
clrscr;
randomize;
Init(b);
writeln('Исходная матрица');
Print(b);
mx:=Max(b);
writeln('Максимальный элемент на главной диагонали=',mx);
s:=Sred(b);
writeln('Среднее арифметическое выше главной диагонали=',s);
if s mod 2=0 then
 begin
  writeln('Оно четное, сортировка строк');
  SortStr(b);
 end
else
 begin
  writeln('Оно нечетное, сортировка столбцов');
  SortStb(b);
 end;
Print(b);
readkey;
END.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.03.2012, 12:04
Помогаю со студенческими работами здесь

Увеличить все элементы строки с минимальной суммой элементов на среднее арифметическое элементов матрицы,лежащих выше главной диагонали
1.Дана квадратная матрица.Увеличить все элементы строки с минимальной суммой элементов на среднее арифметическое элементов матрицы,лежащих...

Вычислить среднее арифметическое элементов, больших заданного G и лежащих выше главной диагонали
составить графическую схему алгоритма и написать программу с организацией ввода-вывода с текстовыми файлами В задаче задается квадратная...

Найти среднее арифметическое положительных элементов матрицы, лежащих выше главной диагонали.
Разработать блок-схему алгоритма и программу в среде матлаб для нахождения среднего арифметического положительных элементов матрицы 7 х 6...

Найти среднее арифметическое элементов матрицы, лежащих ниже главной диагонали
Нужно написать программу на С++ или Си, помогите, пожалуйста! Найти среднее арифметическое элементов матрицы, лежащих ниже главной...

Найти среднее арифметическое элементов матрицы, лежащих ниже главной диагонали
Найти среднее арифметическое элементов матрицы, лежащих ниже главной диагонали


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

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

Новые блоги и статьи
Kanban или Scrum - что выбрать?
EggHead 27.04.2025
Kanban и Scrum — уже много лет удерживают лидирующие позиции среди гибких подходов. Руководители проектов и команды разработчиков то и дело сталкиваются с дилеммой: какой из этих двух методов выбрать. . .
Кастомные Middleware на C# в ASP.NET Core
UnmanagedCoder 27.04.2025
Разработка веб-приложений сегодня мало напоминает монолитное программирование прошлых лет. На смену громоздким блокам кода пришла модульная архитектура, где каждый компонент выполняет строго. . .
Анализ и линтинг кода JavaScript: ESLint, Prettier и JSHint
run.dev 26.04.2025
JavaScript прошёл долгий путь от простого языка для анимации веб-страниц до основы современной веб-разработки. С ростом сложности приложений, увеличением кодовых баз и масштабированием команд. . .
Паттерны в Python: Singleton, Factory и Observer
py-thonny 26.04.2025
Паттерны проектирования — это проверенные временем решения типовых проблем разработки программного обеспечения. Их история берёт начало с книги "Приёмы объектно-ориентированного проектирования. . . .
Исключения в C#: Stack Overflow, Access Violation и Out of memory
stackOverflow 26.04.2025
Исключения в C# — это не только механизм оповещения о проблемах, а целое искусство управления потоком выполнения программы в экстремальных ситуациях. Обычное исключение, например,. . .
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Структура "железный OnKeyUp" вместо антидребезга. Полностью асинхронный счётчик.
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru