跟我學java編程—什麼是流程圖?

2020-12-15 米粒教育

流程圖是算法的圖形化描述。俗話說:一張圖勝過千言萬語,用流程圖可以清晰地描述出算法的思路和過程。

● 從生活中認識流程圖

說到流程圖,同學們可能會感到比較陌生和不理解,其實我們在生活中,經常會看到流程圖,也會讀懂流程圖,並能按照流程圖的要求去執行流程圖中的各個步驟。

例如:現在家庭中一般都有電冰箱、洗衣機等家用電器,家用電器包裝箱裡面都會附帶使用說明書,使用說明書包含了產品的使用方法、注意事項以及一般故障排除流程等內容,當家用電器發生故障時,可以先根據使用說明書的故障排除流程進行故障檢查,多半故障原因是因使用不當造成的。下圖是某一洗衣機不啟動的故障原因排除流程圖:

圖 1-4 洗衣機不啟動故障排除流程圖

流程圖明確給出了排除因使用不當原因而造成洗衣機不啟動故障的排查方法和流程,可以參照流程圖給出的步驟,逐步排查洗衣機不能啟動的原因。

按照流程圖給出的步驟:

第一步需要檢查電源是否接通,如果電源有問題,則解決電源問題後,故障排除。如果電源沒有問題,則進入第二個步驟。

第二步需要檢查洗衣機門是否關嚴,如果洗衣機門沒有關嚴,則關嚴洗衣機門,故障排除。如果洗衣機門已關嚴,則進入第三個步驟。

第三步需要檢查洗衣機進水部分,查看水龍頭是否打開,沒有水壓,洗衣機也不能啟動,如果水龍頭沒有打開,則打開水龍頭,故障排除。如果水龍頭已打開且有水壓,則進入第四個步驟。

第四步需要檢查是否按下了啟動鍵並有蜂鳴聲,如果沒有按下啟動鍵,則按下啟動鍵,故障排除。如果已按下啟動鍵且有蜂鳴聲,則需要給售後服務打電話報修。

● 認識流程圖的符號

在第一節什麼是電腦程式和本節都給出了流程圖樣例,看了這麼多流程圖,同學們一定很奇怪,流程圖的橢圓框、菱形框、平行四邊形、長方形以及帶線的箭頭都表示什麼意義?畫流程圖是不是可以用其它形狀畫呢?

其實,流程圖是可以允許用其它圖形符號畫的,只要自己能看明白,能記住流程就行。問題是,如果你希望其他人也能看懂你的流程圖,可能就有點麻煩了,你需要給他們解釋你流程圖中採用的每個圖形所表示的含義是什麼,當需要給多個人解釋時,這時你一定在想,如果這些圖形表示的含義他們都知道該多好,就不用我一個個去講,去溝通了。

因此,規範的流程圖可以幫助人們對流程的統一認識,便於溝通和討論,有助於工作效率的提高。它使用一組預定義的符號來說明如何執行特定任務,這些預先定義的符號已經標準化,從而讓全世界的開發人員都可以採用這些符號而不會引起混淆。表1-1對流程圖中使用的符號進行了匯總。

● 繪製流程圖

在第二節什麼是程序算法中,我們留了一道習題,思考一個計算長方形面積的簡單問題,這個問題我們可以用流程圖來表示。

問題的解決可分為下面幾個步驟:

1) 設置num1和num2兩個變量,用於存儲用戶輸入的長度和寬度,設置result變量用來存儲num1和num2的乘積。變量用於存儲值,程序可修改這個值,後面Java語法會詳細講解;

2) 接受用戶輸入的長度和寬度,並存儲到num1和num2兩個變量;

3) 判斷num1和num2是否大於0,如果大於0,繼續下一個步驟,否則提示用戶重新輸入長度和寬度;

4) 計算num1和num2的乘積,並將乘積結果存儲到result變量;

5) 顯示result變量的值到屏幕。

流程圖可以採用多個工具軟體進行繪製,下面所列是常用的繪製流程圖的工具軟體,建議使用Microsoft Visio軟體繪製,本課程流程圖採用Microsoft Visio軟體繪製,流程圖見圖1-5。繪製步驟參見配套視頻。

(1)Microsoft Visio 2010或更高版本

(2)在線流程圖繪製工具processon.com

(3)PPT、Word等軟體

圖 1-5 計算面積流程圖
圖 1-5 計算面積流程圖

使用圖形表示算法是非常好的思路,繪製流程圖的過程就是整理思路的過程。通過繪製流程圖,可以對算法進行一次完整的梳理,及時發現問題,調整思路。流程圖一定要有開始和結束;菱形框表示判斷,判斷必須有兩個分支,或者滿足條件或者不滿足條件;平行四邊形框表示輸入輸出框,用於輸入數據和輸出數據的處理;矩形框表示處理過程,用於數值計算和業務處理;引線表示流程的方向。

思考一個計算三個數中,求最大值的問題,要解決這個問題,需執行那些步驟?並繪製流程圖。

要求:接受用戶輸入的三個數值,判斷輸入的三個數值不能為零,求出最大值,將計算結果顯示到顯示器上。

相關焦點

  • 跟我學java編程—Java字符串類型
    例如:「I want to learn Java programming」、「我要學Java編程」、「3+5=8」、「abc」等等。四則運算器程序需要存儲用戶輸入的計算表達式,計算表達式由多個字符組合而成,用前面所掌握的Java數據類型,不適合存儲計算表達式。程序需要一個新的類型來存儲計算表達式,這個新的類型就是字符串類型。
  • 跟我學java編程—簡單了解程式語言
    程式語言和人類語言一樣,不是先天就有的,是隨著科技和計算機技術的發展,人們為了更好地控制計算機,幫助人們完成更多任務,提高編程和工作效率而不斷對語言進行創新、完善和改進而來的。最初的程式語言是機器語言,也是計算機唯一能直接讀懂的語言。
  • 跟我學java編程—Java表達式
    2其中,a、b、2為操作數,a和b為變量,2為數值常量,+為運算符② 『a』 + 3其中,『a』為字符常量,參與計算時其數值為該字符所在字符集的編碼值,『a』為ASCII嗎是,表達式『a』 + 3等同於97+3③ 「study」 + 「java
  • 跟我學java編程—Java邏輯運算符
    示例1:邏輯運算符在D盤Java目錄下,新建「LogicSample.java」文件。編譯「LogicSample.java」文件,在命令行窗口輸入「javac LogicSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java LogicSample」運行Java程序,命令行窗口顯示如下信息:
  • 跟我學java編程—Java的格式化輸出
    示例1:一個簡單格式化輸出的例子在D盤Java目錄下,新建「PrintfSample.java」文件。編譯「PrintfSample.java」文件,在命令行窗口輸入「javac PrintfSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java PrintfSample」運行Java程序,命令行窗口顯示如下信息:
  • 跟我學java編程—Java多重if結構
    在編程時遇到此種情況,則可使用多重if結構解決。多重if結構實際上if-else結構的另一種形式;if-else-if,這種形式也稱為階梯式,當有多個分支選擇時,可採用多重if結構。在D盤Java目錄下,新建「MuiltIfSample.java」文件。用記事本打開「MuiltIfSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示多重if結構的使用。
  • 跟我學java編程—理解Java包的概念
    在java中用關鍵字「package」來創建包,HelloWorld項目HelloWorld.java給出了包創建代碼樣例:HelloWorld項目包邏輯結構如下圖所示:對應文件目錄hello下的HelloWorld.java。
  • 日常疑惑:編程學Java還是學C語言?
    這兩門程式語言都是IT行業的寵兒,Java與和C語言各自的技術特點、應用方向上有所不同,沒有伯仲之分,所以這也讓初學者們覺得很難選:應該選擇哪個做為入門語言呢?從學習的難易度上來說,java語言比C語言要簡單。
  • 跟我學java編程—Java嵌套if
    在D盤Java目錄下,新建「EmbedSample.java」文件。用記事本打開「EmbedSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示嵌套if結構的使用。編譯「EmbedSample.java」文件,在命令行窗口輸入「javac EmbedSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java EmbedSample」運行Java程序,命令行窗口顯示如下信息:
  • 跟我學java編程—Java的Scanner類
    用記事本打開「ScannerInitSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示Scanner如何聲明及初始化。語句「import java.util.*;」,用於導入包含Scanner的類庫,Scanner包含在Java 核心類庫util中,要使用Scanner類,必須導入java.util庫,類庫導入關鍵字為import。
  • 跟我學java編程—Java算術運算符
    示例1:加減乘除操作符運算在D盤Java目錄下,新建「OperationSample.java」文件。編譯「OperationSample.java」文件,在命令行窗口輸入「javac OperationSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java OperationSample」運行Java程序,命令行窗口顯示如下信息:
  • 跟我學java編程—深入理解for循環語句
    在D盤Java目錄下,新建「FactorialSample.java」文件。用記事本打開「FactorialSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示for循環語句的使用。
  • 編程入門先學什麼?零經驗的人學編程難嗎
    「編程入門先學什麼」這是所有想了解編程行業都擔心的一個問題,「零經驗的人學編程難嗎」這是所有想進入編程行業都需要關注的一個問題。一聽編程兩個字很多人都在退縮了,有很多的同學是非常的想知道,編程入門先學什麼,零經驗的人學編程難不難,小編整理了相關信息,希望會對大家有所幫助!
  • 跟我學java編程—Java簡單條件結構
    在D盤Java目錄下,新建「ConditionSample1.java」文件。用記事本打開「ConditionSample1.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示if語句的使用。
  • 跟我學java編程—Java條件運算符
    在D盤Java目錄下,新建「TaxSample.java」文件。用記事本打開「TaxSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示條件運算符的使用。編譯「TaxSample.java」文件,在命令行窗口輸入「javac TaxSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java TaxSample」運行Java程序,命令行窗口顯示如下信息:
  • 跟我學java編程—Java while循環語句
    編譯「LoopSample1.java」文件,在命令行窗口輸入「javac LoopSample1.java」並執行命令,編譯通過後,在命令行窗口輸入「java LoopSample1」運行Java程序,命令行窗口顯示如下信息:
  • 零基礎的小白如何學編程
    簡介:本人17歲,現是一名java開發攻城獅,在學習編程的路上很多小夥伴很迷茫,下面給大家聊一下如何才能學好編程呢?俗話說人要有目標,學習編程也是一樣的道理。朝著自己的目標前進,往往會事半功倍。經常遇到很多人問,現在java好找工作嗎?
  • 跟我學java編程—Java的switch結構
    在D盤Java目錄下,新建「CaseSample.java」文件。用記事本打開「CaseSample.java」文件,輸入以下代碼:代碼結構分析程序功能主要是演示switch結構的使用。編譯「CaseSample.java」文件,在命令行窗口輸入「javac CaseSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java CaseSample」運行Java程序,命令行窗口顯示如下信息:
  • 「零基礎學JAVA」基礎篇 第二章 JAVA編程初體驗
    JAVA【零基礎學編程】系列今天給大家帶來基礎篇 第二章 JAVA編程初體驗本節的部分編碼操作需要先安裝JDK開發工具「零基礎學JAVA」工具篇 JDK的安裝教程(WINDOWS版)和環境變量的配置「零基礎學JAVA」工具篇
  • 跟我學java編程—認識java語言的字符類型
    用記事本打開「CharSample.java」文件,輸入以下代碼:編譯「CharSample.java」文件,在命令行窗口輸入「javac CharSample.java」並執行命令,編譯通過後,在命令行窗口輸入「java CharSample」運行Java程序,命令行窗口顯示如下信息: