Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2013, 16:23   #1
smilikys
Новичок
Джуниор
 
Регистрация: 15.11.2013
Сообщений: 1
По умолчанию Программа решение СЛАУ методом квадратного корня (MQ) на языке "C".

Требуется программа решения СЛАУ порядка n и решить систему линейных уравнений пятого порядка с трехдиагональной симметричной матрицей вида:

где: d= -2, q = -3,23.

Блок-схема вида:


Написал следующий код не работает:
Код:
#include <stdio.h>
#include <math.h>
int main (void)
{
   float * MQ (float a[100][100], float b[100]), int n)
   float x[100], y[100], g[100][100], c[100], b[100]; /* x[100], y[100];*/
   int n, m, i, j, k;

   printf ("Введите m и n: \n");
   scanf ("%i %i", &n, &m);
   printf ("Введите x и y\n");
   
   
   for (i = 1; i <= m; i++)  {
      printf ("введите х и у: \n");
      scanf ("%f %f", &x[i], &y[i]);  
   
      b[0] = 0;
      for (k = 1; k <= n; k++)  {
         g[i][k] = 0;
        for (j = 1; j <= m; j++)
           g[i][k] += pow (x[j], i + k -2);
    }
              for (j = 1; j <= m; j++)    
                 b[i] += pow (x[j], i-1) * y[j];
 }     
              
          c = MQ (g, b, n);       
   }   

}
//======================================================
/* Функция "Квадратного корня" */
float * MQ (float a[100][100], float b[100]), int n)
{
   int i, k, j;
   float y[100], d[100], c[100];
   float delta;
   
   for (k = 1; k <= n; k++) {
      delta = a[k][k];
      if (k != 1)
         for (i = 1; i <= k - 1; i++)
            delta -= d[i];
            pow ( s[i][k], 2 );
            d[k] = sign (delta);
            s[k][k] = sqrt (fabs (delta));   
   
            for (j = k + i; j <= n; j++)  {
               delta = a[k][j];
               if (k != 1)
                  for (i = 1; i <= k -1; i++)
                     delta -= d[i] * s[k][l] = delta / (s[k][k] * d [k]);
              }
         }

  y[1] = b [1] / ( s [1][1] * d[1]);
  for (i = 2; i < = n; i++)  {
     delta = b[i];
     for (k = 1; k <= i-1; k++)
        delta -= d[k]; * y [k] * s [k][i];
        y[i] = delta / ( s[i][i] * d[i]);
        
        x[n] = y[n] / s [n][n];
           for (i = n-1; i >= 1; i--)  {
              delta = y[i];
              for (k = i + 1; k <= n; k++)
                 delta -= x[k] * s[i][k];
                 x[i] = delta / s[i][i];
       }
    return x;
   }                 
}
//====================================================================
Писал в Linux UBuntu 12.04 через gedit, компилировал через терминал -> gcc
Помогите разобраться и сделать правильно.

Последний раз редактировалось smilikys; 15.11.2013 в 16:39.
smilikys вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
решение задачи методом "поиск решения" в Excel FullhDi Microsoft Office Excel 19 03.03.2015 16:20
СЛАУ методом квадратного корня C++ Dmitry_Web Помощь студентам 4 27.05.2012 21:20
решение слу методом квадратного корня dmitrialenitchev Общие вопросы C/C++ 1 03.10.2011 00:08
написать программу "решение транспортной задачи дельта методом" на Delphi DIMAN488 Помощь студентам 1 06.12.2010 00:34