java 输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有完数(完数就是因子和与它本身相等的数)。

输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有完数(完数就是因子和与它本身相等的数)。
要求定义并调用函数factorsum(number),它的功能是返回number的因子和。例如,factorsum(12)的返回值是16(1+2+3+4+6)。
输出语句:System.out.print(i+" ");
例:括号内是说明
输入:
2 (repeat=2)
20 500 (m=100, n=400)
1 100 (m=1, n=100)
输出:
28 496
1 6 28

import java.util.Scanner;
public class Test50007{
public static void main(String args[]){
int ri,repeat;
int i, m, n;
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1;ri<=repeat;ri++){
m=in.nextInt();
n=in.nextInt();
/*---------*/
System.out.println();
}
}
/*---------*/
}

1处填
for(i=m; i<=n;i++){
if(i == factorsum(i)){
System.out.print(i+" ");
}
}

2处填
public static int factorsum(int n){
int sum = 0;
if(n==1){
return 1;
}
for(int i=1;i<n;i++){
if(n%i==0){
sum += i;
}
}
return sum;
}
温馨提示:内容为网友见解,仅供参考
无其他回答

急!!输入2个正整数m和n(m>=1,n<=1000),输出m~n之间的所有完数,完数就是...
int factorsum(int number); int m,n,a; \/\/这两句去掉,没有意义 \/\/m>=1; \/\/n<=1000; scanf("%d,%d",&m,&n); for (a=m;a<=n;a++) { if (a==factorsum(a))\/\/判断是否相等应该是==if (a=factorsum(a)) printf("%d ",a);\/\/输出元素间加个空格分开printf("%d",a); }} int fact...

...输入2个正整数m和n(m>=1,n<=1000),输出m~n之间的所有完数
include <stdio.h>int factorsum(int n){int sum,i;for(i=1,sum=0;i<n;++i){if(n%i==0)sum+=i;}return sum;}int main(void){int m,n;while(scanf("%d , %d",&m,&n)==2){for(;m<n;++m){if(m==factorsum(m)){printf("%d ",m);}}printf("\\n");}return 0;} ...

输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数...
import java.util.Scanner;public class Test { public static void main(String args[]) { int ri, repeat;int i, m, n;long f;Scanner in = new Scanner(System.in);repeat = in.nextInt();for (ri = 1; ri <= repeat; ri++) { m = in.nextInt();n = in.nextInt();for ...

输入2 个正整数m 和n(m≥1,n≤1 000),输出m ~n 之间的所有完数
void main(){ int i;long wanshu=0;int n,x,y;cout<<"输入n:"<<endl;cin>>n;cout<<"输入x:"<<endl;cin>>x;cout<<"输入y:"<<endl;cin>>y;for(i=1;i<=n;i+=2){ wanshu+=pow(i,3);if(wanshu==1){ continue;} if(wanshu>=x&&wanshu<=y)cout<<"n以内的完数:"<...

java程序设计:输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有...
public static void main(String args[]) { int ri,repeat; int i, m, n; long f; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++) { m=in.nextInt(); n=in.nextInt(); for(i=1;;i++) { if...

...输入2个正整数m和n(m≥1,n≤10 000),输出m ~n 之间所有的Fibonacci...
include<stdio.h> int main(void){ int m,n,k,i;int fib(int i);printf("Input m: ");scanf("%d",&m);printf("Input n: ");scanf("%d",&n);for(k=m;k<=n;k++)for(i=1;fib(i)<=n;i++){ if(k==fib(i))printf("%.d ",k);} return 0;} int fib(int i){...

...repeat 次下列运算: 输入两个正整数 m 和 n(1<=m, n<=1000...
int main(void){ int factor, m, n, number, sum;int repeat, ri;int i;scanf("%d",&repeat);for(ri = 1; ri <= repeat; ri++){ scanf("%d%d", &m, &n);printf("result:\\n");for(number=m;number<=n;number++){ sum=1;for(i=2;i<number;i++)if(number%i==0) sum...

C语言:输出m ~n 之间所有的Fibonacci 数
输入2个正整数m和n(m≥1,n≤10 000),输出m ~n 之间所有的Fibonacci数。Fibonacci数列(第一项起):1,1,2,3,5,8,13,21,…。定义并调用函数fib(n),它的功能是返回第n项Fibonacci 数。例如,fib(7)的返回值是13。【输入形式】从... 展开 峰★印 ...

1、 输入2个正整数m和n(1<=m,n<=6),然后输入该m行n列矩阵a中的元素,分 ...
1、 输入2个正整数m和n(1<=m,n<=6),然后输入该m行n列矩阵a中的元素,分别求出各行元素之和,并输出。 a306200119 | 浏览7358 次 |举报 我有更好的答案推荐于2017-12-16 09:33:15 最佳答案 #include <stdio.h>int main(){ int m,n; int i,j,s,d; printf("请输入m:"); scanf("%d",&...

free pascal定义一个函数,输出2到n之间的全部完全数(一行一个数) 完全...
begin if n=2 then begin wanquanshu:=false;exit;end;{2比较特殊,需要单独处理} y:=true;for i:=2 to trunc(sqrt(n)) do {枚举约数} if n mod i=0 then begin y:=false;break;{如果有一个非1或其本身的数是约数,则该数不为素数,跳出循环} end;if y=true then begin wan...

相似回答