第六周作业
上机练习:
1.使用for循环计算1-100的和,除了以3结尾的那些数
package tes;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum=0;
for(int i=1;i<=100;i++){
if(i%10!=3)
sum+=i;
}
System.out.println(sum);
}
}
2.使用二重循环输出以下图形
*
***
*****
*******
*****
****
***
**
*
package tes;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
for (int i = 1; i <= 4; i++) {
for (int l = 1; l <= 4 - i; l++) {
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}System.out.println();
for (int i =1; i <=5; i++) {
for (int j =1; j <=6-i; j++) {
System.out.print("*");
}System.out.println();
}
}
}

3.循环输入学生姓名,直到输入‘Q’程序结束。
String name=input.next();
if(name=='Q'){
}
错误。。字符串判断相等不能用==
if(name.equals("Q")){
}正确
zs
ls
ww
aa
bb
Q
程序结束
package tes;
import java.util.Scanner;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.println("输入学生的姓名");
String name = input.next();
while (name != "Q") {
name = input.next();
if (name.equals("Q"))
break;
}
System.out.println("程序结束");
}
}
4.输入5个学生成绩,求和,当输入不合法的时候,提示输入错误重新输入。
package tes;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.println("输入学生成绩");
int sum = 0;
for (int i = 1; i <= 5; i++) {
int grade = input.nextInt();
while (grade < 0 || grade > 100) {
System.out.println("输入的成绩无效,重新输入");
grade = input.nextInt();
break;
}
sum += grade;
}
System.out.println(sum);
}
}
5.计算 1+1/(1+2) + 1/(1+2+3) +1/(1+2+3+4)+…………+1/(1+2+....+10)
package tes;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
double sum = 0;
double sum1 = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
sum1 = 1 / sum + sum1;
}
System.out.println(sum1);
}
}
作业
1.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对为止。
(判断猜的次数,如果1-3次,提示太棒了 如果5-8次 一般般 如果8次以上 太笨了)
package homework;
import java.util.Random;
import java.util.Scanner;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Random r = new Random();
int x = r.nextInt(100);
Scanner input = new Scanner(System.in);
int n = input.nextInt();
int ci=1;
while (n != x) {
if (n > x) {
System.out.println("大一点");
} else if (n < x) {
System.out.println("小一点");
}
n = input.nextInt();
if (n == x) {
System.out.println("猜对了");
}
ci++;
}
if(ci>0&&ci<=3){
System.out.println("太棒了");
}else if(ci>=4&&ci<=8){
System.out.println("一般般");
}if(ci>8){
System.out.println("太笨了");
}
System.out.println("猜的次数为"+ci);
System.out.println("要猜的数是"+x);
}
}
2.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)
package week;
import java.util.Scanner;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.println("输入一个数");
int num = input.nextInt();
boolean isPrime = true;
if (num == 1) {
isPrime = false;
}
for (int i = 2; i <= num - 1; i++) {
if (num % i == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
System.out.println(num + "是质数");
} else {
System.out.println(num + "不是质数");
}
}
}

3.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……
package week;
import java.util.Scanner;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=1;
int b=1;
int c=0;
for(int i=1;i<=18;i++){
c=a+b;
a=b;
b=c;
}
System.out.println(c);
}
}

浙公网安备 33010602011771号