Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Матрица

Автор: -Настюша- 24.10.2007 22:25

Матрица заполнена случайными числами, определить номер столбца, в котором максимальное количество троек, я понимаю наверное задача простая но я туплю. Спасибо заранее за помощь!

Автор: Артемий 24.10.2007 23:45

Ну а что пробовала?Проходишь по столбцам да и включаешь счетчик, а потом сравнивай..

Автор: -Настюша- 25.10.2007 0:59

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

Автор: Гость 25.10.2007 1:56

помогите пожалуйста мне нужно завтра сдать

Автор: Sozialist 25.10.2007 1:58

Var
M1:array [1..100,1..100] of integer;
M2:array [1..100] of integer;
i,j,m,n,max:integer;
begin
for i:=1 to 100 do M2[i]:=0;

writeln('Filling the matrix sized m*n:');
write('m = ');
readln(m);
write('n = ');
readln(n);
for i:=1 to m do
for j:=1 to n do
readln(M1[i,j]);

writeln;
writeln('Our matrix:');
for i:=1 to m do
begin
for j:=1 to n do
write(M1[i,j]:4);
writeln;
end;

for j:=1 to n do
for i:=1 to m do
if M1[i,j]=3 then M2[j]:=M2[j]+1;

max:=M2[1];
for i:=2 to n do
if M2[i]>max then max:=M2[i];

Writeln('Most threes are in ');
for i:=1 to n do
if M2[i]=max then write(i,' column');

readln
end.


Вообще самой надо писать что-то, раз уж перешла в сильную группу, тем более.

Автор: мисс_граффити 25.10.2007 2:00

какое-то ограничение на количество столбцов ведь должно быть...
а так - просто пишешь не

for i:=1 to 5 do

а

writeln('n=?');
readln(n);
for i:=1 to n do

Автор: volvo 25.10.2007 2:02

...
max_index := 0;
max_count := 0;

for i := 1 to cols do begin { <--- Cols - число столбцов }
count := 0;
for j := 1 to rows do { <--- Rows - число строк матрицы }
if a[j, i] = 3 then count := count + 1;

if count > max_count then begin
count := max_count; max_index := i;
end
end;

writeln('больше всего троек в столбце №', max_index, ' целых ', max_count);
...

Автор: Гость 25.10.2007 2:19

Спасибо огромное, незнаю что бы я без вас делала give_rose.gif простите что я так нагло, я сделала две задачи сама, а вот с эта последняя... спасибо