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

беда с программой - C++

Восстановить пароль Регистрация
 
X-Roft
4 / 4 / 0
Регистрация: 28.10.2012
Сообщений: 27
06.11.2012, 20:44     беда с программой #1
Ребята очень нужна помощь!!!
Нужно написать программу, которая будет работать по методу Якоби. Наработки есть, но там ошибки и знаю какие, но в данный момент не могу с ними разобраться, а работу срочно нужно сдать! Посмотрите пожалуйста, так сказать, "свежим" умом.
Условие алгоритма звучит примерно так:
1. Вводим http://www.cyberforum.ru/cgi-bin/latex.cgi?α ,http://www.cyberforum.ru/cgi-bin/latex.cgi?β;
2. Находим http://www.cyberforum.ru/cgi-bin/latex.cgi?\chi {}^{(k)}, k=0, по формуле http://www.cyberforum.ru/cgi-bin/latex.cgi?\chi {}_{i}{}^{(0)}=?[i] , где k - количество итераций (соответственно неизвестно)
3. Находим http://www.cyberforum.ru/cgi-bin/latex.cgi?\chi {}^{(k+1)} по формуле http://www.cyberforum.ru/cgi-bin/latex.cgi?\chi {}_{i} {}^{(k+1)}= ?[i] + \sum_{j=1}^{n}?[i][j]*\chi [j]{}^{(k)}.
4. Находим norma{}^{(k)}, по формуле \parallel x{}^{(k+1)}-x{}^{(k)}\parallel = \Delta {}^{(k)}. ( \Delta {}^{(k)} = norma{}^{(k)} )
5. Проверяем условие http://www.cyberforum.ru/cgi-bin/latex.cgi?\Delta {{}^{}}^{k} \leq \varepsilon , где ? - значение допустимой ошибки, которое вводит пользователь.
6. Выводим x{}^{(k+1)}.

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include "stdafx.h"
#include <iostream>
#include <math.h>
 
using namespace std;
 
int main()
{
    int i,j,c;
    float A[3][3], b[3], x[3], p[3], razn[3];
    float norma, E, maxR=0, S=0;
    cout<<"Vvedite elementu matricu A: "<<endl;
    // Вводим елементы матрици А
    for (i=0; i<3; i++)
    {
        for (j=0; j<3; j++)
        {
            cin>>A[i][j];
        }
    }
    cout<<endl;
    for (i=0; i<3; i++)
    {
        for (j=0; j<3; j++)
        {
            cout<<A[i][j]<<"  ";
        }
        cout<<endl;
    }
    // Выводим элементы матрици А
    cout<<endl;
    cout<<"Vvedite elementu B: "<<endl;
    // Вводим елементы вектора Б
    for (i=0; i<3; i++)
    {
        cin>>b[i];
        x[i]=b[i];
    }
    cout<<endl;
    cout<<"Vvedite zna4enie E= "<<endl;  
    // Вводим значение допустимой ошибки
    cin>>E;
    /*for (i=0; i<3; i++)
    {
        cout<<x[i]<<" ";
    }
    */
    p[i]=b[i];
    do
    {
        for (i=1; 1<3; i++)              // Считаем х по формуле
        {
            for (j=1; j<3; j++)          // Находим сумму, чтобы потом подставить в формулу и найти х
            {
                S+=A[i][j]*x[j];
            }
            x[i]=b[i]+S;                 // Находим х
            p[i]=x[i];                   // Запоминаем значение х, тем самым записывая в другой массив
        }
        razn[i]=x[i]-p[i];               // Находим разницу елементов массивов
        for (i=0; i<3; i++)
        {
            c=abs(razn[i]);
            if (c>maxR)                  // Находим максимальный элемент по макс норме вектора
            {
                maxR=c;
            }
        }
        norma=maxR;                        
    }
    while (norma>E);                      
    cout<<endl;
    system ("pause");
    return 0;
}
Добавлено через 19 минут
извините за подобное сообщение спешил!
2. Находим , k=0, по формуле ? - β[i] , где k - количество итераций (соответственно неизвестно)

3. ? - http://www.cyberforum.ru/cgi-bin/latex.cgi?\beta [i] + \sum_{j=1}^{n} \alpha [i][j] * {x[j]}^{(k)}

4. http://www.cyberforum.ru/cgi-bin/latex.cgi?norma{}^{(k)} - \parallel x{}^{(k+1)} - x{}^{(k)}\parallel, http://www.cyberforum.ru/cgi-bin/latex.cgi?norma{}^{(k)} = \Delta {}^{(k)}

5. ? - ε

6. http://www.cyberforum.ru/cgi-bin/latex.cgi?x{}^{(k+1)}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2012, 20:44     беда с программой
Посмотрите здесь:

Беда со статическим полем C++
C++ Записать программой #1 и прочитать программой #2
Беда с подключением библиотеки C++
C++ Беда с оператором DELETE
C++ Беда с задачей
C++ Беда с наследованием. Организация многофайлового приложения
C++ Беда с Разработкой алгоритма программы
Беда с форматированным выводом C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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