Помощь - Поиск - Пользователи - Календарь
Полная версия: Заполнение двумерного массива, вывод в файл
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Лёва
Привет всем! Вот уже неделю борюсь турбо паскалем. И понял что я что без общественности он меня разобъет на голову. Проблема вот такая.
Мне нужно просто сформировать двумерный массив 7 x 7 и забить его генератором случайных чисел, а еще вывести элементы массива на экран и в файл. Все было бы великолепняк, но надо еще и вычислить сумму отрицательных элементов столбца, в котором находится максимальный элемент и что самое невообразимое для меня это оформить нахождение максимального элемента в виде процедуры и вывести на экран и в файл полученную сумму и номер столбца %(

Вот таки вот у меня баталии. Может кто поможет поставить это на место
Lapp
Шутки - шутками, а правила - правилами.
М
Прочти Правила (ссылка вверху) и в следующий раз делай информативное название


На этот раз я исправил.

Если ты неделю что-то делаешь, покажи результаты, пожалуйста. Любые, что получилось.
Тимон
Я что то не понял над каким именно вопросом ты больше всего убиваешься?
Айра
Попробуй так:
uses crt;
var f: text;
a: array[1..7,1..7] of integer;
i,j,max,sum,nom: integer;

procedure poisk_max(b,j: integer; var m: integer; var n: integer);
begin
if b>max then
begin
max:=b; {если наибольших элементов два}
n:=j; {то программа запомнит первый}
end; {такой вариант пойдет?}
end;

begin
assign(f, 'matr.txt');
rewrite(f);
randomize;
max:=-100;
sum:=0;
for i:=1 to 7 do
begin
for j:=1 to 7 do
begin
a[i,j]:=random(11)-5; {чтоб и отрицательные числа получались}
write(f,a[i,j]:4);
write(a[i,j]:4);
poisk_max(a[i,j],j,max,nom);
end;
writeln(f);
writeln;
end;
writeln('максимум: ',max,' столбец: ',nom,'');
for i:=1 to 7 do
begin
if a[i,nom]<0 then sum:=sum+a[i,nom];
end;
writeln('сумма: ',sum,'');
writeln(f,'сумма: ',sum,'; столбец: ',nom,'');
close(f);
end.

Что непонятно, спрашивай smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.