[每日一练]java基础练习3

这几天电脑出问题了,一直上不了网,我开始怀疑是网络故障就等了几天,然而到今晚还是没能连上网。因为要做作业,所以开始检查是为什么出问题。电脑能连上学校wifi但是打不开登录页面。首先怀疑是浏览器问题,换用ie后故障排除显示需要登录,但是仍然没有打开登录界面。于是我看到360浏览器的帮助项,用这里的故障排查发现是浏览器的代理设置突然出错了,改正后马上连上了网。这个事情让我觉得应对电子设备的一些问题时不必很焦虑,一步步找到问题的源头,解决方法自然会出来。


1.输入某年某月某日,判断这一天是这一年的第几天?提示:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。闰年的条件是:年份能被400整除或能被4整除但不能被100整除。


public class firstWork {


public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner a = new Scanner(System.in);
System.out.print("请输入年:");
int year = a.nextInt();
if(year <=0 ){
System.out.print("不存在这样的年,请重新输入:");
year = a.nextInt();
}
System.out.print("月:");
int month = a.nextInt();
if(month <=0 || month >= 13){
System.out.print("不存在这样的月,请重新输入:");
month = a.nextInt();
}
System.out.print("日:");
int day = a.nextInt();
if(day <=0 || day >= 32){
System.out.print("不存在这样的日,请重新输入:");
day = a.nextInt();
}
int out = cal(year,month,day);
System.out.print("这是"+year+"年第"+out+"天");
}
static int cal(int year,int month,int day){
int out = 0;
boolean leap = false;
if(year%400 == 0 || (year%4 == 0 && year%100 != 0)) leap = true;
for(int i = 1;i < month;i++){
if(i == 1){ out = 31;continue;}
if(i == 2){
if(leap == true)
out+=29;
else
out+=28;
continue;
}
if(i == 3){out += 31;continue;}
if(i == 4){out += 30;continue;}
if(i == 5){out += 31;continue;}
if(i == 6){out += 30;continue;}
if(i == 7){out += 31;continue;}
if(i == 8){out += 31;continue;}
if(i == 9){out += 30;continue;}
if(i == 10){out += 31;continue;}
if(i == 11){out += 30;continue;}
if(i == 12){out += 31;continue;}
}
out = out + day;
return out;
}
}

2.输出求100之内的素数。 


public class secWork {


public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print("100以内素数有:");
for(int i = 0;i < 100;i++) {
boolean a = sushu(i);
if(a == true) System.out.print(i+" ");
}
}
static boolean sushu(int in){
boolean out = true;
for(int i = 2;i < in;i++) {
if(in % i == 0) out = false;
}
return out;
}


}

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页