复试上机题

Problems A.请写一个程序,判断给定整数序列能否构成等差数列
输入说明:多组数据,每组输入数据由两行构成,第一行只有一个整数n(<1000),表示序列长度(即序列中整数的个数,0表示输入结束),第二行为n个整数,每个整数的取值区间都为[-32768----32767],整数之间以空格或挑格间隔。
输出说明:对于每一组数据,输出一个yes或no,表示该序列能否构成等差数列。
输入样本:
6
23 15 4 18 35 11
3
3 1 2
0
输出样本:
yes
no

Problem B.判断给定正整数是不是“水仙花数”。“水仙花数”是指一个三位数,其各位数字的立方和等于该数,例如153=13+53+33。
输入说明:有多组数据,每组数据为一个正整数n(0<n<65536,占一行),为0时表示输入结束。
输出说明:对于每一组数据,输出一个yes或no(表示该数是否为“水仙花数”)。
输入样本:
153
111
370
422
0
输出样本:
yes
no
yes
no

Problem C. Arnold变换是一种常用的图像置乱技术,Arnold变换的定义如下:
对任意N*N矩阵(所有元素都相同的矩阵除外),设i,j为矩阵元素原始下标,经过Arnold变换后新下标为i',j',且满足下式:
i'=(i+j)mod N
j'=(i+2j)mod N
i,j:0,1,.........N-1
Arnold变换具有周期性,即经过若干次变换后,矩阵回到最初状态,且周期T与N的大小有关。对于任意N>2,TN<=N2/2,请编写程序输出给定的N(2<N<=10)对应的周期TN。
输入说明:有多组数据,每组数据只有一个整数N(2<N<=10,占一行),为0时表示输入结束。
输出说明:对输入的每一N,给出N*N矩阵的Arnold变换的周期T。
输入样本:
3
8
0
输出样本:
4
6

Problem D.对于一个正整数n,如果它的各位之和等于它的所有质因数的各位之和,则该数被称为Smith数。例如,31257=3*3*23*151,31257的各位数字之和为3+1+2+5+7=18,它的所有质因数的各位数字之和为3+3+2+3+1+5+1=18,因此,31257是一个Smith数。编写一个程序判断输入的正整数是不是Smith数。
输入说明:有多组数据,每组数据只有一个整数n(<100000,占一行),为0时表示输入结束。
输出说明:对于每一组数据,输出一个yes或no(表示该数是否为Smith数)。
输入样本:
31257
123
0
输出样本:
yes
no

Problem E. 请写一个程序,计算Rn精确结果(0.0<R<99.999,n是整数且0<n<=25)。
输入说明:有多组数据,每组数据占一行,用一对数据表示,第一个数据是R(含小数点共6位),第二个数据是n,两个数之间有一个空格。
输出说明:对每个输入输出其结果(占一行)
输入样本:
95.123   12
0.4321   20
6.7592   9
98.999   10
1.0100   12
输出样本:
548815620517731830194541.899025343415715973535967221869852721
.00000005148554641076956121994511276767154838481760200726351203835429763013462401
29448126.764121021618164430206909037173276672
90429072743629540498.107596019456651774561044010001
1.126825030131969720661201

转载于:https://www.cnblogs.com/DonePuzzle/archive/2009/03/12/1409287.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值