• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

metoda gaussa-seidla

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
345 wizyt
pytanie zadane 21 kwietnia 2020 w C i C++ przez dominik195k Obywatel (1,030 p.)

Czesc mam problem z zadaniem, chodzi o rozwiazeni ukladu rownan metoda gaussa-seidla. Gdzies w kodzie jest kod pokazuje mi inne wyniki niz podane w odpowiedziach. 

#include <iostream>
#include <cmath>
#include <math.h>
#include <iomanip>
using namespace std;

int main()
    {
        int i, j, k;
        int iter=10;
        int n=4;
        float sum1, sum2;
        float W[n][n]={{0,0.13,0.065,0.13},{0.065,0,0.195,0.13},{0.195,0.13,0,0.065},{0.13,-0.065,0.195,0}};
 		float Z[n]={-1.4,-2.1,-3,-0.6};
		float X[n]={-0.3,4.2,-4.7,-3.7};
        
        for(k=0;k<iter;k++)
        {
            sum1=0;
            for(j=1;j<n;j++)
            {
                sum1+=W[0][j]*X[j];
            }
            X[0]=sum1+Z[0];
            for(i=1;i<n-1;i++)
            {
                sum1=0;
                for(j=0;j<i-1;j++)
                {
                    sum1+=W[i][j]*X[j];
                }
                sum2=0;
                for(j=i;j<n;j++)
                {
                    sum2+=W[i][j]*X[j];
                }
                X[i]=sum1+sum2+Z[i];
            }
            sum2=0;
            for(j=0;j<n-1;j++)
            {
                sum2+=W[n-1][j]*X[j];
            }
            X[n-1]=sum2+Z[n-1];
            cout << "Iteracja " << k+1 << endl;
            for(i=0;i<n;i++)
            {
                cout << "X[" << i << "]=" << X[i] << " ";
            }
            cout << endl;
        }
                
    return 0;
        }

Prawidlowe wyniki to:

iteracja 1
X0=-1.6405    X1=-3.60413    X2=-4.02893    X3=-1.36464    
iteracja 2
X0=-2.30782    X1=-3.21305    X2=-3.95642    X3=-1.46267    
iteracja 3
X0=-2.26501    X1=-3.20888    X2=-3.9539    X3=-1.45689    
iteracja 4
X0=-2.26355    X1=-3.20754    X2=-3.95307    X3=-1.45662    
iteracja 5
X0=-2.26329    X1=-3.20732    X2=-3.95297    X3=-1.45658    
iteracja 6
X0=-2.26325    X1=-3.2073    X2=-3.95296    X3=-1.45658    
iteracja 7
X0=-2.26325    X1=-3.20729    X2=-3.95296    X3=-1.45657    
iteracja 8
X0=-2.26325    X1=-3.20729    X2=-3.95296    X3=-1.45657    
iteracja 9
X0=-2.26325    X1=-3.20729    X2=-3.95296    X3=-1.45657    
iteracja 10
X0=-2.26325    X1=-3.20729    X2=-3.95296    X3=-1.45657

algorytm:

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 410 wizyt
pytanie zadane 21 kwietnia 2020 w C i C++ przez dominik195k Obywatel (1,030 p.)
0 głosów
0 odpowiedzi 374 wizyt
pytanie zadane 6 kwietnia 2020 w C i C++ przez dominik195k Obywatel (1,030 p.)
0 głosów
0 odpowiedzi 325 wizyt

89,787 zapytań

138,394 odpowiedzi

309,539 komentarzy

59,688 pasjonatów

Advent of Code 2022

Top 15 użytkowników

  1. 1244p. - Argeento
  2. 1186p. - nidomika
  3. 1172p. - rucin93
  4. 1171p. - Michal Drewniak
  5. 1165p. - Łukasz Eckert
  6. 1142p. - Mikbac
  7. 1121p. - TheLukaszNs
  8. 1106p. - JMazurkiewicz
  9. 1106p. - adrian17
  10. 1060p. - Mawrok
  11. 1052p. - overcq
  12. 991p. - Adam Salamon
  13. 945p. - Jarosław Roszyk
  14. 941p. - Hubert Chęciński
  15. 859p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...