Помогите, пожалуйста, решить задачу!!!
|
|
Помогите, пожалуйста решить задачу: Дана матрица размера M:N. Продублировать строку матрицы содержащую ее максимальный элемент.
|
|
|
var A:array[1..100,1..100] of integer; i,j,k,m,n,c:integer; begin read (m,n); for i:=1 to m do for j:=1 to n do begin read (A[i,j]); if A[i,j]>c then begin c:=A[i,j]; k:=i; end; end; for i:=1 to n do write (A[k,i],#32); writeln; for i:=1 to n do write (A[k,i],#32); end.
|
|
|
А вы уверены, что это правильное решение?
|
|
|
Я уверен, что моё правильное:) var a:array[1..10,1..10]of byte; n,m,i,j,p,pmax:byte; begin read(n,m); for i:=1 to n do for j:=1 to m do read(a[i,j]); for i:=1 to n do for j:=1 to m do if a[i,j]>pmax then begin pmax:=a[i,j];p:=i;end; for j:=1 to m do write(a[p,j],' '); end. "Спасибо" принимается повышением репутации ( Зелёный плюсик:) ). Спасибо:)
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
№ 4 | Автор: Berestovskiy |
2011-05-14, 20:09 | Изменено: Berestovskiy - Сб, 2011-05-14, 21:54
|
Репутация: [ + 211 ]
|
|
|
Quote (DariaSpeedy) А вы уверены, что это правильное решение? Уверен, если я конечно правильно понял условие задачи. Дана матрица размерностью NxM. Вывести на экран два раза строку, в которой находится ее максимальный элемент. Или вывести надо было только один раз строку? А то слово продублировать меня смущает. Если один раз то последний цикл убрать и буде выводить один раз. Добавлено (14.05.11, 21:37) --------------------------------------------- Quote (Berestovskiy) Я уверен, что моё правильное:) Введи матрицу 3х3 1 2 3 4 5 6 2 3 4 и посмотри что у тебя выводит ))
№ 5 | Автор: HWOARANG |
2011-05-14, 21:37 | Изменено: HWOARANG - Сб, 2011-05-14, 21:38
|
Репутация: [ + 20 ]
|
|
|
Ой) Я завтыкал присвоить pmax))) Изменил, готово:)
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
№ 6 | Автор: Berestovskiy |
2011-05-14, 21:54 | Изменено: Berestovskiy - Сб, 2011-05-14, 21:55
|
Репутация: [ + 211 ]
|
|
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
№ 6 | Автор: Berestovskiy |
2011-05-14, 21:54 | Изменено: Berestovskiy - Сб, 2011-05-14, 21:55
|
Репутация: [ + 211 ]
|
|
|
Quote (Berestovskiy) Изменил, готово:) спер мой код )))
|
|
|
Quote (HWOARANG) спер мой код ))) Так тебе и надо))
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
Quote (HWOARANG) Уверен, если я конечно правильно понял условие задачи. Дана матрица размерностью NxM. Вывести на экран два раза строку, в которой находится ее максимальный элемент. Или вывести надо было только один раз строку? А то слово продублировать меня смущает. Если один раз то последний цикл убрать и буде выводить один раз. Программа после ответа выводит еще много нулей и левых цифр. Это так и должно быть? и еще выдает runtime error... Quote (Berestovskiy) var a:array[1..10,1..10]of byte; n,m,i,j,p,pmax:byte; begin read(n,m); for i:=1 to n do for j:=1 to m do read(a[i,j]); for i:=1 to n do for j:=1 to m do if a[i,j]>pmax then begin pmax:=a[i,j];p:=i;end; for j:=1 to m do write(a[p,j],' '); end. а при вашем решении он просто выбрасывает из программы, когда я введу матрицу=(
|
|
|
Quote (DariaSpeedy) runtime error... А после этого не идет случайно число 106 ? Если идет то это ошибка ввода. Скорей всего вводите буквы. Если нет то напишите номер ошибки и данные, которые вводите. Quote (DariaSpeedy) он просто выбрасывает из программы В смысле выбрасывает? Если возвращает к коду то в конце перед последним ендом поставьте readln. Результат не задерживается на экране вот и выбрасывает к коду, если опять запустить программу то результат будет на экране.
|
|
|
Или Alt+А5))
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
Quote (HWOARANG) В смысле выбрасывает? Если возвращает к коду то в конце перед последним ендом поставьте readln. Результат не задерживается на экране вот и выбрасывает к коду, если опять запустить программу то результат будет на экране. Я поняла, отчего ошибка=)) Только он выводит не строку с макс. элементом, а просто дублирует последнюю строку
|
|
|
Ну если дублирует последнюю значит макс.элемент в последней строке ) Хотя ошибка не исключена, какие данные вводите, проверю у себя.
|
|
|
Да нет, я специально проверяла), даже если макс. элемент не на посл. строке, то он все равно выдает последнюю(
|
|
|
Вот, нормально всё выдает:) var a:array[1..10,1..10]of byte; n,m,i,j,p,pmax:byte; begin read(n,m); for i:=1 to n do for j:=1 to m do read(a[i,j]); for i:=1 to n do for j:=1 to m do if a[i,j]>pmax then begin pmax:=a[i,j];p:=i;end; for j:=1 to m do write(a[p,j],' '); end. "Спасибо" принимается повышением репутации ( Зелёный плюсик:) ). Спасибо:)
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
скажите, плз, что вы вводите и что у вас выходит, а то у меня чтот не то выдает=(
|
|
|
Пример ввода: 3 3 9 8 7 1 2 3 4 5 6 Вывод: 9 8 7
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
А когда я ввожу таку матрицу, он просто не реагирует
|
|
|
оО Не знаю, я могу скрин-шот сделать если нужно, всё работает
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
http://vkontakte.ru/feed#/berestovskiy?z=photo19369656_261850829%2Fphotos19369656
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|