用模拟精灵解百度编程大赛试题

用模拟精灵解百度编程大赛试题,第1张

用模拟精灵解百度编程大赛试题,第2张

原题需要C,但是用模拟向导更快,但是没有经过仔细的分析和优化。

第一题是连续正整数(10分)

题目:正整数可能表示为n(n> =2)个连续正整数之和,如:
15 = 1 2 3 4 5
15 = 4 5 6
15 = 7 8。

请写一个程序,根据输入的任意正整数,找出所有满足这个要求的连续正整数序列。

Input:正整数,作为命令行参数提供给程序。

输出数据:所有符合标题描述的正整数序列都打印在标准输出上,每行一个序列,每个序列从序列的最小正整数到最大正整数打印。结果是,如果有多个序列,按照每个序列的最小正整数从小到大打印每个序列。另外,序列不允许重复,序列中的整数用空格隔开。如果没有符合要求的序列,则输出“NONE”。

例如,对于15,输出结果是:
1 2 3 4 5
4 5 6
7 8。

对于16,输出结果是:
NONE

评分标准:程序输出结果是否正确。

打印(字符串);

while(nStop())do
delay(100)

打印(“按”.._SHKEY.."然后输入一个数字退出程序")
print("请输入一个正整数:")

ns = io . read();

While (n stop()和(not to number (ns)) do
print("请输入有效整数");
ns = io . read();
结束

n =到数字(ns)

打印("")

对于i=1,n/2 1,1 do
局部k = 0;
局部J2 = 0;
对于j =i,n/2 1,1 do
k = k j;
J2 = j;
if(k = = n)then break end;
end;


if(k = = n)then
local out = n.." = "..我;
for y=i 1,j2,1 do
out = out.." "..y
end;
打印(输出);
end;
end;

打印("")

结束;

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 用模拟精灵解百度编程大赛试题

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情