Составить Паскаль-программу, производящую обработку квадратной матрицы по-рядка NxN, из целых положительных чисел, вводимой с клавиатуры. Тестирование провести для пакета тестов из двух-трех матриц различного порядка.Умножение строки с минимальным элементом матрицы на столбец с максимальным элементом;
program matrix; const N = 4; var i,j:integer; max, min:integer; max_i, min_j : integer; m:array[1..N,1..N] of integer; sum : integer; begin sum := 0; max := -1; min := 9999; writeln('input matrix:'); for i:=1 to N do begin for j:=1 to N do begin write('intput m[' + IntToStr(i) + ',' + IntToStr(j) + ': '); readln(m[i,j]) ; if max < m[i,j] then begin max_i := i; max:=m[i,j]; end; if min > m[i,j] then begin min_j := j; min:=m[i,j]; end; end; end; writeln('max matrix element: ' + IntToStr(max) + ' in ' + IntToStr(max_i) + ' row'); writeln('min matrix element: ' + IntToStr(min) + ' in ' + IntToStr(min_j) + ' col'); for i:=1 to N do inc(sum,m[max_i,i]*m[i,max_j]);
writeln('result: ' + IntToStr(sum));
end.
ему не нравится в этой строчке write('intput m[' + IntToStr(i) + ',' + IntToStr(j) + ': '); в слове IntToStr(i) буква I
Krjuger
31.05.2009 18:31
и правильно не нравица.Ты вообще себе представляеш как это выглядит?ты зачем такую фигню мутиш???
Я бы посоветовал просто сделать.То что ты заключаеш в ковычки просто пишется,а то что без ковычек показывается то что есть и выводится на экран любой тип и не обязательно все переводить в стринг.
for i:=1 to N do begin for j:=1 to N do begin write('intput m['+i+','+j+': '); readln(m[i,j]) ;
Цитата
max_i := i; max:=m[i,j];
Зачем??????Кому это надо??? сравнивай сразу max_i например,либо вообще удали mfx_i и делай все в Max.и еще что значит умножение строки на столбец?что должно быть результатом?Число равное сумме произведений элеметов строки на столбец?
Lapp
31.05.2009 19:20
krjuger, ты немного ошибаешься. Стринги с целыми нельзя складывать. Надо перечислять через запятую
write('intput m[',i,',',j,': ');
Krjuger
31.05.2009 19:40
А ну да. Приношу извинения...Но инт в стринг переводить тоже не вариант,да и вообще я бы просто таблицу печатал получившихся чисел.,а то при n равным хотяб 5 уже как то это построчно проверять уже становиться проблематично,да и ка то старнно делаеш ты зачем вводить и сразу проверять??У тебя массив не заполнен,а ты уже проверяеш, зачем max := -1; min := 9999; ,по сути тоже не нужно,можно просто и в макс и в мин записать первый элемент и не мучатсья.и еще бы я раскидал заполнение и выполнение задачи на две разных процедуры..,а еще когда ты научишся код в теги заключать???????Читать очень не удобно,да и правило нарущается номер 2.
volvo
31.05.2009 19:51
М
Цитата
Читать очень не удобно,да и правило нарущается номер 2.
То, что тобой правило №7 нарушается ПОСТОЯННО - это тебя, стало быть не волнует? Ты начнешь уже проверять что-нибудь, перед тем, как выкладываешь это на форум? Или можно к тебе принимать меры как к злостному нарушителю сразу?
Krjuger
31.05.2009 20:04
Каюсь,применяй.Готов ответить по всей строгости закона.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.