Форум программистов, компьютерный форум CyberForum.ru

Вычисление следа заданной матрицы по формуле (Язык Си) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.75
footbaler
1 / 1 / 0
Регистрация: 18.12.2010
Сообщений: 50
18.12.2010, 06:30     Вычисление следа заданной матрицы по формуле (Язык Си) #1
Искал на форуме что то похожее, но не нашел ничего конкретного.
Суть задания такова:
Разработать алгоритм и составить программу на языке Си для вычисления следа заданной матрицы A по формуле (1). Преобразовать матрицу A, разделив все ее элементы на значение S. Преобразованную матрицу вывести на экран.
Формулу (1) и матрицу выкладываю на скрине...

Просьба 1: не пинать за оформление, и постановку задания, да и вообще за то что отнимаю ваше время!
Просьба 2: не прошу писать весь исходник (хоть и не отказался бы), а хотя бы натолкнуть на путь истинный - хотелось бы увидеть как представить формулу (1).
Миниатюры
Вычисление следа заданной матрицы по формуле (Язык Си)  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2010, 06:30     Вычисление следа заданной матрицы по формуле (Язык Си)
Посмотрите здесь:

C++ Получить новую матрицу путём сложения всех элементов заданной матрицы (язык C)
Вычисление следа матрицы и определителя C++
Рассчитать элементы квадратной матрицы по заданной формуле. C++
Вычисление значения выражения по заданной формуле C++
Рассчитать элементы квадратной матрицы по заданной формуле C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.12.2010, 07:05     Вычисление следа заданной матрицы по формуле (Язык Си) #2
Если есть матрица A[4][4], то след S можно вычислить так:
C
1
2
3
double S=.0;
for(int i=0; i<4; i++)
S+=A[i][i];
Чтобы:
Цитата Сообщение от footbaler Посмотреть сообщение
Преобразовать матрицу A, разделив все ее элементы на значение S.
нужно сделать так:
C
1
2
3
for(int i=0; i<4; i++)
for(int j=0; j<4; j++)
A[i][j]/=S;
Ну а с вводом, выводом значений матрицы думаю разберетесь (примеров на форуме хватает).
footbaler
1 / 1 / 0
Регистрация: 18.12.2010
Сообщений: 50
18.12.2010, 14:41  [ТС]     Вычисление следа заданной матрицы по формуле (Язык Си) #3
valeriikozlov, спасибо за уделенное время, сейчас буду пробовать, что получится представлю на проверку.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.12.2010, 14:43     Вычисление следа заданной матрицы по формуле (Язык Си) #4
Давайте, посмотрим что получится.
footbaler
1 / 1 / 0
Регистрация: 18.12.2010
Сообщений: 50
18.12.2010, 15:37  [ТС]     Вычисление следа заданной матрицы по формуле (Язык Си) #5
Вот что получилось, проверьте пожалуйста.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#define N 4
void PrintMatrix( double* x, int n,int m)
{
 int i;
 for (i = 0; i < n*m; i++ )
  {
   printf( "%6.2g", x[i] );
   if ( (i+1) % m == 0 )
   printf( "\n" );
  }
}
 int main()
{
 int i, j, n=4;
 double S=.0, A[N][N] = {1.0, 2.1, 0.6, 4.0,
             5.0, 6.0, 12.4, 6.1,
             -9.6, -9.1, 11.0, 6.4,
             1.3, 1.4, 15.0, 16.0 };
 printf( "Isxodnaya matricda:\n" );
 PrintMatrix( &A[0][0], N, N );
 for(i=0; i<n; i++)
 S+=A[i][i];
 for(i=0; i<n; i++)
 for(j=0; j<n; j++)
 A[i][j]/=S;
 printf( "Preabrazovannaya matrica:\n" );
 PrintMatrix( &A[0][0], N, N );
 return(0);
}
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.12.2010, 17:55     Вычисление следа заданной матрицы по формуле (Язык Си) #6
footbaler, Да вроде все правильно.
Я бы вот эту строчку:
Цитата Сообщение от footbaler Посмотреть сообщение
printf( "%6.2g", x[i] );
заменил бы на:
C
1
   printf( "%6.2lf", x[i] );
footbaler
1 / 1 / 0
Регистрация: 18.12.2010
Сообщений: 50
18.12.2010, 18:02  [ТС]     Вычисление следа заданной матрицы по формуле (Язык Си) #7
valeriikozlov, а так по написанию все нормально, кроме одной строчки которую вы указали, да? Ну то есть, больше ничего не надо изменять?
И еще мне надо разработать алгоритм программы, где можно посмотреть как, ну или как он будет выглядеть не подскажете?
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.12.2010, 18:09     Вычисление следа заданной матрицы по формуле (Язык Си) #8
Цитата Сообщение от footbaler Посмотреть сообщение
больше ничего не надо изменять?
не надо.

Цитата Сообщение от footbaler Посмотреть сообщение
И еще мне надо разработать алгоритм программы
Что для Вас значит алгоритм программы?
footbaler
1 / 1 / 0
Регистрация: 18.12.2010
Сообщений: 50
18.12.2010, 18:23  [ТС]     Вычисление следа заданной матрицы по формуле (Язык Си) #9
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Что для Вас значит алгоритм программы?
Я немного не так выразился, мне в курсовой работе надо изобразить графическую схему алгоритма программы, вот я хотел бы узнать как мне ее изобразить.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.12.2010, 18:34     Вычисление следа заданной матрицы по формуле (Язык Си) #10
footbaler, Вам видимо нужно блок-схему составить. В этом вопросе я пас.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2010, 18:38     Вычисление следа заданной матрицы по формуле (Язык Си)
Еще ссылки по теме:

Вычисление евклидовой нормы заданной матрицы C++
Вычисление значения по заданной формуле C++
C++ Из элементов матрицы А или вектора Х вычислить скалярное значение по заданной формуле

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
footbaler
1 / 1 / 0
Регистрация: 18.12.2010
Сообщений: 50
18.12.2010, 18:38  [ТС]     Вычисление следа заданной матрицы по формуле (Язык Си) #11
valeriikozlov, Именно ее...
В любом случае, еще раз спасибо за внимание, понимание и помощь!)
Yandex
Объявления
18.12.2010, 18:38     Вычисление следа заданной матрицы по формуле (Язык Си)
Ответ Создать тему
Опции темы

Текущее время: 17:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru