Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

инфа курсач / курсач

.doc
Скачиваний:
55
Добавлен:
01.05.2014
Размер:
92.16 Кб
Скачать

Министерство образования Российской Федерации

Санкт-Петербургский государственный электротехнический университет «ЛЭТИ»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ

По дисциплине «И Н Ф О Р М А Т И К А»

Шифр задания № 3.1

Выполнил студент гр. 7201 Преподаватель

Аксенов Е.В.. Голубев А. Б.

Санкт-Петербург

2007

Содержание

  1. Содержательная постановка задачи

    1. Формулировка условия задачи

    2. Пример решения задачи

  1. Формализованная постановка задачи

    1. Способ получения результата по исходным данным

    2. Выбор и описание метода решения задачи

    3. Исходные данные и форма их представления

    4. Форма представления результатов выполнения программы

    5. Перечень исключительных ситуаций и требуемой реакции программы

  2. Алгоритмизация

  3. Программирование и отладка

    1. Текст программы

  4. Испытание программы

    1. Пример 1

  5. Краткая характеристика программы

  6. Заключение

  1. СОДЕРЖАТЕЛЬНАЯ ПОСТАНОВКА ЗАДАЧИ

    1. Формулировка задачи

Выполнить над квадратной матрицей порядка n преобразования и дальше по списку.

1)прибавить к к-ому столбцу матрицы А ее i-тую строку, умноженную на заданное число

2)сформировать вектор V, элементами которого являются суммы элементов строк полученной в результате предыдущего преобразования матрицы

3)увеличить элементы V в порядке возрастания их модулей

1.2 Пример решения

матрица

3 9

7 4

матрица, после преобразования(прибавление к к-ому(1) столбцу i-той (1) строки, умноженной на число (1))

6 9

16 4

формирование вектора V ( элементами которого являются суммы элементов строк полученной в результате предыдущего преобразования матрицы)

15 20

увеличим вектор V в порядке возрастания его элементов

15 20

  1. ФОРМАЛИЗОВАННАЯ ПОСТАНОВКА ЗАДАЧИ

    1. Способ получения результатов по исходным данным

Для решения задачи необходимо из одной матрицей сделать другую, умножив ее i-строку на заданное число и прибавить ее к к-ому столбцу. Затем сформировать вектор V и увеличить его в порядке возрастания его элементов

2.2 Выбор и описания метода решения задачи

Способ получения результатов по исходным данным

Задается порядок матрицы , номер столбца, строки и число. В произвольно сформированной матрице к заданному столбцу прибавляется заданная строка, умноженная на заданное число. Затем формируется вектор V, элементами которого являются суммы элементов строк полученной в результате предыдущего преобразования матрицы. И этот вектор увеличивают в порядке возрастания их модулей.

2.3 исходные данные и форма их представления

обозначение

назначение

тип

структура

n

Порядок матрицы

integer

скаляр

k

Столбец в матрице

integer

скаляр

i

Строка в матрице

integer

скаляр

m

Число,на которое умножается строка

integer

скаляр

2.4Форма представления результатов выполнения программы

обозначение

назначение

тип

структура

v

вектор

integer

Одномерный массив

Нижняя граница -1

Верхняя граница - 900

a

Первая матрица

integer

Двумерный массив

Нижняя граница-1

Верхняя граница-30

2.5Перечень исключительных ситуаций и требуемой редакции программы.

1)если вводим n отрицательное или нулевое, то мы должны ввести его правильно, пока не введем правильное

2) если вводим k отрицательное или нулевое, то мы должны ввести его правильно, пока не введем правильное

3) если вводим i отрицательное или нулевое, то мы должны ввести его правильно, пока не введем правильное

  1. АЛГОРИТМИЗАЦИЯ

  1. ПРОГРАММИРОВАНИЕ И ОТЛАДКА

    1. Текст программы

Program matr;

Uses Crt;

Var

a:array[1..30,1..30] of integer;

v:array[1..900] of integer;

i,j,n,k,i1,m,j1,s:integer;

Begin

ClrScr;

n:=-1;

While n<=0 do

begin Write('Poryadok matrizy n ==> ');

read(n);

end;

for i:=1 to 100 do randomize;

for i:=1 to n do

begin

for j:=1 to n do

begin

a[i,j]:=random(10);

write(a[i,j]:5);

end;

writeln;

end;

k:=0;

While (k<1) or (k>n) do

begin

Write('Wwedite nomer stolbza k ==> ');

read(k);

end;

i1:=0;

While (i1<1) or (i1>n) do

begin

Write('Wwedite nomer stroki i ==> ');

read(i1);

end;

Write('Wwedite chislo ==> ');

read(m);

for i:=n downto 1 do

begin

a[i,k]:=a[i,k]+m*a[i1,i];

end;

j1:=1;

for i:=1 to n do

begin

s:=0;

for j:=1 to n do

begin

write(a[i,j]:5);

s:=s+a[i,j];

end;

writeln;

v[j1]:=s;

inc(j1);

end;

writeln;

Writeln('wywod wektora V ==>>');

for i:=1 to n do

write(v[i]:5);

for i:=2 to n do

begin

for j:=n downto i do

begin

if (abs(v[j-1])>abs(v[j])) then

begin

j1:=v[j-1];

v[j-1]:=v[j];

v[j]:=j1;

end;

end;

end;

writeln;

writeln;

Writeln('wektor uporjadochenyypo wozrastaniyu V ==>>');

for i:=1 to n do

write(v[i]:5);

Readkey;

End.

5.Испытание программы

5.1 Пример 1

Poryadok matrizy n ==> 2

0 6

9 0

Wwedite nomer stolbza == > 2

Wwedite nomer stroki== > 2

Wwedite chislo == > 12

0 114

9 0

Wywod Wektora V ==>

114 9

Wektor,elementy kotorogo uporjadocheny po wozrastaniyu.V ==>

9 114

Пример 2

Poryadok matrizy n ==> 3

5 2 4

6 6 3

6 4 3

Wwedite nomer stolbza == > 1

Wwedite nomer stroki== > 3

Wwedite chislo == > 2

29 2 4

14 6 3

12 4 3

Wywod Wektora V ==>

35 23 19

Wektor,elementy kotorogo uporjadocheny po wozrastaniyu.V ==>

19 23 35

6.КРАТКАЯ ХАРАКТЕРИСТИКА ПРОГРАММЫ

Наименование программы: matr.

Назначение программы: выполнение над квадратной матрицей порядка n преобразований

1)прибавление к к-ому столбцу матрицы А ее i-тую строку, умноженную на заданное число

2)сформировывать вектор V, элементами которого являются суммы элементов строк полученной в результате предыдущего преобразования матрицы

3)увеличить элементы V в порядке возрастания их модулей

Формат вызова программы: ≥ matr≤ Enter

Объем программы на носителе данных: 1,74 Кбайт.

7.Заключение

Программа отлажена в дисплейном кансоле на компьютере типа IBM PC и функционирует без сбоев.

Соседние файлы в папке инфа курсач