程式設計想不出演算法怎麼辦?程式設計算術的問題

2024-12-31 10:20:26 字數 3236 閱讀 8937

1樓:猴88714戀慈

首先假設你是計算機專業的大學生,或準備報考計算機專業的高中生。

需要先搞清楚自己是以下哪一類症狀:

1. 對於簡單的數學問題(如樓主提到的找質數、算階乘)想不出思路(想出非最優思路也算合格)。

2. 想得出數學思路,但是不會轉化為**(**冗長也算合格)。

如果是第1類,那麼考慮轉行比較實在吧;

如果是第2類,而且題主學習程式語言已經超過1個月,那麼也請考慮轉行吧;

如果是第2類,但是題主初學程式語言時間<1個月,那麼請繼續堅持,多讀現成**,然後自己編寫。如此1個月仍不樂觀,參考上一條。

對於用程式來解決數學問題,乙個比較有效的方式是從對數學問題的定義入手。

再強調一遍,沒有思路的時候,試著從定義入手。

比如尋找質數的簡單(並不高效)演算法,有如下思維過程:

1. 質數的定義:只能被1和自身整除的大於1的正整數。

2. 從定義提煉判斷條件:

不能被1或自身之外的任何數整除;

大於1的正整數。

3. 用自然語言描述演算法過程:

2是質數;對每乙個大於2的正整數(n)進行如下驗證:用2到n-1除n(實際上到n的正平方根即可),若出現整除,則此數不是質數,否則是質數。

4. 將上述步驟翻譯為偽**或**。

5. 優化演算法(如剔除不必要的除法操作)。

熟練之後對於簡單問題可以在腦中進行迅速的問題定義和條件提煉,並在腦中想出模糊的演算法過程,然後直接寫**。<>

2樓:網友

我覺得題主是思維沒建立起來,可以試試一下幾部:

1,首先想想,你要寫的問題,你不用程式能不能完成,比如說,給你乙個數字,你用筆能不能算出它是否是質數。這一步是基礎,如果這一步有問題,那下面就難了,就好像讓你去教乙個你自己都不會的問題,你怎麼能教會別人。

2,分析自己是怎麼做的,一步一步的總結,你在解決問題的時候都做了什麼事情,遇到什麼問題,它們都是怎麼被你解決的。

3,教給計算機,想象計算機是乙個沒有理解能力的孩子,他只能聽懂步驟,而無法歸納總結,你不舉任何例子,只通過步驟性的描述,計算機明白你的問題。

4敲**。最後,初期你也可以不明白,就是硬做,隨便在網上找什麼入門100題的,就是做,不會就看答案,只要這100題,題主能刷完,並且能自己做出來,不管是背下來還是理解的,你都不會再有問題了。<>

3樓:阿qi棄

在假設題主懂程式語言基礎語法的前提下,我提供以下思路。

1.首先從問題的基本定義入手,嘗試理解人是如何解決它的。

2.拿出筆和草稿紙,嘗試用手工方法一步一步解題(細化到每乙個數值運算),並把步驟都寫下來(不論有多長)

3.分析寫下的步驟,嘗試把每乙個步驟都準確無誤轉換成**,敲進去(最好加上註釋,說明你此時是怎麼想的)

4.寫完後在回過頭讀**,嘗試將重複的**精簡(將重複的計算寫到迴圈裡之類的),5.測試你的**是否對其他值也有效,如果無效請回到第二步。

我就是這樣學演算法的,其實大部分時候做到第三步一半時你就會發現可以精簡**了。

演算法的問題,可以程式設計或者計算數學計算?

4樓:帳號已登出

明確一下題意:

2048個單詞,選擇24個單詞為一組,進行排列。組內有乙個單詞只能出現在第三或第五的位置。一共有多少種排列方案?

這個問題可以拆分為三部分來求解:

第一,2048個單詞,選出24個單位為一組,有多少組方案(設為a)。

a = 2048!/(2048-24)!

第二,24個一組當中,23個進行全排列, 那個特定的單詞可以插入在第三或第五的位置,有2個選擇。組內的排列有多少種方案(設為b)。

b = 23!*2

第三,合併前兩個計算,總的排列方案數為多少(設為c)。

c = a*b = 2048!/(2048-24)!*23!*2

結果是個 79 位的大整數。大約為 。

可以程式設計。不過本題相對簡單,可以直接使用智慧型手機的計算器獲得精確答案。

具體見附圖:

5樓:120多斤的胖冰

很抱歉,這個問題我們無法,對於這個問題我沒有辦法解決不敢給輕易給你方法和建議,請諮詢相關人員給你正確解答,祝您生活愉快。

怎麼學好程式設計,教教我,尤其是演算法

6樓:芮桀府尋桃

這個呀,這個分為兩個階段:

第乙個階段是語言階段,就是熟悉直至掌握一門程式語言,這個要做到相對比較簡單,只要每天編乙個程式(最好程式難度增加),差不多三個月至半年就略有所領悟。除錯水平很重要。但要精通一門語言我覺得也是蠻有難度的。

第二個階段,就是演算法思維,這個階段可以是說永無止境,它會隨著的你數學思維水平的提高而提高,往往乙個好的演算法,背後總有乙個強大的數學背景或證明,但一般人很少做演算法研究的。

所以綜上,如果只想到達第一階段只需多編程式設計,但不只是照的書拍,多看別人的**,激衝世吸取別人的良好**風格比如一些小技巧。至於演算法呀,是個長期的過程,要提高自己的數學思維,多學學數判慶學對自己無害喲。不過現在程式設計,很多資料結構都封裝好了,有些演算法也封裝了,對於一般的程式設計人員明白它們的原理懂得明肢用就夠了。

你可以參加下程式設計大賽,高中有oi,大學有acm,只要能堅持一年的話,當然天長期程式設計和思考,除錯。差不多程式設計就沒什麼問題,轉向做工程也很快。。。

祝你好運噢。。。

程式設計算術的問題

7樓:匿名使用者

a++是先計算後加1,所以悉攜相當於a+a+1+a+2=10+11+12=33(執行後,a=a+1=12+1=13)int c = a++)a++)a++)這句相當於a+a+1+a+2=13+14+15=42(執行後,a=a+1=15+1=16)++a是先加1再計算賀型,所以相當於a+1+a+2+a+3=17+18+19=54(a=19)int b = a) +a) +a)相禪陸猜當於a+1+a+2+a+3=20+21+22=63

8樓:匿名使用者

int a = 10;,a++表示仔滑蔽先使用再累加int c = a++)a++)a++)42=13+14+15,同上,先使用累加;"讓仿\v");;54=17+18+19,先累加,再使用念州int b = a) +a) +a);/63=20+21+22,同上;還有不懂的,請追問。

學習程式設計 如何找到樂趣,程式設計找不到樂趣怎麼辦

沒覺得怎麼枯燥 當年自己能寫出來個hello world 都可以高興半天。編一些遊戲吧,比如猜數字,猜英語單詞一類的。我就是這麼過來的,那時感覺玩自己做的遊戲可有意思了。程式設計找不到樂趣怎麼辦 這個東西還真沒什麼大的樂趣可言,想找到樂趣也只有能你到達一定的高度了,才會有好玩的事情發生,比如寫一寫指...

VC程式設計完全不懂怎麼辦orz

我也開始學的,你可以買個vc書,並且多多練習就可以的。學習嘛vc也沒什麼可怕的 找些資源自己學 入門級 的東西。自己找本書看看第一個例子。再在網上查查這個函式的用法。直接除錯下搞定,如果需要檔案輸入輸出,再找找下面幾章看看檔案的輸入與輸出。lbsjs說的很對 但是如果抄 樓主堅持襲,我的提示 上機才...

雅思寫作想不出好觀點怎麼辦,雅思大作文想不出來觀點怎麼辦

老師 抄 關於寫作沒有 襲觀點,我的建議是多把題目中所給的話題和自己的生活聯絡起來,這樣會得到更多的啟發。在開始寫之前,一定要寫一個essay plan,每個觀點用一句key sentence表達出來,然後緊緊圍繞這個題目,用細節或事例來證明這個觀點很合理。雅思大作文想不出來觀點怎麼辦 多把題目中所...