IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> двумерные массивы
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Женский

Репутация: -  0  +


Составить схему алгоритма и программу определения суммы всех четных чисел массива К={kj}, j=1,m, m - число элементов в массиве К (m≤60). Вывести на экран найденное значение суммы, а также все четные числа и их адреса.


не пойму как задать массив
как ограничить
m - число всех элементов?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(pre-dawn-haze @ 15.11.2011 21:36) *
не пойму как задать массив
как ограничить
m - число всех элементов?

Это неравенство, m<=60, просто говорит о том, какой величины массив тебе нужно заводить. Гарантируется, что входные данные (если массив будет вводиться с клавы или из файла) никогда не превысят 60 чисел.

const
m= 60;

var
a: array[1..60] of integer;
i,s: integer;

begin
write('enter total number of elements: ');
readln(n);
for i:=1 to n do a[i]:= Random(100);
s:= 0;
for i:=1 to n do
if not Odd(a[i]) then begin
s:= s+a[i];
writeln('a = ',a[i],' at i = ',i);
end;
end;
writeln('sum of even elements is ',s);
readln
end.

Тут я использовал заполнение массива случайными числами.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Женский

Репутация: -  0  +


ага, вот оно что=) тогда просто
спасибо
-
а можно еще вопрос?
В прямоугольной матрице размером К*М, имеющей имя МАTR содержаться целые числа. К- число строк, М- число столбцов. Ввести элементы матрицы с клавиатуры. Определить и вывести на экран сумму положительных элементов в каждой строке. Определить строку с максимальным значением этой суммы и вывести ее номер на экран.

я вывожу максимальную сумму, но не могу вывести строку, в которой она находится, как это сделать?

-
program z_122;
var
a:array[1..100, 1..100] of integer;
i, j, st: integer;
m, s, n: integer;
begin
writeln ('Введите количество столбцов' );
readln (m);
writeln ('Введите количество строк');
readln (n);
begin
for i:=1 to n do
for j:=1 to m do
begin
write ('a [ ', i, '' , j, ' ] = ');
read (a[i, j]);
end;
end;
writeln ('Исходная матрица');
for i:=1 to n do
begin
for j:=1 to m do
write (a[i,j]:4);
writeln;
end;

for i:=1 to n do
begin
s:=0;
for j:=1 to m do
if a[i,j]>0 then
s:=s+a[i,j];
Writeln('Сумма элементов в ', i,' строке равна ', S);
end;
st:=s;
for i:=2 to n do
if s>st then
st:=s;
writeln('Максимальная сумма равна : ', st );
end.


Сообщение отредактировано: pre-dawn-haze -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(pre-dawn-haze @ 17.11.2011 19:03) *
я вывожу максимальную сумму, но не могу вывести строку, в которой она находится, как это сделать?

Предрассветная-дымка, боюсь, ты не выводишь максимальную сумму.. Погоняй свой код и вникни. Ты выводишь все время только сумму последней строки. Чтобы действительно находить и выводить макс. сумму и номер строки, нужно ее искать в том самом цикле, в котором ты ты считаешь суммы (и в тот же момент запоминать номер строки).

Есть еще один тонкий момент: положительных элементов в строке может и не быть совсем. Мне кажется, что этот момент надо оговаривать особо. Но ты можешь считать, если хочешь, что их сумма просто равна нулю. Ниже я привожу тебе код, в котором все, как я считаю нужным )). Разберись с ним и сделай, как ТЫ хочешь.
program z_122;
var
a:array[1..100, 1..100] of integer;
n,m, i,j, s,sMax,iMax: integer;

begin
write('Введите количество столбцов: ' );
readln(m);
write('Введите количество строк: ');
readln(n);
for i:=1 to n do
for j:=1 to m do begin
write ('a [ ', i, '' , j, ' ] = ');
read (a[i, j]);
end;
writeln ('Исходная матрица');
for i:=1 to n do begin
for j:=1 to m do write (a[i,j]:4);
writeln;
end;
sMax:= -1;
for i:=1 to n do begin
s:=0;
for j:=1 to m do
if a[i,j]>0 then s:= s+a[i,j];
if s=0 then
writeln('в ',i,'-й строке положительных элементов нет')
else
Writeln('сумма положительных элементов ', i,'-й строки равна ', s);
if s>sMax then begin
sMax:= s;
iMax:= i
end
end;
if sMax=0 then
writeln('В матрице нет положительных элементов')
else
writeln('Макс. суммы пол. эл. достигается в строке ',iMax,' и равен ', sMax );
end.

Успехов тебе. Вопросы задавай, не стесняйся.

PS
только для других задач все же создавай новые темы


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 1
Пол: Мужской

Репутация: -  0  +


Помогите решить задачу, главный вопрос меня интересует, это как удалить столбец в котором все нули? smile.gif

Сообщение отредактировано: Vovan -


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.09.2019 14:50
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name