要求用matlab编写一个程序:
任给一个自然数n,写出1到n之间所有能够表示成连续若干个自然数的和的数及其所有的表示方法。
例如6=1+2+3;15=1+2+3+4+5或15=4+5+6或15=7+8等等。
clc
clear all;
close all;
sum=0;
n=input('请输入一个正整数:');
for i=1:1:n-1
sum=0;
for j=i:1:n-1
sum=sum+j;
if(sum==n)
t=i:j %t是连续整数相加等于n的元素
end
end
end
%结果
请输入一个正整数:15
t =
1 2 3 4 5
t =
4 5 6
t =
7 8