内容纲要
147讲章节作业-break continue 循环、return
1.
public class HomeWork01{
public static void main(String[] args){
//思路分析:先定义num = 100000;
// if 判断现金是否大于50000 ;如果大于执行{}中的for 循环;当i <= 50000 时跳出循环
// 并执行 if 下面的第二个for 循环每次扣1000;其中定义一个count 表示循环了多少次即经过多少路口。
int num = 100000;
if(num > 50000){
int i = 1;
for(;num >= 50000;num -= num*0.5){
i++;
System.out.println("num >= 50000; i =" + i);
}
for(;num > 1000;num -= 1000){
i++;
System.out.println("total acess i = " + i);
}
}
}
}
这代码有误,得出来的i不知道准确不?
public class HomeWork01{
public static void main(String[] args){
int num = 100000;
int count = 0;
while(num >= 50000){ //第一个循环 ,当num >=5000时,执行这一个循环;
num *= 0.95;
count++;
}
while(num > 1000){
num -= 1000;
count++;
if(num < 1000){
break;
}
}
System.out.println(num);
System.out.println("count = " + count);
}
}
//数据有误,原来是少打了一个0.....对了num最好用double型变量
2.
import java.util.Scanner;
public class Homework02{
public static void main(String[] args){
Scanner myScanner = new Scanner(System.in);
System.out.println("please entre a Integer number:");
int num = myScanner.nextInt();
if(num > 0){
System.out.println("num > 0");
}else if(num < 0){
System.out.println("num < 0");
}else if(num == 0){
System.out.println("num = 0");
}
}
}
3.
/*
公历年份是4的倍数的,一般都是闰年。但公历年份是整百数的,必须是400的倍数才是闰年。
*/
public class Homework03{
public static void main(String[] args){
int year = 2077;
if(year%4 == 0){
if(year%400 == 0){
System.out.println("ok");
}else{
System.out.println("no");
}
}else{
System.out.println("doesnt");
}
}
}
//虽然看起来啰嗦。。但是好歹能实现。。。
4.
下面这一块代码是错的。有问题
import java.util.Scanner;
public class Homework04{
public static void main(String[] args){
//思路分析:输入一个数用String str = myScanner.next();接收然后char n1 = str.charAt(0)代表第一个字符
System.out.println("please enter a hundred num :");
Scanner myScanner = new Scanner(System.in);
String str = myScanner.next(); //接收键盘输入的3位数字.
int n1 = str.charAt(0);
System.out.println("n1 = " + n1);//n1的结果是49.....
int n2 = str.charAt(1);
System.out.println("n2 = " + n2);//n2的结果是53.....
int n3 = str.charAt(2);
System.out.println("n3 = " + n3);//n3的结果是51......
int num = Integer.parseInt(str);
if(num == n1*n1*n1 + n2*n2*n2 + n3*n3*n3){
System.out.println("ok");
}else{
System.out.println("no");
}
}
}
//这代码感觉有问题啊。。。很大的问题啊。
- 请务必注意不能用 char 转int,char 1 的 int 值为 49
上方代码有点小(很大的)问题。。。。。。
public class Homework04{
public static void main(String[] args){
int n = 153;
int n1 = n / 100;
int n2 = n % 100 / 10;
int n3 = n % 10;
if(n == n1*n1*n1 + n2*n2*n2 + n3*n3*n3){
System.out.println("ok");
}else{
System.out.println("no");
}
}
}
5.
...很简单。什么都不输出
6.
public class Homework{
public static void main(String[] args){
//思路分析:先用一个int num接收输入数据;
//1.while循环,先定义一个初值i = 0;i <= 100;i++;
//2.中间用if 语句判断是否i / 5 == 0? //这里可以用三元运算符
//3.再最外层的if 可以控制循环5次
int i = 1;
int count = 0; //注意count的位置不能在while内,不然它会一直初始化
while(i <= 100){
if(i/5 != 0){
count++;
System.out.print(i);
if(count%5 == 0){
System.out.println();
}
}
i++; //注意i++ 的位置,不能在前面。这个实例中必须等循环体跑完了再++
}
System.out.println("done");
}
}
7.
import java.util.Scanner;
public class Homework{
public static void main(String[] args){
Scanner myScanner = new Scanner(System.in);
System.out.println("please enter a charactor :");
char char1 = myScanner.next().charAt(0);
int char3 = Integer.parse(char1);
char char2 = char3 - '32';
System.out.println(char2);
}
}
package main.dayone;
//输出小写的a-z以及大写的Z-A
public class ConverCharactor {
public static void main(String args[]){
char num = 65;
System.out.println("大写字母");
for(;num <= 90;num++){
char c1 = (char)num;
System.out.print(c1);
}
System.out.println();
int num2 = 97;
System.out.println("小写字母");
for(;num2 <=122;num2++){
char c2 = (char)num2;
System.out.print(c2);
}
}
}
//求出1-1/2+1/3-1/4...1/100的和
class Sume{
public static void main(String [] args){
//思路分析。定义一个i=0自增的数,作为分母;
//i+2作为减法实现循环50次达到 -1/2-1/4-1/6-...-1/100; 偶数项
//定义一个j=1自增数,作为分母;
//j+2作为加法实现循环50次达到 1+1/3+1/5+1/7+1/9+...+1/99; 奇数项
double sum = 0;
double i = 2;
while(i <= 100){
sum += (-1/i);
i += 2;
}
double j = 1;
while(j < 100){
sum += 1/j;
j += 2;
}
System.out.println("总和为:" + sum);
}
}
//要注意哈 i 和 j 都要定义为double类型,因为括号中的除法先运算,会导致问题
//
//求1+(1+2) + (1+2+3) + 1+2+3+4 +.....+(1+2+3+4+...+100)的结果
//有100个1相加,有99个2相加,有98个3相加;
//定义一个i 作为100的循环。
//定义一个j 自增 到100 表示有100组数据相累和;
class test{
public static void main(String[] args) {
int i = 4;
int num = i;
int j = 1;
int sum = 0;
for(;j <= num;){
sum += i*j;
i--;
j++;
}
System.out.print(sum);
}
}