close

Вход

Забыли?

вход по аккаунту

?

3Основная часть (2)

код для вставкиСкачать
1
Текст задачи
Дана симметричная квадратная матрица А порядка n задана последовательностью n(n+1)/2
чисел,аналогично правой треугольной матрице (см.задачу 716). Кроме этой
последовательности дан вектор b с n элементами.
Найти вектор А*b.
задача 716.
Правая треугольная матрица А порядка n задана в виде последовательности n(n+1)/2
чисел,сначала идет n элементов первой строки, затем n-1 элемент второй строки ,
начиная со второго элемента, и т.д. (из последней n-й строки берется только n-й элемент).
Кроме этой последовательностидан вектор b с n элементами. Найти вектор Аb.
2
Функциональное назначение
Данная программа предназначена для перемножения симметричной матрицы на вектор.
3
Спецификация программы
Данная программа «Программа для перемножения симметричной матрицы на вектор»
написана на языке Си и успешно функционирует в операционной системе Windows.
4
Состав программного модуля
В данной программе используются 8 функций:
int r (int a, int f, int k) – функция, обеспечивающая защиту от некорректного ввода.
void f1(int *s, int *b, int n) – функция заполнения матрицы.
void f2(int *s,int *b, int *c, int n) – функция .
void f3(int *c, int n) – функция для вывода матрицы.
void f4(void)– функция содержащая информацию о программе.
void f5(void) – функция содержащая справку.
int _tmain(int argc, _TCHAR* argv[]) – головная функция содержащая меню.
Лист
Изм. Лист
№ докум.
Подпись Дата
ТПЖА.12116-01 90 01
3
5
Структура программного модуля
int _tmain(int argc, _TCHAR* argv[])
int r(int a, int f, int k)
void f1(int *s, int *b, int n)
int r(int a, int f, int k)
void f2(int *s,int *b, int *c, int n)
void f2(int *s,int *b, int *c, int n)
void f3(int *c, int n)
void f5(void)
void f4(void)
6
Схема программы
void f2(int *s,int *b, int *c, int n)
int i,j, *a
int k=0
A8
i=0;i<n;i++
A9
j=0;j<n;j++
a[i*n+j]=s[k]
k++
A9
A8
о
К стр. 5
Лист
Изм. Лист
№ докум.
Подпись Дата
ТПЖА.12116-01 90 01
4
о
Из стр. 4
A10
i=0;i<n;i++
A11
j=0;j<n;j++
c[i]+=a[i*n+j]*b[j]
A11
A10
Конец функции
void f2(int *s,int *b, int *c, int n)
Лист
Изм. Лист
№ докум.
Подпись Дата
ТПЖА.12116-01 90 01
5
Документ
Категория
Программирование, Базы данных
Просмотров
32
Размер файла
319 Кб
Теги
3основная, часть
1/--страниц
Пожаловаться на содержимое документа