All pastes #2105835 Raw Edit

Odwoania cykliczne - matlab4

public cpp v1 · immutable
#2105835 ·published 2012-01-24 22:48 UTC
rendered paste body
#include <iostream>#include <cstdlib>#include <conio.h>using namespace std;double tablica[4][4] = {{0,   500, 500, 0},                        {300, 0,   0,   150},                        {300, 0,   0,   150},                        {0,   0,   0,   0}};/*  Funkcja ma wykonać odwołania cykliczne *  Program implementujący obliczenia z pliku do przedmiotu AOI Matlab4. *  Założony wymiar tablicy 4x4 */double eps = 0.00001;double dokladnoscTemp = 0;void odwolaniaCykliczne(double [][4]);void print(const double[][4]);///MAIN STARTint main(){    //while((char)getch()!='q')    double dokladnoscTempPoprzednia;    do    {        dokladnoscTempPoprzednia=dokladnoscTemp;        odwolaniaCykliczne(tablica);        print(tablica);        system("cls");    } while(dokladnoscTemp<=eps || dokladnoscTemp!=dokladnoscTempPoprzednia); //Jeśli nie uda się osiągnąć eps, a wartość już się nie zmniejsza    system("cls");    print(tablica);    return 0;}void print(const double tablica[][4]){    for(int i=0;i<4;++i)    {        for(int j=0;j<4;++j)        {            cout.width(10);            cout << tablica[i][j];        }        cout << endl;    }    cout << endl;}void odwolaniaCykliczne(double matrix[][4]){    for(int i=1;i<3;++i) //do przedostatniego elementu    {        for(int j=1;j<3;++j)        {            double poprzednia = matrix[i][j]; //Wartosc Vn            matrix[i][j]=(matrix[i-1][j]+matrix[i+1][j]+matrix[i][j-1]+matrix[i][j+1])/4;            if(matrix[i][j]-poprzednia>=eps)            {                dokladnoscTemp=matrix[i][j]-poprzednia;            }        }    }}