Составить Паскаль-программу, производящую обработку квадратной матрицы |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Составить Паскаль-программу, производящую обработку квадратной матрицы |
nice |
30.05.2009 15:16
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Женский Репутация: 0 |
Составить Паскаль-программу, производящую обработку квадратной матрицы по-рядка NxN, из целых положительных чисел, вводимой с клавиатуры. Тестирование провести для пакета тестов из двух-трех матриц различного порядка.Умножение строки с минимальным элементом матрицы на столбец с максимальным элементом;
можете helllllppppp?? |
sheka |
30.05.2009 19:41
Сообщение
#2
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
можете helllllppppp?? я думаю это можно найти Здесь Сообщение отредактировано: sheka - 30.05.2009 20:27 |
nice |
31.05.2009 12:58
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Женский Репутация: 0 |
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 Сообщение отредактировано: nice - 31.05.2009 13:00 |
Krjuger |
31.05.2009 14:31
Сообщение
#4
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
и правильно не нравица.Ты вообще себе представляеш как это выглядит?ты зачем такую фигню мутиш???
Цитата write('intput m[' + IntToStr(i) + ',' + IntToStr(j) + ': '); Я бы посоветовал просто сделать.То что ты заключаеш в ковычки просто пишется,а то что без ковычек показывается то что есть и выводится на экран любой тип и не обязательно все переводить в стринг.
Цитата max_i := i; max:=m[i,j]; Зачем??????Кому это надо??? сравнивай сразу max_i например,либо вообще удали mfx_i и делай все в Max.и еще что значит умножение строки на столбец?что должно быть результатом?Число равное сумме произведений элеметов строки на столбец? Сообщение отредактировано: Krjuger - 31.05.2009 14:32 |
Lapp |
31.05.2009 15:20
Сообщение
#5
|
Уникум Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
krjuger, ты немного ошибаешься. Стринги с целыми нельзя складывать. Надо перечислять через запятую
write('intput m[',i,',',j,': '); -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Krjuger |
31.05.2009 15:40
Сообщение
#6
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
А ну да.
Приношу извинения...Но инт в стринг переводить тоже не вариант,да и вообще я бы просто таблицу печатал получившихся чисел.,а то при n равным хотяб 5 уже как то это построчно проверять уже становиться проблематично,да и ка то старнно делаеш ты зачем вводить и сразу проверять??У тебя массив не заполнен,а ты уже проверяеш, зачем max := -1; min := 9999; ,по сути тоже не нужно,можно просто и в макс и в мин записать первый элемент и не мучатсья.и еще бы я раскидал заполнение и выполнение задачи на две разных процедуры..,а еще когда ты научишся код в теги заключать???????Читать очень не удобно,да и правило нарущается номер 2. Сообщение отредактировано: Krjuger - 31.05.2009 15:43 |
volvo |
31.05.2009 15:51
Сообщение
#7
|
|||
Гость |
|
|||
Krjuger |
31.05.2009 16:04
Сообщение
#8
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
Каюсь,применяй.Готов ответить по всей строгости закона.
Сообщение отредактировано: Krjuger - 31.05.2009 16:04 |
Текстовая версия | 29.03.2024 4:28 |