當前位置:首頁 » 操作系統 » 自然語言描述演算法

自然語言描述演算法

發布時間: 2022-08-27 03:51:38

『壹』 用自然語言和流程圖表示求解下列各問題的演算法

用自然語言描述演算法:(1)輸入N;(2)將1送入I(I←1);(3)重復執行下面的操作,直至I=N;(4)將2送入K(K←2);(5)重復執行下面操作,直到K=I-1;A.將I除以K的商送入J(J←I/K);B.若J是整數,I增加1並轉向(3);C.否則將K增加1並轉向(5);(6)輸出I,I增加1並轉向(3);(7)結束。根據以上演算法,用QBASIC語言可編寫如下程序:10 INPUT N20 FOR I=1 TO N30 FOR K=2 TO I-140 J=I/K50 IF J=INT(J) THEN GOTO 8060 NEXT K70 PRINT I,80 NEXT I90 END程序中使用了GOTO無條件轉移語句,破壞了程序的結構。尋找另一思路:判斷一個自然數M是不是素數,可用2、3、4……去除M,如果這些數都不能整除M,則M是素數。用結構化流程圖N-S圖描述該演算法。INPUT NFOR M=1 TO N STEP 2 K=INT(SQR(M)) I=2 FLAG=1 DO WHILE (I<=K) AND (FLAG=1) IF M MOD I=0 THEN FLAG=0 I=I+1 LOOP IF FLAG=1 THEN PRINT M,NEXT MEND程序中FLAG是一個「標志變數」,FLAG=1表示M未被任何一個整數整除過。如果在某一次循環中,M能被一個整數I整除,則FLAG就置成0。設置FLAG變數的目的主要是為了避免轉移語句的出現。因為如果沒有設置FLAG變數,在循環執行中,某一次M能被I整除,則要麼繼續執行循環,直到內循環全部執行完畢,要麼用轉移語句直接跳出內循環。顯然,前者是毫無效率地浪費時間,而後者又不符合結構化程序設計的要求。

『貳』 這演算法怎麼用自然語言描述。

將十進制數轉換為n(n<=16)進制數演算法:
輸入一個十進制數n_10,輸入進制數n , 建立一個棧,將n_10除n的余數進棧,將n_10除n的商作為n_10,再將n_10除n的余數進棧,將n_10除n的商作為n_10,反復如此,直至商數為0.
最後依次出棧,若站內的值小於10,原樣輸出;若是10,輸出A;若是11,輸出B;若是12,輸出C;若是13,輸出D;若是14,輸出E;若是15,輸出F.

『叄』 用自然語言描述:求兩個正整數a和b最大公約數的演算法

輾轉相除法:設兩數為a、b(b<a),求它們最大公約數(a、b)的步驟如下:用b除a,得a=bq.r 1(0≤r).若r1=0,則(a,b)=b;若r1≠0,則再用r1除b,得b=r1q.r2 (0≤r2).若r2=0,則(a,b)=r1,若r2≠0,則繼續用r2除r1,……如此下去,直到能整除為止.其最後一個非零餘數即為(a,b).
————————————--------------------------------------------
輾轉相除法是利用以下性質來確定兩個正整數 a 和 b 的最大公因子的:1.若 r 是 a ÷ b 的余數,則 gcd(a,b) = gcd(b,r) 2.a 和其倍數之最大公因子為 a.另一種寫法是:1.a ÷ b,令r為所得余數(0≤r<b) 若 r = 0,演算法結束;b 即為答案.2.互換:置 a←b,b←r,並返回第一步.

『肆』 描述演算法的常用方法

1.什麼是演算法
從字面上來說,演算法也就是用於計算的方法。是用來解決某些問題的方法。通過這個方法,可以達到想要的計算結果。它就像我們小時候學些的一些數學公式和解題步驟。
演算法,一般有5個特徵:

有窮性:
演算法的執行步驟、時間、都是有限的。不會無休止的一直執行下去。
確切性:
演算法的每一步都必須有明確的定義和描述。
輸入:
一個演算法應該有相應的輸入條件,就像我們小時候做的應用題,已知什麼什麼。來求某個結果,已知部分便是輸入條件。
輸出:
演算法必須有明確的結果輸出。沒有結果,那這個演算法是沒有任何意義的。
可行性:
演算法的步驟必須是可行的,無法執行的則沒有意義,也解決不了任何問題
2.演算法的分類
按照演算法的應用來分:演算法可以分為基本演算法、幾何演算法、加密/解密演算法、查找演算法、圖標數據分析演算法等。
按照演算法的思路來分:演算法可以分為遞推演算法、遞歸演算法、窮舉演算法、分治演算法等。

下面,我們就來講我們的重點之一:也就是演算法思想:

3.常用演算法思想
窮舉演算法思想;
遞推演算法思想;
遞歸演算法思想;
分治演算法思想;
概率演算法思想;

『伍』 演算法的描述可以採用什麼

如下:

1、用自然語言描述演算法

前面關於歐幾里的演算法以及演算法實例的描述,使用的都是自然語言。自然語言是人們日常所用的語言,如漢語、英語、德語等。使用這些語言不用專門訓練,所描述的演算法也通俗易懂。

2、用流程圖描述演算法

在數學課程里,我們學習了用程序框圖來描述演算法。在程序框圖中流程圖是描述演算法的常用工具由一些圖形符號來表示演算法。

3、用偽代碼描述演算法

偽代碼是用介於自然語言和計算機語言之間的文字和符號來描述演算法的工具。它不用圖形符號,因此,書寫方便、格式緊湊,易於理解,便於向計算機程序設計語言過度。

演算法的特徵

輸入:一個演算法必須有零個或以上輸入量。

輸出:一個演算法應有一個或以上輸出量,輸出量是演算法計算的結果。

明確性:演算法的描述必須無歧義,以保證演算法的實際執行結果是精確地符合要求或期望,通常要求實際運行結果是確定的。

有限性:依據圖靈的定義,一個演算法是能夠被任何圖靈完備系統模擬的一串運算,而圖靈機器只有有限個狀態、有限個輸入符號和有限個轉移函數(指令)。而一些定義更規定演算法必須在有限個步驟內完成任務。

『陸』 演算法的描述方式有幾種分別是什麼

描述演算法的方法有多種,常用的有自然語言、結構化流程圖、偽代碼和PAD圖等,其中最普遍的是流程圖,分思法。

流程圖(Flow Chart)使用圖形表示演算法的思路是一種極好的方法,因為千言萬語不如一張圖。流程圖在匯編語言和早期的BASIC語言環境中得到應用。相關的還有一種PAD圖,對PASCAL或C語言都極適用。

(6)自然語言描述演算法擴展閱讀:

演算法可以宏泛的分為三類:

一、有限的,確定性演算法 這類演算法在有限的一段時間內終止。他們可能要花很長時間來執行指定的任務,但仍將在一定的時間內終止。這類演算法得出的結果常取決於輸入值。

二、有限的,非確定演算法 這類演算法在有限的時間內終止。然而,對於一個(或一些)給定的數值,演算法的結果並不是唯一的或確定的。

三、無限的演算法 是那些由於沒有定義終止定義條件,或定義的條件無法由輸入的數據滿足而不終止運行的演算法。通常,無限演算法的產生是由於未能確定的定義終止條件。

『柒』 下面用自然語言描述的演算法中包含的基本結構有_________。 ①輸入兩個正整數m和n ②r除以n的余數 ③mn ④nr

選擇答案B,用自然語言描述的演算法中包含了順序、分支和循環結構。

題目分析:

首先給定的兩個正整數m和n,求最大公約數一定是從m到n依次進行判斷的,所以體現了順序結構。同時頁利用了循環,所以說涉及了循環結構。同時如果r>0,那麼轉第二和第六條輸出最大公約數體現的是分支結構。

程序的結構化程序設計思想確實使程序執行效率提高。程序的出錯率和維護費用大大減少結構程序設計就是一種進行程序設計的原則和方法。

按照這種原則和方法可設計出結構清晰、容易理解、容易修改、容易驗證的程序結構化程序設計的目標在於使程序具有一個合理結構,以保證和驗證程序的正確性,從而開發出正確、合理的程序。

(7)自然語言描述演算法擴展閱讀:

使用基本結構的優點:

1、整體思路清楚,目標明確。

2、設計工作中階段性非常強,有利於系統開發的總體管理和控制。

3、在系統分析時可以診斷出原系統中存在的問題和結構上的缺陷。

使用基本結構缺點:

1、用戶要求難以在系統分析階段准確定義,致使系統在交付使用時產生許多問題。

2、用系統開發每個階段的成果來進行控制,不能適應事物變化的要求。

3、系統的開發周期長。

自然語言處理發展的特點:

1、基於句法—語義規則的理性主義方法受到質疑,隨著語料庫建設和語料庫語言學的崛起,大規模真實文本的處理成為自然語言處理的主要戰略目標。

2、自然語言處理中越來越多地使用機器自動學習的方法來獲取語言知識。

3、自然語言處理中越來越重視詞彙的作用,出現了強烈的「詞彙主義」的傾向。

『捌』 用自然語言描述演算法直觀,不會產生歧義,容易理解


自然語言
描述演算法直觀,不會產生歧義,容易理解,這是錯誤的。
用自然語言描述演算法比較容易接受,但敘
述冗長,容易產生「歧義」.用流程圖描
述演算法比較清晰、直觀,不容易產生「歧
義」。

『玖』 簡述演算法的各種表示形式

最低0.27元/天開通網路文庫會員,可在文庫查看完整內容>
原發布者:lsqlsy123
演算法的表示方法演算法的常用表示方法有如下三種:1、使用自然語言描述演算法2、使用流程圖描述演算法3、使用偽代碼描述演算法我們來看怎樣使用這3種不同的表示方法去描述解決問題的過程,以求解sum=1+2+3+4+5……+(n-1)+n為例。第1種:使用自然語言描述從1開始的連續n個自然數求和的演算法①確定一個n的值;②假設等號右邊的算式項中的初始值i為1;③假設sum的初始值為0;④如果i≤n時,執行⑤,否則轉出執行⑧;⑤計算sum加上i的值後,重新賦值給sum;⑥計算i加1,然後將值重新賦值給i;⑦轉去執行④;⑧輸出sum的值,演算法結束。從上面的這個描述的求解過程中,我們不難發現,使用自然語言描述演算法的方法雖然比較容易掌握,但是存在著很大的缺陷。例如,當演算法中含有多分支或循環操作時很難表述清楚。另外,使用自然語言描述演算法還很容易造成歧義(稱之為二義性),譬如有這樣一句話——「武松打死老虎」,我們既可以理解為「武松/打死老虎」,又可以理解為「武松/打/死老虎」。自然語言中的語氣和停頓不同,就可能使他人對相同的一句話產生不同的理解。又如「你輸他贏」這句話,使用不同的語氣說,可以產生3種截然不同的意思,同學們不妨試試看。為了解決自然語言描述演算法中存在著可能的二義性,我們提出了第2種描述演算法的方法——流程圖。第2種:使用流程圖描述從1開始的連續n個自然

熱點內容
編譯失敗什麼意思 發布:2025-05-15 11:58:18 瀏覽:86
lcs腳本官網 發布:2025-05-15 11:56:15 瀏覽:87
三國志戰略版打9級礦什麼配置 發布:2025-05-15 11:41:29 瀏覽:952
安卓加速器怎麼關 發布:2025-05-15 11:38:16 瀏覽:464
密碼鎖壞了如何打開 發布:2025-05-15 11:30:19 瀏覽:837
怎樣增加共享文件夾連接數量 發布:2025-05-15 11:24:50 瀏覽:961
安卓如何關閉單應用音量 發布:2025-05-15 11:22:31 瀏覽:351
抖音電腦後台伺服器中斷 發布:2025-05-15 11:11:59 瀏覽:307
sql2008伺服器 發布:2025-05-15 11:03:27 瀏覽:306
我的世界pe伺服器創造 發布:2025-05-15 10:51:17 瀏覽:608