當前位置:編程學習大全網 - 編程軟體 - Matlab程序驗證壹個正整數是否可以表示為幾個連續正整數之和。

Matlab程序驗證壹個正整數是否可以表示為幾個連續正整數之和。

點數太少了。壹般來說,復雜度是指數級增長的,1000需要很長時間。

加到100積分,靠花瓶。

對於q=2:100

對於n=1:50

Sol=solve(['m*(m+1)/2-',num2str(n*(n+1)/2),' = ',num2 str(q)]);

Sol = double(Sol);

a = find(Sol & gt;0);

so = Sol(a);

if(fix(so)= = so)amp;& amp((n+1)~=so)

disp([num2str(q),' = ',num2str(n+1),'+.....+',num 2 str(so)];

打破;

結束

結束

結束

%結果如下:

%的規律有很多,其中大素數只能分解成兩個數之和;屬於2的冪的數不能被表示。

%其他數的分解這個程序遵循最大數分解的原則。

擴展數據:

ⅰ1是正整數;

ⅱ每壹個正定的正整數A都有壹個正定的後繼A’,A’也是正整數(數A的後繼A’是緊接在這個數之後的整數(a+1)。比如1' = 2,2'=3等等。);

Iii如果b和c是正整數的後繼,那麽b?=?c;

ⅳ1不是任何正整數的後繼者;

ⅴ套s?N*,並滿足兩個條件(I)1∈s;(ii)若n∈S,則N’∈S .則S是所有正整數的集合,即S=N*。這個公理也叫歸納公理,保證了數學歸納的正確性。

百度百科-正整數

  • 上一篇:橢圓公式總結是什麽?
  • 下一篇:大蝦來,幫小弟解決個c的問題。
  • copyright 2024編程學習大全網