Anonymní profil Hany – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Hany – Programujte.comAnonymní profil Hany – Programujte.com

 

Příspěvky odeslané z IP adresy 83.208.57.–

Hany
C / C++ › C++Matice-FSV-G
29. 11. 2012   #167838

Nepotřebuju na nic odpovědět jen si dávám poznámky na tématické fórum kontrolou nepovažované za komunikaci (podvod)  Nechte to tu do soboty prosím. Díky

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <iostream>

//#include <math.h>

void extremy(const QMat &A, double &min, double &max)

{


    int m = A.rows();

    int n = A.cols();


    min = max = A(1,1);

    for(int i=1; i<=m; i++)

    {


        for(int j=1; j<=m; j++)

        {


            if(A(i,j)<min)


            {


                min = A(i,j);


            }


            if(A(i,j)>max)


            {


                max = A(i,j);


            }


        }


    }


}


QVec diag(const QMat &A)

{


int m = A.rows();


int n = A.cols();


QVec d(m);


for(int i = 1;i<=m;i++)

{


    d(i) = A (i, i);

}


    return d;


}


void vymena(const QMat &A, QMat &B, int k, int l)

{


//dimenze:


    int m = A.rows();

    int n = A.cols();


    B.reset(m,n);


    B=A;

    QVec tmp (n);

    if(k<l && l<=m)

    {


        for(int i = 1; i<=n; i++)

        {


            tmp(i) = B(l,i);


            B(l,i) = B(k,i);


            B(k,i) = tmp(i);


        }


    }


    else


    {


        std::cerr << "Mimo dimenze";

    }


}


MainWindow::MainWindow(QWidget *parent) :

    QMainWindow(parent),


    ui(new Ui::MainWindow)

{


    ui->setupUi(this);

    ui->plaintext1->insertPlainText(


                "4 4 "

                "1 5 8 9 "

                "2 6 9 7 "

                "3 2 1 4 "

                "8 9 7 7"

                );


}


MainWindow::~MainWindow()


{


    delete ui;


}

void MainWindow::on_Button_clicked()


{


    QString astr = ui->plaintext1->toPlainText();


    QMatVecStream vstup(astr);


    QMatVecStream vystup;

    QMat A;


    QVec v;


    QMat B;

    double min;


    double max;


    vstup >> A;


    extremy(A, min,max);

//k=1  l=3


    vymena(A,B,1,3);


    v=diag(A);

    v = diag(A);

//    vystup << A << v << B;

    vystup << "Min" << min << "Max" << max;


   ui->plaintext2->insertPlainText(vystup.str());

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý