§1.1.1 算法的概念
下面設計一個求一般的一元二次方程ax2+bx+c=0的根的算法如下:第一步:計算△=b2+4ac;第二步:若△<0;第三步:輸出方程無實根;第四步:若△≥0;第五步:計算并輸出方程根x1,2=。練習2、求1×3×5×7×9×11的值,寫出其算法。第一步,先求1×3,得到結果3;
第二步,將第一步所得結果3再乘以5,得到結果15;
第三步,再將15乘以7,得到結果105;
第四步,再將105乘以9,得到945;
第五步,再將945乘以11,得到10395,即是最后結果。評析:求解某個問題的算法不同于求解一個具體問題的方法,算法必須能夠解決一類問題,并且能夠重復使用;算法過程要能一步一步地執行,每一步操作必須確切,能在有限步后得出結果。練習3、有藍和黑兩個墨水瓶,但現在卻錯把藍墨水裝在了黑墨水瓶中,黑墨水錯裝在了藍墨水瓶中,要求將其互換,請你設計算法解決這一問題。分析:由于兩個墨水瓶中的墨水不能直接交換,故可以考慮通過引入第三個空墨水瓶的辦法進行交換。解:算法步驟如下:第一步:取一只空的墨水瓶,設其為白色;第二步:將黑墨水瓶中的藍墨水裝入白瓶中;第三步:將藍墨水瓶中的黑墨水裝入黑瓶中;第四步:將白瓶中的藍墨水裝入藍瓶中;第五步:交換結束。評析:對于這種非數值性問題的算法設計問題,應當首先建立過程模型,根據過程設計步驟,完成算法。小結1、算法概念和算法的基本思想(1)算法與一般意義上具體問題的解法的聯系與區別;(2)算法的五個特征。2、利用算法的思想和方法解決實際問題,能寫出一此簡單問題的算法3、兩類算法問題(1)數值性計算問題,如:解方程(或方程組),解不等式(或不等式組),套用公式判斷性的問題,累加,累乘等一類問題的算法描述,可通過相應的數學模型借助一般數學計算方法,分解成清晰的步驟,使之條理化即可。(2)非數值性計算問題,如:排序、查找、變量變換、文字處理等需先建立過程模型,通過模型進行算法設計與描述。4、利用ti-voyage200圖形計算器演示時,開始學生看,想,探究,然后模范、創新。圖形計算器為學生創建一個自我發揮的平臺。作業: (課本第4頁練習)1、任意給定一個正實數,設計一個算法求以這個數為半徑的圓的面積.解:算法步驟:第一步:輸入任意一個正實數r;第二步:計算以r為半徑的圓的面積: ;第三步:輸出圓的面積s.2、任意給定一個大于1的正整數n,設計一個算法求出n的所有因數.解:算法步驟:第一步:依次以2~(n-1)為除數去除n,檢查余數是否為0.若是,則是n的因數;若不是,則不是n的因數;第二步:在n的因數中加入1和n;第三步:輸出n的所有因數.運行結果:(即32的公因數為1,2,4,8,16,32)