Fortran90選擇結構程式程式設計作業

2022-03-09 06:02:16 字數 2330 閱讀 3823

選擇結構程式設計作業

前面學習了比較簡單的順序結構程式設計,在順序結構程式中每條語句都是按書寫順序依次順序執行。使用順序結構編寫程式,只能求解邏輯關係非常簡單的問題,可是許多實際問題,往往具有複雜的邏輯關係,僅使用順序結構難以編寫程式,需要使用更複雜的程式結構,如選擇結構(分支結構)。選擇結構是求解複雜問題和體現程式智慧型化的重要程式結構。

fortran90提供了多種用於實現選擇結構的語句,如:邏輯if語句、塊if語句、多支塊if語句和select語句,其中select語句是fortran90新引入的用於實現塊case結構的語句,它與多支塊if語句在功能上非常相似,但在某些情況下,使用select語句比使用多支塊if語句更簡潔和高效。

本實驗是學習和掌握關係表示式、邏輯表示式、選擇結構語句、選擇結構程式設計方法的一次系統實驗活動。通過本次實驗,能設計和編寫簡單的具有選擇結構的程式,為學習和掌握更複雜的程式結構和程式設計方法奠定基礎。

一. 實驗內容1

1.問題描述

某高校實行學分制,學分制規定:成績大於等於60分可獲得3個學分和3個績點,否則不能獲得學分和績點,同時成績大於等於80分可增加2個績點。輸入學生成績,計算並輸出學生獲得的學分和績點。

編寫程式實現之。

2.問題分析

已知:成績cj,且要求從鍵盤輸入。成績資料型別為整型。

求:學分xf和績點jd。xf和jd資料型別為整型。

是否獲得學分,需通過關係表示式cj≥60判定。是否獲得基礎績點,需通過關係表示式cj≥60判定。是否增加績點,需通過關係表示式cj≥80判定。

不同的成績,需要進行不同的計算,得出不同結果。求解該問題顯然需要使用選擇結構。求解思想和方法可多種多樣。

可將學分和績點分別獨立計算,也可先按關係表示式cj≥60計算學分和基礎績點,然後再通過關係表示式cj≥80增加績點。我們採用後者。

通過分析,設計演算法,繪製框圖,如圖5-1所示。選擇結構為單邊選擇結構。

3.程式編寫

設計和編寫程式如下(不完整,在下劃線空白處填充正確內容):

!班級:???

!姓名:???

!時間:???

!計算學分和績點

program example

integer(1) :: cj,xf=0,jd=0

print*, '請輸入乙個學生成績(整數):'

read*,cj

ifthen

endif

ifjd=

print*, '該學生獲得', xf, '學分。'

print*, '該學生獲得', jd, '績點。'

end4.實驗要求

● 對問題進行詳細分析,理解所給定演算法和程式的基本思想,可自行設計和編寫程式。

● 掌握關係表示式、邏輯表示式、邏輯if語句和塊if語句的語法規則和使用要求。

● 分三次執行程式,分別輸入資料:45、75、95,得到輸出結果。

● 將輸入資料和輸出結果以注釋形式編輯輸入到源程式檔案末尾。

二. 實驗內容2

1. 問題描述

計算下面分段函式的值,編寫程式實現之。

2. 問題分析

對於分段函式的計算,要根據變元不同的取值範圍來確定執行哪一段計算公式。

已知:函式變元x,且要求從鍵盤輸入。變元x資料型別為單精度實型。

求:函式值y。函式值y資料型別為單精度實型。

當滿足條件x<0,則按公式一計算函式值y;當滿足條件x=0,則按公式二計算函式值y;當滿足條件x>0,則按公式三計算函式值y。該問題顯然是乙個判定問題,求解該問題需要使用選擇結構實現。

該問題求解演算法比較簡單,通過問題分析,設計演算法,繪製程式流程圖,如圖5-2所示。選擇結構為雙邊選擇結構。程式可用邏輯if語句、塊if語句或多支塊if語句實現。

3. 程式編寫

設計和編寫程式如下(不完整,在下劃線空白處填充正確內容):

!班級:???

!姓名:???

!時間:???

!計算分段函式的值

program example

real(4) :: x,y

print*, '請輸入x的值:'

read*, x

if (x<0) then

elseifthen

y=2else

end if

print *,'y=', y

end4.實驗要求

● 對問題進行詳細分析,理解所給定演算法和程式的基本思想,完成程式填空,得到正確程式,亦可自行設計和編寫程式。

● 掌握關係表示式、邏輯表示式、邏輯if、基本塊if和多支塊if語句的語法規則和使用要求。

● 三次執行程式,分別輸入資料:-5.8、0、5.8,得到輸出結果。

● 將輸入資料和輸出結果以注釋形式編輯輸入到源程式檔案末尾。

實驗選擇結構程式結構

實驗五 選擇與迴圈結構 一 實驗目的 1 掌握建立和執行m檔案的方法。2 掌握利用if語句實現選擇結構的方法。3 掌握利用switch語句實現多分支選擇結構的方法。4 掌握try語句的使用。5 掌握利用for語句實現迴圈結構的方法。6 掌握利用while語句實現迴圈結構的方法。7 熟悉利用向量運算來...

23程式的選擇結構

一 教學目標 1 知識與技能 理解程式選擇結構中的條件選擇語句的執行流程,掌握條件選擇語句和多種選擇語句的使用方法,能夠編寫簡單的選擇結構的程式,以解決生活中的一些計算問題。2 方法與過程 本節從簡單的問題入手,通過一道求乙個數的絕對值的題目,讓學生明白條件選取擇語句的執行流程及使用方法。通過一道輸...

《程式的選擇結構》教案

2 1節程式的選擇結構 一 教學目標 1 知識與技能 理解程式選擇結構中的條件選擇語句的執行流程,掌握條件選擇語句和多種選擇語句的使用方法,能夠編寫簡單的選擇結構的程式,以解決生活中的一些計算問題。2 方法與過程 本節從簡單的問題入手,通過一道求乙個數的絕對值的題目,讓學生明白條件選取擇語句的執行流...