Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Титовская Н.В.

Нечаева К.О.

Проверила:

Красноярск 2014

Лабораторная работа №5 (По №4)

Тема: Обработка двумерных массивов.

Цель: Приобретение навыков составления алгоритмов и программ, использующих вложенные циклы.

Вариант: 16.

 

Дано выражение:

Из квадратной матрицы [Aij] i, j= сформировать одномерный массив [Xi] i= по следующему правилу: элементами одномерного массива [Xi] с нечетными индексами будут элементы главной диагонали [Aij], с четными – побочной диагонали [Aij].

Алгоритм

Процедура |VVOD A|

       
   
 
 

 

 


 

 

 


 
 

Да
Да
Нет
k: =1
Процедура |VIVOD X|
i: =i+1
k: =k+2
X[k]: =A[i, n-i+1]
Нет
Да
i: =1
k: =1
i: =i+1
k: =k+2
X[k]: =A[i, i]  
Нет
i: =1
k: =2
Процедура | СIKL |
Текст программы:

 


program laba5;

TYPE MAS=array [1..100, 1..100] of integer;

MAS1=array [1..100] of integer;

var i, j, k, n, n1: integer;

A: array [1..100, 1..100] of integer;

X: array [1..100] of integer;

procedure VVOD (n1: integer; var A: MAS);

var i, j: integer;

begin

for i: =1 to n1 do

for j: =1 to n1 do

begin

write ('Введи элемент A[', i, ', ', j, ']=');

readln (A[i, j]);

end;

end;

procedure CIKL (n1: integer; var X: MAS1; A: MAS);

var k, i: integer;

begin

begin

for i: =1 to n do

begin

for j: =1 to n do

write (A[i, j], ' ');

writeln;

end;

end;

k: =1;

for i: =1 to n1 do

begin

X[k]: =A[i, i];

k: =k+2;

end;

k: =2;

for i: =1 to n1 do

begin

X[k]: =A[i, n1-i+1];

k: =k+2;

end;

end;

procedure VIVOD (n1: integer; var X: MAS1; A: MAS);

var k: integer;

begin

for k: =1 to (2*n1) do

writeln ('X[', k, ']=', X[k]);

end;

begin

write ('Введите количество элементов массива n=');

readln (n);

writeln('Исходный массив');

VVOD (n, A);

CIKL (n, X, A);

writeln('Получился массив');

VIVOD (n, X, A);

end.

<== предыдущая лекция | следующая лекция ==>
Дневник производственное практики | Модифицированная рабочая программа с подробным комментарием.
Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.016 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал