Задачка на матрицы
|
|
PROTOSS | Дата: Вторник, 04.11.2008, 00:49 | Сообщение # 1 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| Дана целочисленная матрица {Aij}i=1..n,j=1..m (n,m<=100). Найти строку с наибольшим произведением элементов и заменить все элементы этой строки этим произведением. З.Ы. кому интересно порешать задачки такого типа, оброщайтесь еще 20 штук есть=)
Излил душу - Вытри за собой!
|
|
| |
Alexander | Дата: Вторник, 04.11.2008, 02:32 | Сообщение # 2 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| а что именно не получается? Свой вариант решения приветствуется.
Скажем дружно- нафиг нужно!
|
|
| |
PROTOSS | Дата: Вторник, 04.11.2008, 02:57 | Сообщение # 3 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| да я в ТП неахти, матрицы тока проходить начали, но свой ответ уже есть, потом напишу какнить...
Излил душу - Вытри за собой!
|
|
| |
Alexander | Дата: Вторник, 04.11.2008, 03:40 | Сообщение # 4 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| Quote (PROTOSS) потом напишу какнить... мы подождём, нам некуда торопиться.
Скажем дружно- нафиг нужно!
Сообщение отредактировал Alexander - Вторник, 04.11.2008, 03:40 |
|
| |
PROTOSS | Дата: Вторник, 04.11.2008, 04:51 | Сообщение # 5 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| Code type ctpoka=array [1..100] of integer; ta6=array [1..100] of ctpoka; var a: ta6 i,j,n,m,maxi,p,max: integer; f:boolean; begin writeln('BBEDUTE 4UCLO CTPOK'); readln(n); writeln('BBEDUTE 4UCLO CTOL6ll,OB'); readln(m); for i:= 1 to n do for j:= 1 to m do read(a[i,j]); for i:= 1 to n do begin p:=1; for j:= 1 to m do begin p:=p*a[i,j]; if f then begin if p>max then begin max:=p; maxi:=i; end; end else begin max:=p; maxi:=i; end; end; end; for j:= 1 to m do a[maxi,j]:= p; writeln('PE3yLbTAT: '); for i:= 1 to n do begin for j:=1 to m do write(a[i,j]:3,' '); writeln; end; end. З.Ы. подкоректируйте плиз задачу так чтобы она работала полностью на рандоме, и перед ответом показывала исходную матрицу З.Ы.Ы. сам немогу...у мя еще матан несдан...готовится буду
Излил душу - Вытри за собой!
|
|
| |
Alexander | Дата: Вторник, 04.11.2008, 05:16 | Сообщение # 6 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| А что такое f? И какова цель манипуляций в цикле где считается произведение?
Скажем дружно- нафиг нужно!
|
|
| |
PROTOSS | Дата: Вторник, 04.11.2008, 07:26 | Сообщение # 7 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| 1)f ето тру-фолс 2) см условие задачи=)
Излил душу - Вытри за собой!
|
|
| |
Alexander | Дата: Вторник, 04.11.2008, 07:49 | Сообщение # 8 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| Quote (PROTOSS) 1)f ето тру-фолс я знаю какие значения принимает логический тип, я спрашиваю с какой целью введена эта переменная в данной задаче. Quote (PROTOSS) 2) см условие задачи=) Смотрел, но связи между той белибердой и условием не нашёл. Quote (PROTOSS) подкоректируйте плиз задачу так чтобы она работала полностью на рандоме, и перед ответом показывала исходную матрицу функция Random(x) возвращает случайное значение от 0 до x-1. если нужно за подпрограмму генерировать несколько случайных значений, то необходимо 1 раз вызвать процедуру Randomize.
Скажем дружно- нафиг нужно!
|
|
| |
Seqular | Дата: Вторник, 04.11.2008, 08:01 | Сообщение # 9 |
Хранитель
Группа: Администраторы
Сообщений: 859
Статус: Offline
| Насколько я успел разобраться в коде, флаг f используется только в условии. Нигде он после этого не меняется. Следовательно без него можно обойтись.
Поддерживаю также проект сообщество молодых сисадминов
|
|
| |
PROTOSS | Дата: Вторник, 04.11.2008, 08:18 | Сообщение # 10 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| да разве!? А вот тут что? if f then begin if p>max then ... а по теме рандома, вклейте его плиз в задачу а не так, так я и сам могу=) и если возможно, с матрицой тоже также
Излил душу - Вытри за собой!
Сообщение отредактировал PROTOSS - Вторник, 04.11.2008, 08:19 |
|
| |
Alexander | Дата: Вторник, 04.11.2008, 08:26 | Сообщение # 11 |
Всевышний
Группа: Модераторы
Сообщений: 475
Статус: Offline
| Quote (PROTOSS) да разве!? А вот тут что? вот и я понять не могу что это за ерунда и зачем она нужна.
Скажем дружно- нафиг нужно!
|
|
| |
PROTOSS | Дата: Вторник, 04.11.2008, 08:30 | Сообщение # 12 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| ну с ней прога покрайнй мере работает....а без нее курьезная ошибка=) end else срабатывают правила, необходимости ; и ее ненадобности=)
Излил душу - Вытри за собой!
|
|
| |
Seqular | Дата: Вторник, 04.11.2008, 08:32 | Сообщение # 13 |
Хранитель
Группа: Администраторы
Сообщений: 859
Статус: Offline
| PROTOSS, Мда... А скажи на милость, вот f у тебя False, верно? Оно где-нибудь меняется? Может стоит использовать такую конструкцию: Code if (True = False) then .... вместо этого?
Поддерживаю также проект сообщество молодых сисадминов
|
|
| |
Seqular | Дата: Вторник, 04.11.2008, 08:32 | Сообщение # 14 |
Хранитель
Группа: Администраторы
Сообщений: 859
Статус: Offline
| Quote (PROTOSS) да разве!? А вот тут что? про это условие я и говорил. Где еще используется флаг?
Поддерживаю также проект сообщество молодых сисадминов
|
|
| |
PROTOSS | Дата: Вторник, 04.11.2008, 08:34 | Сообщение # 15 |
Старый знакомый
Группа: Пользователи
Сообщений: 42
Статус: Offline
| а все поправил, да без него работает...хм странно
Излил душу - Вытри за собой!
|
|
| |