Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 16.01.2010
Сообщений: 11
1

Найти минимальный элемент среди элементов главной диагонали

17.01.2010, 12:23. Показов 1804. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задан двумерный массив D(6x6).Найти минимальный элемент среди элементов главной диагонали и посчитать сумму и колличество отрицательных элементов столба,в котором находится этот минимальный элемент.Сумму и колличество столбцов вычислить в процедуре.
-Решить задачу с использованием файлов;
-организовать файлы и занести его исходные данные;
-Взять данные из файла.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2010, 12:23
Ответы с готовыми решениями:

Найти минимальный элемент среди элементов, расположенных на главной диагонали
1) В двумерном массиве B найти минимальный элемент среди элементов,расположенных на главной...

Найти максимальный по значению элемент среди элементов главной диагонали
1)Все элементы массива А(10), являющиеся четным числом, удвоить, а нечетным - возвести в квадрат. В...

В двух матрицах найти максимальный элемент среди элементов выше главной диагонали
В каждой из матриц D(50,50) и Е(100,100) найти максимальный элемент среди элементов, расположенных...

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

2
1915 / 1065 / 384
Регистрация: 06.12.2008
Сообщений: 2,802
17.01.2010, 12:41 2
Лучший ответ Сообщение было отмечено Oliver_Twist как решение

Решение

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
uses crt;
Type arr=array[1..50,1..50] of integer;
 
procedure InputMatrix(var ar:arr; var n:byte);
var i,j:byte;
begin
Randomize;
repeat
Write('n=');
Readln(n);
until n in [1..50];
for i:=1 to n do
for j:=1 to n do
 ar[i,j]:=random(20)-10;
end;
 
procedure DiagSumMinMatrix(a:arr; n:byte);
var i,j,tmpj:byte;
    k,sum,min:integer;
begin
min:=1;
for i:=1 to n do
for j:=1 to n do
 if (i=j) and (a[i,j]<min) then
  begin
   min:=a[i,j];
   tmpj:=j;
  end;
Writeln('Min ',min,' [',tmpj,']');
sum:=0;
for i:=1 to n do
 sum:=sum+a[i,tmpj];
k:=0;
for i:=1 to n do
 if a[i,tmpj]<0 then
  inc(k);
Writeln('Sum ',sum);
Writeln('Kol(otr) ',k);
end;
 
procedure OutputMatrix(var ar:arr; n:byte);
var i,j:byte;
begin
Writeln('Matrix A');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    Write(ar[i,j]:4);
   end;
  Writeln;
 end;
end;
 
var a:arr;
    i,j,x:byte;
begin
ClrScr;
InputMatrix(a,x);
OutputMatrix(a,x);
Writeln;
DiagSumMinMatrix(a,x);
Readln;
end.
насчет файлов, просмотрите программы с где использовались файлы и решайте, по сути нужно не более 10 строчек добавить
1
119 / 119 / 41
Регистрация: 21.12.2009
Сообщений: 194
18.01.2010, 01:07 3
Snoopy, вот ваш код:
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
uses crt;
Type arr=array[1..50,1..50] of integer;
 
procedure InputMatrix(var ar:arr; var n:byte);
var i,j:byte;
begin
Randomize;
repeat
Write('n=');
Readln(n);
until n in [1..50];
for i:=1 to n do
for j:=1 to n do
 ar[i,j]:=random(20)-10;
end;
 
procedure DiagSumMinMatrix(a:arr; n:byte);
var i,j,tmpj:byte;
    k,sum,min:integer;
begin
min:=1;
for i:=1 to n do
for j:=1 to n do
 if (i=j) and (a[i,j]<min) then
  begin
   min:=a[i,j];
   tmpj:=j;
  end;
Writeln('Min ',min,' [',tmpj,']');
sum:=0;
for i:=1 to n do
 sum:=sum+a[i,tmpj];
k:=0;
for i:=1 to n do
 if a[i,tmpj]<0 then
  inc(k);
Writeln('Sum ',sum);
Writeln('Kol(otr) ',k);
end;
 
procedure OutputMatrix(var ar:arr; n:byte);
var i,j:byte;
begin
Writeln('Matrix A');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    Write(ar[i,j]:4);
   end;
  Writeln;
 end;
end;
 
var a:arr;
    i,j,x:byte;
begin
ClrScr;
InputMatrix(a,x);
OutputMatrix(a,x);
Writeln;
DiagSumMinMatrix(a,x);
Readln;
end.
Хочу заметить, что в строке №21 немного не логично использовать такой оператор, лучше переменной min:=a[1,1]. Потому что смотрите, если у нас будет вот такая матрица:
Матрица:
3 2 3 0
0 4 5 6
3 7 6 1
7 4 3 9
То на выводе данных программа выведет:
Min 1 [0]
Так как переменной min вы присвоили значение 1. А так как это условие: "if (i=j) and (a[i,j]<min) then" в данной матрице не будет выполнено, то соответственно ответ будет у нас ложным.
Поправьте меня если я не прав.
С уважением vad2211!
1
18.01.2010, 01:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.01.2010, 01:07
Помогаю со студенческими работами здесь

Найти минимальный элемент на главной диагонали матрицы
дан двумерный массив размером n m найти минимальный элемент на главной диагонали

Найти минимальный элемент, находящийся на главной диагонали матрицы
Помогите пожалуйста я в паскале ноль Задача №1 Дана квадратная матрица размерностью B*B. Найти...

Найти минимальный элемент, расположенный на главной диагонали матрицы
Найти минимальный элемент, расположенный на главной диагонали матрицы A, а из элемнтов строки и...

Найти минимальный элемент матрицы и заменить на него элементы главной диагонали
17)Найти минимальный элемент матрицы и заменить на него элементы главной диагонали.


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

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