Пример 7.2.

Вывести квадратную матрицу X размером N в виде таблицы. Вычислить и вывести сумму первых положительных элементов нечетных столбцов матрицы и обнулить элементы, размещенные над суммируемыми элементами.

Листинг программы

program prg_7_2;

{$mode objfpc}{$H+}

uses

Classes, SysUtils, RusTrans;

const NN=30;

var

i,j,k,l,n,s: integer;

x:array[1..NN,1..NN] of integer;

begin

writeln (Rus(‘Введите размер массива n’));

readln(n);

writeln;

randomize;

for i:=1 to n do                                                     // Формирование матрицы

for j:=1 to n do x[i,j]:=50-random(100);

for i:=1 to n do                                                     // Вывод матрицы

begin

for j:=1 to n do write(x[i,j]:4);

writeln;

end;

s:=0;                                                                    // Инициализация суммы

for j:=1 to n do

begin

if j mod 2=0 then continue;             // Пропустить четные столбцы

for i:=1 to n do

begin

if x[i,j]>0 then

begin

s:=s+x[i,j];              // Суммирование

break;             // Досрочный выход из цикла

end;

x[i,j]:=0;                          // Обнуление элемента матрицы

end;

end;

writeln;

writeln(Rus(‘Сумма=’),s);

writeln;

for k:=1 to n do

begin                                                           // Вывод измененной матрицы

for l:=1 to n do write(x[k,l]:4);

writeln;

end;

readln;

end.

Консоль перед закрытием программы:

paskal53

По нему нужно проверить правильность исполнения алгоритма.

Выводы

Массив – это набор компонент одинакового типа. Размерность массива ограничена только доступной памятью.

Для обработки массивов применяются инструкции циклов с известным числом повторений. При использовании инструкций циклов можно применять процедуры:

  • continue для перехода к следующей итерации в цикле,
  • break  для досрочного выхода из цикла.

Матрицы наглядно отображаются в табличной форме. Для вывода матриц в таком виде используются инструкции:

  • write  для размещения нескольких элементов в одной строке текста,
  • writeln для перехода к другой строке.
TwitterSEO CommunityВаау!News2.ruChippKoricaSMI2Google BookmarksDiggI.uaЗакладки YandexLinkstoreMyscoopCommunizmRu-marksWebmarksRuspaceLinkomaticKli.kzWeb-zakladkaZakladok.netRedditdeliciousMa.gnoliaTechnoratiSlashdotYahoo My WebБобрДобр.ruMemori.rurucity.comМоёМесто.ruMister Wong



Copyright © 2009-2010 Программирование на паскале.