小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

一個(gè)棘手的程序~~

 昵稱71201 2008-08-25
  一個(gè)使用C++的練習(xí)題,但是不知道哪里出的錯(cuò),能編譯,能build,就是運(yùn)行的時(shí)候,內(nèi)存出錯(cuò)~~
  想知道哪里出的錯(cuò)~~或者,給出這個(gè)題你的程序~~
================================================================
題目是:
 

寫一個(gè)程序,當(dāng)給出下面的輸入文件input.txt時(shí),計(jì)算矩陣a,b,c的乘積,求input.txt第一行給出的那個(gè)位置上的元素~~~~~最后輸出到output.txt

 

其中 :矩陣a,b,c都是稀疏矩陣~~

 

 

input.txt

1 2                     //要算的矩陣d 的某元素的行列數(shù)

3 4 2 3                 //矩陣a,b,c分別為3行4列,4行2列,2行3列

1 1 3                   //矩陣a的第一行,第一列元素為3

1 4 5                   //同理

2 2 1                   //同理

3 1 2                   //同理

 

1 2 2                    //矩陣b的第一行,第二列元素為2

2 1 1

3 1 2

3 2 4

 

1 2 2                    //矩陣c的第一行,第二列元素為2

1 3 3

2 1 1

2 2 2

 

 

 

===================================================================================

我寫得程序:

 

#include<string>
#include<iostream>
#include<fstream>

using namespace std;
void main()
{
int i,j;
int m,n;
int a,b,c,row1,row2,row3,row4;


ifstream input("add.txt");
ofstream output("result.txt");

input>>m;             //存入input第一行第一個(gè)數(shù)作為最后要求的那個(gè)數(shù)的行標(biāo)
input>>n;             //存入input第一行第二個(gè)數(shù)作為最后要求的那個(gè)數(shù)的列標(biāo)
input>>row1;
input>>row2;
input>>row3;
input>>row4;

int **ai=new int*[row1];//根據(jù)讀入的行、列數(shù)動(dòng)態(tài)定義數(shù)組大小 ,生成第一個(gè)矩陣
for (i = 0; i < row1; ++i)
 {
ai[i] = new int[row2];
}
int **bi=new int*[row2];//根據(jù)讀入的行、列數(shù)動(dòng)態(tài)定義數(shù)組大小 ,生成第二個(gè)矩陣
for (i = 0; i < row2; ++i)
 {
bi[i] = new int[row3];
}
int **ci=new int*[row3];//根據(jù)讀入的行、列數(shù)動(dòng)態(tài)定義數(shù)組大小 ,生成第三個(gè)矩陣
for (i = 0; i < row3; ++i)
{
ci[i] = new int[row4];
}


 for(i=0;i<row1;i++)          //把每個(gè)矩陣都填充為0
 for(j=0;j<row2;j++)
  ai[i][j]=0;
 for(i=0;i<row2;i++)
 for(j=0;j<row3;j++)
  bi[i][j]=0;
 for(i=0;i<row3;i++)
 for(j=0;j<row4;j++)
  ci[i][j]=0;


int count=0;                               //從這里開始,將input中的數(shù)填充到對(duì)應(yīng)矩陣中
while(input.good() && !input.eof())
{
input>>a;
    if(a>=count)    count=a;
  else break;
input>>b;
input>>c;
ai[a][b]=c;
}

input>>b;
input>>c;
bi[a][b]=c;

count=0;
while(input.good() && !input.eof())
{
input>>a;
    if(a>=count)    count=a;
  else break;
input>>b;
input>>c;
bi[a][b]=c;
}


input>>b;
input>>c;
ci[a][b]=c;


count=0;
while(input.good() && !input.eof())
{
input>>a;
    if(a>=count)    count=a;
  else break;
input>>b;
input>>c;
ci[a][b]=c;


int g[30],e=0;                      //最后計(jì)算所求的那個(gè)數(shù)
for(int k=0;k<row3;k++)
{
 for( int i=0;i<row2;i++)
   {
    e=ai[m][i]*bi[i][k];
       g[k]=g[k]+e;
    }
}

int t=0;

for(k=0;k<row3;k++)
{e=g[k]*ci[k][n];
t=t+e;}

output<<t<<endl;
}

 


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多