2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Ой.... помогите девушке в паскале... пожалуйста....
Сообщение02.10.2006, 16:18 
Пожалуйста, помогите мне в программирвоании. Я вроде и понимаю, но нужна помощь. Нужно написать подпрограмму.... Дана прямоугольная таблица вещественных чисел. Среди суммы элементов строк найти значение максимальной.
Пожалуйста. оюбъясните как начать хоть делать.. Прошу ВАС!!!!

 
 
 
 
Сообщение02.10.2006, 16:30 
Аватара пользователя
Солнце моё, тебе сначала в русском правописании надо помочь. :wink: Навскидку - типовое сравнение в цикле предыдущего значения с текущим из "прямоугольной таблицы"

 
 
 
 
Сообщение02.10.2006, 18:21 
Два цикла: в одном - ищем максимальное из этих значений, в другом считаем сумму элементов строки.

 
 
 
 
Сообщение02.10.2006, 18:23 
А если с помощью массивов, то как делать? в том то и прикол, что нужно оформить в виде массивов.... С процедурами я и сама вроде справлюсь....

 
 
 
 
Сообщение02.10.2006, 18:45 
Аватара пользователя
Если я, со второй попытки, правильно понял задание. Сначала нужно посчитать сумму элементов каждой строки, потом найти среди них максимальную. Один цикл перебирает номера элементов в текущей строке, второй - номер строки. Заодно с помощью сравнения находится максимальная сумма.
P.S. У элемента есть две "координаты", это означает, что он находится в двумерном ... где? :wink:

 
 
 
 
Сообщение03.10.2006, 17:17 
Лиза, Вы не знаете как работать с массивами (объявление, чтение-запись элементов)? Или знаете как, но не в Паскале?

 
 
 
 
Сообщение03.10.2006, 17:51 
Я не понимаю как это нужно оформить, но массивы я в Паскале с трудом понимаю.... Как начать пордпрограмму...... Подскажите, ну уж очень мне надо.... Умоляю....

 
 
 
 
Сообщение03.10.2006, 19:39 
Аватара пользователя
Program Work;
Uses crt;
Const
N=20;
M=22;
Type Matr=array[1..n,1..m] of real;
VAR
i,j,Nomer:integer;
S:real;
A:matr;
M:real;
BEGIN
M:=0;
nomer:=1;
for i:=1 to n do begin
s:=0;
for j:=1 to m do begin
s:=s+A[i,j];
end;
if S>M then begin
M:=s;
nomer:=i;
end;
end;

end;
write('Строка=',nomer)
END.

Это оснавная часть. Переделайте её под свои цели.

 
 
 
 
Сообщение03.10.2006, 19:44 
аааа.... спасибо вам огромное Woland, вы волшебник!

 
 
 
 
Сообщение03.10.2006, 19:47 
Только там 2 раза М, и желательно чтобы М-переменная сначала была не 0, а MaxInteger+1 или первую сумму считать вне цикла.

 
 
 [ Сообщений: 10 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group