您的位置:首页 > 编程语言 > Java开发

《java作业》

2016-03-21 13:42 786 查看
/*
一、计算一个3位数的各位数字。
输入一个3位数n,分别求出 n 的个位数字(c)、十位数字(b)和百位数字(a)的值。

输入输出示例:
输入:
152
输出:
number152:digit1=2,digit2=5,digit3=1
*/

import java.util.Scanner;
class Test_1
{
public static void main(String[] args)
{
int a,b,c,n;
Scanner in = new Scanner(System.in);
n = in.nextInt();

c = n/100;

b = (n%100)/10;

a = (n%100)%10;

System.out.println("number"+n+":digit1="+c+",digit2="+b+",digit3="+a);
}
}

/*
二、数字加密。
输入1个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将第1位和第3位上的数字互换,第2位和第4位上的数字互换,组成加密后的新数。
例:括号内是说明
输入
1257
输出
The encrypted number is 4601(每一位上的数字加9除以10取余后,得0146,交换后得到4601)
*/
import java.util.Scanner;
class Test_3
{
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
int number, digit1, digit2, digit3, digit4, newnum;
number=in.nextInt();

digit1 = ((number/1000)+9)%10;
digit2 = ((number%1000)/100+9)%10;
digit3 = ((number%1000)%100/10+9)%10;
digit4 = ((number%1000)%100%10+9)%10;

int t = digit1;
digit1 = digit3;
digit3 = t;

int x = digit2;
digit2 = digit4;
digit4 = x;

newnum = digit1*1000+digit2*100+digit3*10+digit4;

System.out.println("The encrypted number is "+newnum);
}
}

/*
三、求n!
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
读入1 个正整数 n(n<=50),计算并输出n! 。
例:括号内是说明
输入
3   (repeat=2)
1
10
5
输出
1.0
3628800.0
120.0

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

/*
四、求1+1/3+1/5+1/7+……
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
读入1 个正整数 n(n<=100),计算并输出1+1/3+1/5+1/7+……的前n项和。
例:括号内是说明
输入
2   (repeat=2)
10
3
输出
2.133256
1.5333334

*/
import java.util.Scanner;
class Test_6
{
public static void main(String[] args)
{
int ri,repeat;
int i,n,temp;
float sum;
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for(ri=1;ri<=repeat;ri++)
{
n = in.nextInt();
temp = 1;
sum = 0;
for(i=1;i<=n;i++)
{
sum+=1.0f/temp;
temp+=2;
}
System.out.println(sum);
}
}
}

/*
五、求各位数字的立方和等于它本身的数。
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
输入2 个正整数m和n(1<=m,n<=1000),输出m 和n之间所有满足各位数字的立方和等于它本身的数。
输出语句:System.out.println(i);

例:括号内是说明
输入:
2    (repeat=2)
100 400  (m=100, n=400)
1 100    (m=1, n=100)
输出:
153 (1*1*1+5*5*5+3*3*3=153)
370 (3*3*3+7*7*7=370)
371 (3*3*3+7*7*7+1*1*1=371)
1

*/
import java.util.Scanner;
class  Test_7
{
public static void main(String[] args)
{
int ri,repeat;
int i,digit,m,n,number,sum;
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for(ri=1;ri<=repeat;ri++)
{
m = in.nextInt();
n = in.nextInt();
System.out.println();
for(i=m;i<=n;i++)
{
number = i;
sum = 0;
while(number>0)
{
digit = number%10;
sum = sum+digit*digit*digit;
number = number/10;    //丢掉个位数.
}
if(i==sum)
System.out.println(i);
}
System.out.println();
}
}
}

/*
六、求a+aa+aaa+aa…a
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
输入2个正整数a和n, 求a+aa+aaa+aa…a(n个a)之和。

例:括号内是说明
输入
2  (repeat=2)
2 3 (a=2, n=3)
8 5 (a=8, n=5)
输出
246   (2+22+222)
98760 (8+88+888+8888+88888)
*/
import java.util.Scanner;
class Test_8
{
public static void main(String[] args)
{
int ri, repeat;
int i, n, a, sn, tn;
Scanner in=new Scanner(System.in);
repeat=in.nextInt();
for(ri=1; ri<=repeat; ri++)
{
a=in.nextInt();
n=in.nextInt();
sn = 0;
tn = 0;
for(i=0;i<n;i++)
{
sn = sn*10+a;
tn = tn+sn;
}
System.out.println(tn);
}

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: