廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 4501 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
y2123280394
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[C/C++][求助] 學校作業~~急~~請用C++寫
宣告int a,b,c
1. 輸入m,n,p<10 ..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容



[ 此文章被y2123280394在2006-06-05 06:51重新編輯 ]


獻花 x0 回到頂端 [樓 主] From:台灣中華電信 | Posted:2006-06-01 04:52 |
pkpk0808 手機
數位造型
個人文章 個人相簿 個人日記 個人地圖
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x1 鮮花 x9
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

C=AB 沒錯吧?
我用C寫的,除了matrix mutiply的演算法要想一下,其他應該都不難
輸出輸入要改再自己改囉~

複製程式
#include <stdio.h>

int main()
{
       int m, n, p;
       int i, j, k;

       int a[10][10], b[10][10], c[10][10];

       /* input m, n, p */
       scanf("%d %d %d", &m, &n, &p);

       /* input A */
       for(i=0; i<m; i++)
              for(j=0; j<n; j++)
                     scanf("%d", &a[i][j]);

       /* input B */
       for(i=0; i<n; i++)
              for(j=0; j<p; j++)
                     scanf("%d", &b[i][j]);

       /* initialize C */
       for(i=0; i<m; i++)
              for(j=0; j<p; j++)
                     c[i][j] = 0;
       
       /* multiple */
       for(i=0; i<m; i++)
              for(j=0; j<p; j++)
                     for(k=0; k<n; k++)
                            c[i][j] = c[i][j] + a[i][k]*b[k][j];

       printf("\n");
       /* display C */
       for(i=0; i<m; i++)
       {
              for(j=0; j<p; j++)
                     printf("%4d", c[i][j]);
              printf("\n");
       }

       return 0;
}




sample input 1:
複製程式
3 2 3

5 1
3 4
2 6

2 2 1
6 4 5



sample output 1:
複製程式
  16  14  10
  30  22  23
  40  28  32



sample input 2:
複製程式
3 3 3

1 2 5
0 1 4
2 1 1

1 3 2
2 3 4
1 5 1



sample output 2:
複製程式
  10  34  15
   6  23   8
   5  14   9


獻花 x0 回到頂端 [1 樓] From:台灣中華電信 | Posted:2006-06-03 17:52 |
y2123280394
個人文章 個人相簿 個人日記 個人地圖
路人甲
級別: 路人甲 該用戶目前不上站
推文 x0 鮮花 x0
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

這是我同學用C++打的

以下是代碼:

#include<iostream.h>
#include<stdio.h>
void main()
{
     int a[10][10],b[10][10],c[10][10]={0},m,n,p,i,j,k;
{
cout<<" m n p"<<endl;
cin>>m>>n>>p;
}
while(!(n<10 && m<10 && p<10))
{
cout<<"請重新輸入 m n p"<<endl;
cin>>m>>n>>p;
}
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
cout<<"a["<<i<<"]"<<"["<<j<<"]=";
cin>>a[j];
}
}

  for(i=1;i<=n;i++)
{
for(j=1;j<=p;j++)
{
cout<<"b["<<i<<"]"<<"["<<j<<"]=";
cin>>b[j];
}
}
for(i=1;i<=m;i++)
{
for(j=1;j<=p;j++)
{
for(k=1;k<=n;k++)
c[j]=c[j]+a[k]+b[k][j];
cout<<"c["<<i<<"]"<<"["<<j<<"]="<<c[j]<<"\t";
}
}
}
執行結果:
以下是代碼:
m n p
2
2
2
a[1][1]=2
a[1][2]=2
a[2][1]=2      
a[2][2]=2
b[1][1]=2              
b[1][2]=2            
b[2][1]=2                  
b[2][2]=2
c[1][1]=8     c[1][2]=8     c[2][1]=8     c[2][2]=8    
Press any key to continue
老師要的是
以下是代碼:
m n p
2
2
2
a[1][1]=2             a[1][2]=2            a[2][1]=2                  a[2][2]=2
b[1][1]=2             b[1][2]=2            b[2][1]=2                  b[2][2]=2
c[1][1]=8             c[1][2]=8           c[2][1]=8                       c[2][2]=8    
Press any key to continue
怎麼改呢?各為高手教教我吧


獻花 x0 回到頂端 [2 樓] From:台灣中華電信 | Posted:2006-06-03 22:33 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.072582 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言