java第三次作业
- 分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和。
package shangjilianxi;
public class Timu1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum=0;
for (int i = 1; i <=100; i++) {
if(i%3==0)
sum+=i;
}
System.out.println(+sum);
}
}
package diercizuoye;
public class Timu12 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum=0;
int i=1;
while(i<=100) {
if(i%3==0) {
sum+=i;
}
i++;
}
System.out.println(+sum);
}
}
package diercizuoye;
public class Timu12 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum=0;
int i=1;
do {
if (i%3==0) {
sum+=i;
}
i++;
} while (i<=100);
System.out.println(+sum);
}
}
- 输出0-9之间的数,但是不包括5
package shangjilianxi;
public class Timu2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int i=1;
while(i<=8)
{
if(i!=5)
System.out.println(i);
i++;
}
}
}
- 编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5
package shangjilianxi;
import java.util.Scanner;
public class Timu3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
System.out.println("请输入一个数");
int a=input.nextInt();
int sum=1;
while(a>=1)
{
sum*=a;
a--;
}
System.out.println(+sum);
}
}
- 编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束
package diercizuoye;
import java.util.Scanner;
import org.omg.Messaging.SyncScopeHelper;
public class Timua {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
System.out.println("请输入一个成绩:");
int grade=input.nextInt();
while (grade<0||grade>100) {
System.out.println("输入错误,请重新输入");
grade=input.nextInt();
}
System.out.println("输入正确");
}
}
5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年
package diercizuoye;
import java.util.Scanner;
public class Timu5a {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
double x=30000;
double sum=0;
int year=10;
double data=0.06;
for (int i = 1; i <= year; i++) {
sum+=x;
x+=x*data;
}
System.out.println("十年后的总收入是"+sum);
System.out.println("十年后的总年薪是"+x);
}
}
作业
- 打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",
因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)
package diercizuoye;
public class Timu10 {
public static void main(String[] args) {
// TODO Auto-generated method stub
for (int i =100; i <=999; i++) {
if((i/100)*(i/100)*(i/100)+(i%10)*(i%10)*(i%10)+(i/10%10)*(i/10%10)*(i/10%10)==i)
System.out.println("水仙花树是"+i);
}
}
}
- 输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)
package diercizuoye;
import java.util.Scanner;
import java.util.concurrent.SynchronousQueue;
public class Timu2a {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
int x=0;
System.out.println("请输入年份");
int year=input.nextInt();
System.out.println("请输入月份");
int month=input.nextInt();
System.out.println("请输入多少号");
int day=input.nextInt();
if (year/4==0&&year/100!=0||year%400==0) {
x=1;
}
int monthday=0;
int dayday=0;
for (int i = 1; i <=month; i++) {
switch(i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
monthday=31;
break;
case 4:
case 6:
case 11:
monthday=30;
break;
case 2:
if(x==1)
monthday=29;
else if(x==0)
monthday=28;
break;
}
dayday+=monthday;
}
dayday+=day;
System.out.println("这是一年中的第"+dayday+"天");
}
}
3.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)
package diercizuoye;
import java.util.Scanner;
public class Timu11 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
System.out.println("请输入一个四位数");
int a=input.nextInt();
int qian=a/1000;
int bai=a/100%10;
int shi=a/10%10;
int ge=a%10;
System.out.println("原数字是"+a+"调换后"+(ge*1000+shi*100+bai*10+qian));
}
}