• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      連線法巧解二維矩陣轉(zhuǎn)換

      2016-11-16 03:50:36侯娟
      新課程(下) 2016年9期
      關(guān)鍵詞:行列數(shù)組連線

      侯娟

      (江蘇南京曉莊學院附屬中學)

      連線法巧解二維矩陣轉(zhuǎn)換

      侯娟

      (江蘇南京曉莊學院附屬中學)

      二維矩陣轉(zhuǎn)換是C語言數(shù)組應用的重要組成部分,特別是行列互換。嘗試了一種新的方法,試圖降低矩陣轉(zhuǎn)換的難度。教學效果表明,新方法對學生學習二維矩陣的轉(zhuǎn)換有一定的幫助。

      C語言;數(shù)組;矩陣轉(zhuǎn)換

      數(shù)組的應用除了排序之外,還經(jīng)常用在二維矩陣的轉(zhuǎn)換上。但是對于如何正確地轉(zhuǎn)換二維矩陣,卻很少有教材專門闡述。在C語言的教學中如何層次清晰、變抽象為具體地將二維矩陣的轉(zhuǎn)換方法教授給學生,值得我們深思。

      一、二維矩陣旋轉(zhuǎn)的分類

      二維矩陣轉(zhuǎn)換的類型根據(jù)旋轉(zhuǎn)時行列的關(guān)系主要分為兩大類:90度旋轉(zhuǎn)和180度旋轉(zhuǎn)。這兩種又可以進一步劃分出順時針和逆時針兩種。90度轉(zhuǎn)換涉及旋轉(zhuǎn)后的行i后與旋轉(zhuǎn)前列j前的關(guān)系,以及旋轉(zhuǎn)后的列j后和旋轉(zhuǎn)前的行i前的關(guān)系。而180度旋轉(zhuǎn)則是旋轉(zhuǎn)后的行i后與旋轉(zhuǎn)前的行i前的關(guān)系,以及旋轉(zhuǎn)后的列j后與旋轉(zhuǎn)前的列j前的關(guān)系。

      二、連線法概述

      1.連線法簡述

      連線法就是將矩陣旋轉(zhuǎn)前后的行列關(guān)系用線連起來,在此基礎上得出i后與j前或i前的關(guān)系表達式,以及j后與i前或j前的關(guān)系表達式,然后根據(jù)表達式確定內(nèi)外循環(huán)的行列數(shù),并實行矩陣轉(zhuǎn)換。

      2.連線法解題步驟

      (1)畫出旋轉(zhuǎn)前的矩陣圖和旋轉(zhuǎn)后的矩陣圖。(2)分別標出行列號。(3)根據(jù)矩陣的內(nèi)容用連線的方法找出旋轉(zhuǎn)前后的行列關(guān)系。(4)并列出關(guān)系表達式。(5)根據(jù)表達式等號右邊的對象確定內(nèi)外循環(huán)的行列數(shù)。(6)寫矩陣轉(zhuǎn)換的表達式。

      概括起來講即:一畫,二標,三連線,四列表達式,五定行列數(shù),六轉(zhuǎn)換。

      三、實例講解

      有一個整形的二維矩陣,請將其順時針旋轉(zhuǎn)90度后輸出,如圖1。

      圖1

      圖2 旋轉(zhuǎn)前矩陣圖

      圖3 旋轉(zhuǎn)后矩陣圖

      文章后面所用到的i,j為整型變量,數(shù)組a[3][4]和數(shù)組b[4][3]也為整型數(shù)組。

      1.一畫——畫出旋轉(zhuǎn)前的矩陣圖和旋轉(zhuǎn)后的矩陣圖。

      2.二標——分別標出旋轉(zhuǎn)前后的行列號,如如圖2和3。

      3.三連線——根據(jù)矩陣的內(nèi)容用連線的方法找出旋轉(zhuǎn)前后的行列關(guān)系。

      這里的根據(jù)矩陣內(nèi)容主要是選擇確定旋轉(zhuǎn)前后的矩陣中的元素,目的是分析其旋轉(zhuǎn)前后的行列關(guān)系。在以前的教學中筆者都是讓學生隨意選擇矩陣中的元素,主要是強調(diào)通用性,但是這樣做帶來很多麻煩,特別容易出錯。為此在連線法中筆者選擇旋轉(zhuǎn)后矩陣的0行0列元素作為尋找旋轉(zhuǎn)前后矩陣行列關(guān)系的依據(jù)。另外對于90度旋轉(zhuǎn)的題目,我們知道矩陣旋轉(zhuǎn)前的行列數(shù)目發(fā)生了變化,旋轉(zhuǎn)后的行i后與旋轉(zhuǎn)前列j前的關(guān)系,以及旋轉(zhuǎn)后的列j后和旋轉(zhuǎn)前的行i前的關(guān)系。

      具體過程:

      (1)找出0列上的元素i后與j前的值,并連線

      元素31:i后=0,j前=0;元素32:i后=1,j前=1;

      元素33:i后=2,j前=2;元素34:i后=3,j前=3;

      (2)找出0行上的元素j后與i前的值,并連線

      元素31:j后=0,i前=2;元素21:j后=1,i前=1;元素11:j后=2,i前=0;旋轉(zhuǎn)后矩陣圖

      圖4

      4.列出關(guān)系表達式。

      5.五定行列數(shù)——根據(jù)表達式等號右邊的對象確定轉(zhuǎn)換時內(nèi)外循環(huán)的行列數(shù)。

      在1式中等號右邊是關(guān)于矩陣旋轉(zhuǎn)前的式子,因此使用旋轉(zhuǎn)前矩陣的行列值,即三行四列:for(i=0;i<3;i++)

      for(j=0;j<4;j++)

      在2式中等號右邊是關(guān)于矩陣旋轉(zhuǎn)后的式子,因此使用旋轉(zhuǎn)后矩陣的行列值,即四行三列:for(i=0;i<4;i++)

      for(j=0;j<3;j++)

      6.寫矩陣轉(zhuǎn)換的表達式。

      使用1式和2式不僅影響轉(zhuǎn)換時內(nèi)外循環(huán)的行列數(shù),還直接影響到矩陣轉(zhuǎn)換的表達式。

      (1)使用等式1的情況

      如使用1式,首先要使用1式轉(zhuǎn)換時內(nèi)外循環(huán)的行列數(shù);

      for(i=0;i<3;i++)

      for(j=0;j<4;j++)

      其次還需注意矩陣轉(zhuǎn)換表達式左邊必須寫成b[j][i]的形式,而右邊主要是把數(shù)組a中的a[j后的值代入][i后的值代入]]元素賦值給b[j][i],即b[j][i]=a[j前][2-i前],最后將下標去掉即可。

      for(i=0;i<3;i++)

      for(j=0;j<4;j++)

      b[j][i]=a[j][2-i];

      (2)使用等式2的情況

      如使用2式,首先要使用2式轉(zhuǎn)換時內(nèi)外循環(huán)的行列數(shù);

      for(i=0;i<4;i++)

      for(j=0;j<3;j++)

      其次還需注意矩陣轉(zhuǎn)換表達式左邊必須寫成b[i][j]的形式,而右邊主要是把數(shù)組a中的a[i前的值代入][j前的值代入]]元素賦值給b[i][j],即b[j][i]=a[2-j后][i后],最后將下標去掉即可。

      for(i=0;i<4;i++)

      for(j=0;j<3;j++)

      b[i][j]=a[2-j][i];

      四、連線法總結(jié)

      連線雖然是簡單的小步驟,但連線起到的直觀效果是很明顯的,學生通過連線的過程不僅了解了矩陣轉(zhuǎn)換的過程,更有利于總結(jié)和歸納出矩陣轉(zhuǎn)換前后的行列關(guān)系,而且根據(jù)表達式等號右邊的對象可以確定循環(huán)的行列數(shù),這對于后期的編程非常有幫助。

      [1]馬志大.矩陣的行列調(diào)整與矩陣方程的求解[J].北京市經(jīng)濟管理干部學院學報,2004.

      [2]楊林發(fā).緊扣內(nèi)存變量關(guān)系巧解矩陣類問題[J].電腦編程技巧與維護,2012.

      ·編輯段麗君

      猜你喜歡
      行列數(shù)組連線
      JAVA稀疏矩陣算法
      電腦報(2022年13期)2022-04-12 00:32:38
      用“行列排除法”解四宮數(shù)獨(2)
      用“行列排除法”解四宮數(shù)獨(1)
      快樂連線
      快樂語文(2021年27期)2021-11-24 01:29:24
      快樂連線
      快樂語文(2021年11期)2021-07-20 07:41:48
      快樂連線
      快樂語文(2020年36期)2021-01-14 01:10:44
      JAVA玩轉(zhuǎn)數(shù)學之二維數(shù)組排序
      電腦報(2020年24期)2020-07-15 06:12:41
      快樂連線
      快樂語文(2019年12期)2019-06-12 08:41:56
      單層小波分解下圖像行列壓縮感知選擇算法
      尋找勾股數(shù)組的歷程
      镇康县| 双鸭山市| 赤壁市| 酒泉市| 木里| 宝丰县| 安国市| 彭州市| 邳州市| 清水河县| 双峰县| 平山县| 永兴县| 张家港市| 广南县| 开阳县| 河北省| 淮阳县| 拉萨市| 成武县| 霍邱县| 天津市| 全椒县| 和田市| 尼木县| 昆山市| 临夏县| 常宁市| 贺兰县| 马鞍山市| 左贡县| 普兰县| 防城港市| 唐海县| 宿迁市| 双辽市| 正阳县| 昌都县| 确山县| 乌拉特前旗| 上思县|