class Demo1
{
public static void main(String[] args)
{
//求1--10的累加和
int sum =0;
for(int i=1;i<=10;i++)
{
sum = sum+i;
}
System.out.println("sum="+sum);
/*
sum = sum+1;
sum = sum +2;
sum = sum+3;
*/
}
}
class Demo2
{
public static void main(String[] args)
{
//统计1--100之间可以被7整除的数的个数
int count =0;
for(int i=1;i<=100;i++)
{
if(i%7==0)
count++;
}
System.out.println("count="+count);
}
}
class Demo3
{
public static void main(String[] args)
{
//3000米长的绳子,每天减一半。问多少天这个绳子会小于5米?不考虑小数。
int day =0;
for(int i=3000;i>=5;i/=2)
{
day++;
}
System.out.println("day="+day);
}
}
import java.util.Scanner;
import java.util.Random;
class Demo4
{
public static void main(String[] args)
{
//产生一个1--10之间的随机数,用户去猜这个数,直到猜中为止
Scanner sc = new Scanner(System.in);
//产生随机数
Random random = new Random();
int r = random.nextInt(10)+1;
int guess;
do{
System.out.println("猜一个1---10 之间的数");
guess = sc.nextInt();
if(r>guess)
System.out.println("偏小了");
if(r<guess)
System.out.println("偏大了");
}while(r!=guess);
System.out.println("恭喜!!");
}
}
import java.util.Scanner;
class Demo5
{
public static void main(String[] args)
{
//用户从键盘输入一个数,求该数的阶乘,可以重复该过程
// 5!= 5*4*3*2*1
Scanner sc = new Scanner(System.in);
int jieCheng=1,flag =0;
do{
System.out.println("输入一个数");
int num = sc.nextInt();
jieCheng=1;
for(int i=num;i>=1;i--)
{
jieCheng = jieCheng*i;
}
System.out.println("jieCheng="+jieCheng);
System.out.println("是否继续(1/0)?");
flag = sc.nextInt();
}while(flag==1);
}
}
import java.util.Scanner;
class Demo6
{
public static void main(String[] args)
{
//计算正整数各位数的和 1234 10
Scanner sc = new Scanner(System.in);
System.out.println("输入一个数");
int num = sc.nextInt();
int sum = 0;
while(num!=0)
{
sum = sum + num%10;
num = num/10;
}
System.out.println("sum="+sum);
/*
sum = sum + num%10;
num = num/10;
sum = sum + num%10;
num = num/10;
sum = sum + num%10;
num = num/10;
sum = sum + num%10;
num = num/10;
*/
}
}
class Demo7
{
public static void main(String[] args)
{
/*
**********
**********
**********
*/
for(int i=1;i<=3;i++)
{
for(int i=1;i<=10;i++)
System.out.print("*");
}
}
}
/*
*
**
***
****
*****
1
12
123
1234
12345
九九乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
*/
class Demo8
{
public static void main(String[] args)
{
for(int i=1;i<=5;i++)
{
for(int j=1;j<=i;j++)
System.out.print("*");
System.out.println();
}
/*
1
12
123
1234
12345
*/
for(int i=1;i<=5;i++)
{
for(int j=1;j<=i;j++)
System.out.print(j);
System.out.println();
}
/*
九九乘法表
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
*/
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
System.out.print(j+"*"+i+"="+j*i+" ");
System.out.println();
}
}
}
/*
打印一个实心菱形图案
*
***
*****
*******
*****
***
*
*/
class Demo9
{
public static void main(String[] args)
{
for(int i=1;i<=4;i++)
{
for(int j=1;j<=4-i;j++)
System.out.print(" ");
for(int j=1;j<=2*i-1;j++)
System.out.print("*");
System.out.println();
}
for(int i=1;i<=3;i++)
{
for(int j=1;j<=i;j++)
System.out.print(" ");
for(int j=1;j<=7-2*i;j++)
System.out.print("*");
System.out.println();
}
}
}
/*
3.打印一个空心菱形图案
问题:用*号打印一个如下的空心菱形图案 :
*
* *
* *
* *
* *
* *
*
*/
class Demo10
{
public static void main(String[] args)
{
for(int i=1;i<=4;i++)
{
for(int j=1;j<=4-i;j++)
System.out.print(" ");
for(int j=1;j<=2*i-1;j++)
{
if(j==1 || j==2*i-1)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
}
for(int i=1;i<=3;i++)
{
for(int j=1;j<=i;j++)
System.out.print(" ");
for(int j=1;j<=7-2*i;j++)
{
if(j==1 || j==7-2*i)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
}
}
}
/*
break:结束循环
continue: 结束某一次循环
*/
class Demo11
{
public static void main(String[] args)
{
for(int i=1;i<=5;i++)
{
if(i==3)
break;
System.out.println(i);
}
for(int i=1;i<=3;i++)
{
break;
System.out.println(i);//无法访问的语句
}
for(int i=1;i<=4;i++)
{
for(int j=1;j<=3;j++)
{
if(j==2)
break;//结束的是内部循环
}
}
m:for(int i=1;i<=4;i++)
{
n:for(int j=1;j<=3;j++)
{
if(j==2)
break m;//结束的是外部循环
}
}
for(int i=1;i<=10;i++)
{
if(i%2==0)
continue;//结束本次循环,直接进入下一次循环,也就是去执行i++
System.out.println(i);
}
}
}
函数
import java.util.Scanner;
class Demo12
{
public static void main(String[] args)
{
//编写一个程序,最多接收10个数,求这些数的和,
//用户可以通过输入999终止程序,并显示输入数的和
Scanner sc = new Scanner(System.in);
int sum =0,num;
for(int i=1;i<=10;i++)
{
System.out.println("输入一个数");
num = sc.nextInt();
if(num==999)
break;
sum = sum+num;
}
System.out.println("sum="+sum);
}
}
import java.util.Scanner;
class Demo13
{
//定义了一个具备求和功能的函数
public static void add()
{
int num1,num2,sum=0;
Scanner sc = new Scanner(System.in);
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
sum = num1+num2;
System.out.println("sum="+sum);
}
public static void main(String[] args)
{
//实现求两个数的和,两个数从键盘录入
int num1,num2,sum=0;
Scanner sc = new Scanner(System.in);
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
sum = num1+num2;
System.out.println("sum="+sum);
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
System.out.print(j+"*"+i+"="+j*i+" ");
System.out.println();
}
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
sum = num1+num2;
System.out.println("sum="+sum);
System.out.println("******************");
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
sum = num1+num2;
System.out.println("sum="+sum);
}
}
/*
从上面的程序看出,每次用到求和功能都要写一遍求和的代码
出现了重复代码,也就是相同功能的代码需要写多次
使用函数可以解决这个问题
*/
import java.util.Scanner;
class Demo14
{
//定义了一个具备求和功能的函数
//函数:具备特定功能的一段独立的代码段,什么时候用到这个功能就什么时候调用这个函数
public static void add(int a,int b)//形式参数,用来接收数据的
{
int sum = a+b;
System.out.println("sum="+sum);
}
//main函数被JVM调用
public static void main(String[] args)
{
//通常程序中用到的数据都由主函数提供
//自定义函数只要实现该实现的功能就行了
int num1,num2;
Scanner sc = new Scanner(System.in);
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
add(num1,num2);//实际参数
//add(1,2);
}
}
import java.util.Scanner;
class Demo15
{
public static int add(int a,int b)//被调用者
{
int sum = a+b;
return sum;//返回给调用者,返回到调用该函数的位置
int c = 4;
}
//main函数被JVM调用,void表示无返回值
public static void main(String[] args) //调用者
{
int num1,num2;
Scanner sc = new Scanner(System.in);
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
//调用者如何得到被调函数的结果值
int sum = add(num1,num2);//接收
if(sum>200)
System.out.println("这个数大于200");
}
}
import java.util.Scanner;
class Demo16
{
public static int add(int a,int b)
{
int sum = a+b;
return sum;
}
public static void main(String[] args)
{
int num1,num2;
Scanner sc = new Scanner(System.in);
System.out.println("输入第一个数");
num1 = sc.nextInt();
System.out.println("输入第二个数");
num2 = sc.nextInt();
int sum = add(num1,num2);
if(sum>200)
System.out.println("这个数大于200");
}
}
</pre><p></p><p><img src="https://img-blog.csdn.net/20141211233101589?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGM2MzU0MDgxMzY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></p><p></p><pre code_snippet_id="549725" snippet_file_name="blog_20141211_3_2521781" name="code" class="java">class Demo18
{
public static void main(String[] args)
{
fun1(12);
}
//如果一个函数没有返回值,也可以使用return,意思是返回到函数调用的位置,结束函数调用
public static void fun1(int num)
{
if(num>10)
return;
else
System.out.println(num);
}
//如果一个函数有返回值,那么必须保证在任何情况下都有返回值
public static int fun2(int a,int b)
{
if(a>b)
return 1;
else if(a<b)
return 2;
return 3;
}
}
/*怎么定义一个函数?
1:确定函数的执行结果:是为了确定是否有返回值
有结果:有返回值
无结果:无返回值
2:确定函数在执行的过程当中是否用到不确定的数据:是为了确定是否需要参数
用到了不确定的数据:有参数
没用到不确定的数据:无参数
*/
class Demo19
{
public static void main(String[] args)
{
ju(5,10);
}
//判断两个数是否相等
//结果:是相等或不相等 boolean
//参数:两个数
public static boolean isEquals(int a,int b)
{
return a==b;
}
//求两个数中的最大值
//结果:最大值 int
//参数:两个数
public static int max(int a,int b)
{
return a>b?a:b;
}
//打印矩形
//结果:无结果
//参数:矩形的长和宽是不确定的数据
public static void ju(int row,int col)
{
for(int i=1;i<=row;i++)
{
for(int j=1;j<=col;j++)
System.out.print("*");
System.out.println();
}
}
//打印99乘法表
//结果:无结果
//参数:无参数
public static void jiuJiu()
{
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
System.out.print(j+"*"+i+"="+j*i+" ");
System.out.println();
}
}
}
//重载:在同一个class中,出现了函数名称相同但参数不同的现象
/*
参数不同:
参数的个数不同
参数的类型不同
个数类型都不同
*/
class Demo20
{
public static void main(String[] args)
{
add(23,45);
}
public static int add(int a,int b)
{
return a+b;
}
public static int add(int a,int b,,int c)
{
return a+b+c;
}
public static double add(double a,double b)
{
return a+b;
}
public static void jiuJiu()
{
jiuJiu(9);
}
//打印99册乘法表,行数由参数决定
public static void jiuJiu(int row)
{
for(int i=1;i<=row;i++)
{
for(int j=1;j<=i;j++)
System.out.print(j+"*"+i+"="+j*i+" ");
System.out.println();
}
}
}
class Demo21
{
public static void main(String[] args)
{
}
}
/*
public static void show(int a,boolean b,double d)
A:public static int show(int a,boolean b,double d)//不是重载,重载和返回值无关
B:public static int show(int v,boolean n,double m)//不是重载
C:public static int show(int a)//是
d:public static void show(int a,double b,boolean d)//是
e:public static void show(int a,boolean b)//是
*/
//数组:是一种数据类型,可以存储多个数据,属于引用数据类型
//数组在定义时必须指定数组的长度
class Demo22
{
public static void main(String[] args)
{ //数据类型 变量名称 =初始化值;
int a;
//定义一个可以存储5个数据的数组
//new int[5];
//为了使用数组,需要给数组起一个名字
int[] arr = new int[5];//4*5=20
//数组是通过下标来存储或取数据的的,下标是从0开始的
//char '\u0000'
System.out.println(arr[0]);
/*
java程序在运行时,jvm会把内存分为5块
栈,堆,方法区,本地方法区,寄存器
栈:存储的是局部变量,在函数,语句中定义的变量
变量的作用范围结束就会立刻从栈中消失
堆:存储的是实体(数组,对象),实体都是可以存储多个数据的
特点:1:会分配内存首地址
2:有默认值
3:垃圾回收机制
*/
}
}
//引用数据类型和基本数据类型的区别
class Demo23
{
public static void main(String[] args)
{ /*
int a = 12,b = 21;
System.out.println("a="+a+",b="+b);
huan(a,b);
System.out.println("a="+a+",b="+b);
*/
int[] arr = new int[2];
arr[0] = 12;
arr[1] = 21;
System.out.println("arr[0]="+arr[0]+",arr[1]="+arr[1]);
huan(arr);
System.out.println("arr[0]="+arr[0]+",arr[1]="+arr[1]);
}
public static void huan(int[] arr)
{
int c ;
c = arr[0];
arr[0] = arr[1];
arr[1] = c;
}
//交换两个变量的值
//结果:无结果
//参数:两个数
public static void huan(int a,int b)
{
int c;
c = a;
a = b;
b = c;
}
}
class Demo24
{
public static void main(String[] args)
{
String ss = "haha";
char[] arr = new char[3];
arr[0] ='n';
fun(ss,arr);
System.out.println(ss+" "+arr[0]);
}
public static void fun(String str,char[] ch)
{
str = "hehe";
ch[0]='m';
}
}
//数组:存放多个数,连续存放的,同一个数组只能存储同一中类型的数据
class Demo25
{
public static void main(String[] args)
{
int[] arr = new int[3];
//System.out.println(arr[3]);//ArrayIndexOutOfBoundsException
//arr = null;
//System.out.println(arr[0]);//NullPointerException
//数组的初始化
// a =45;
//int[] a = new int[]{23,5,67,89};
int[] b = {23,4,56,1,567};
//数组的遍历
for(int i=0;i<5;i++)
System.out.print(b[i]+" ");
for(int i=0;i<b.length;i++)
System.out.print(b[i]+" ");
}
}
//求数组的最值
class Demo26
{
public static void main(String[] args)
{
int[] arr = {12,4,56,123,8,89};
int max = max(arr);
System.out.println("max="+max);
}
//求数组中的最大值
//结果:最大值
//参数:数组
public static int max(int[] arr)
{
int max = arr[0];
for(int i=1;i<arr.length;i++)
{
if(max<arr[i])
max = arr[i];
}
return max;
}
}
//排序:选择,冒泡
import java.util.Arrays;
class Demo27
{
public static void main(String[] args)
{
int[] arr = {23,45,12,6,78};
print(arr);
//select(arr);
//bubble(arr);
Arrays.sort(arr);
System.out.println();
print(arr);
}
//打印数组中的数据
public static void print(int[] arr)
{
for(int i=0;i<arr.length;i++)
{
if(i!=arr.length-1)
System.out.print(arr[i]+",");
else
System.out.print(arr[i]);
}
}
//冒泡排序
//结果:无结果
//参数:数组
public static void bubble(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=0;j<arr.length-i-1;j++)
{
if(arr[j]>arr[j+1])
{
huan(arr,j,j+1);
}
}
}
}
//选择排序
//结果:无结果
//参数:数组
public static void select(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=i+1;j<arr.length;j++)
{
if(arr[j]<arr[i])
{
huan(arr,j,i);
}
}
}
}
//交换数组中的两个下标中对应的数
//结果:无结果
//参数:数组,两个下标
public static void huan(int[] arr,int i,int j)
{
int t = arr[i];
arr[i] = arr[j];
arr[j] = t;
}
}
//查找:一个数在数组中第一次出现的位置,不存在返回-1
class Demo28
{
public static void main(String[] args)
{
int[] arr ={23,4,9,123,89,9};
int key = 99;
int index = find(arr,key);
System.out.println(index);
}
//查找
//结果:下标值或-1
//参数:数组,和被查找的数
public static int find(int[] arr,int key)
{
for(int i=0;i<arr.length;i++)
{
if(key==arr[i])
return i;
}
return -1;
}
}
//二分法查找:前提条件:别查找的数组必须是有序的
import java.util.Arrays;
class Demo29
{
public static void main(String[] args)
{
int[] arr ={23,4,9,123,89,9};
int key = 99;
Arrays.sort(arr);
int index = halfSearch2(arr,key);
System.out.println(index);
}
//二分法查找的第二种写法
public static int halfSearch2(int[] arr,int key)
{
int min = 0,max = arr.length-1,mid;
mid = (min+max)/2;
while(arr[mid]!=key)
{
if(key>arr[mid])
min = mid+1;
if(key<arr[mid])
max = mid-1;
if(min>max)
return -1;
mid = (min+max)/2;
}
return mid;
}
// 二分法查找
//结果:下标值或-1
//参数:数组,和被查找的数
public static int halfSearch(int[] arr,int key)
{
int min = 0,max = arr.length-1,mid;
while(min<=max)
{
mid = (min+max)>>1;
if(key>arr[mid])
min = mid+1;
else if(key<arr[mid])
max = mid-1;
else
return mid;
}
return -1;
}
}
练习:
1.
已知学生成绩以100分为满分,共分5个等级:A,B,C,D,E。
90~100为等级A,80~89为等级B,70~79为等级C,
60~69为等级D,0~59为等级E。
要求定义一个成绩变量,当成绩变化时,可直接知道该成绩对应的等级。
例如:当成绩为100时,该学生的等级是A。
2.
写出输出结果。
class Demo
{
public static void main(String[] args)
{
show(0);//i=15
show(1);//i=14
}
public static void show(int i)
{
switch(i)
{
default:
i+=2;//2
case 1:
i+=1;//3
case 4:
i+=8;//11
case 2:
i+=4;//15
}
System.out.println("i="+i);
}
}
3.写出输出的结果.
class Demo
{
public static void main(String[] args)
{
int x=0,y=1;
if(++x==y-- & x++==1||--y==0)
System.out.println("x="+x+",y="+y);x=2,y=0
else
System.out.println("y="+y+",x="+x);
}
}
4.
求出1~100之间,即使3又是7的倍数出现的次数?
5.
用程序的方式显示出下列结果。
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
6.写出程序结果。
class Demo
{
public static void main(String[] args)
{
int x = 1;
for(show('a'); show('b') && x<3; show('c'))
{
show('d');
x++;//2 3
}
}
public static boolean show(char ch)
{
System.out.println(ch);
return true;
}
}
a
b
d
c
b
d
c
B
本人作业:
数组练习:
1,将给定数组进行反转。{32,65,12,89,41} {41,89,12,65,32}
import java.text.DecimalFormat;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int[] arr = { 32, 65, 12, 89, 41 };
test1(arr);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
public static void test1(int[] arr) {
for (int i = 0; i < arr.length / 2; i++) {
int tem = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = tem;
}
}
}
2,将给定的数组变成字符串,[元素1,元素2...]{34,12,65} --> "[34,12,65]"
import java.text.DecimalFormat;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int[] arr = { 32, 65, 12, 89, 41 };
System.out.print("\"[");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]);
if (i != arr.length - 1)
System.out.print(",");
}
System.out.println("]\"");
}
}
3. 对于一个有序的数组,如果要插入一个元素并保证数组还有序,问如何获取该元素位置。(用二分法)
import java.text.DecimalFormat;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int[] arr = { 12, 23, 34, 45, 56, 67, 78 };
int key = 90;
System.out.println(halfSearch(arr, key));
}
public static int halfSearch(int[] arr, int key) {
int min = 0, max = arr.length - 1, mid;
while (min <= max) {
mid = (min + max) >> 1;
if (key > arr[mid])
min = mid + 1;
else if (key < arr[mid])
max = mid - 1;
else
return mid;
}
return min;
}
}
以下题都用函数实现
1、编写一个程序,测试给定年份是否是闰年?(能被4整除但不能被100整除,或者能被
400整除的年份就是闰年)
略
2、将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int i = in.nextInt();
test(i);
}
public static void test(int i) {
for (int j = 2; j <= i; j++) {
if (i % j == 0) {
System.out.print(j);
test(i / j);
j = i;
}
}
}
}
3.求101-200之内的素数?(只能被1和自身整除的数就是素数)
提示:让这个数除以从2开始到这个数的前一个数,如果都不能被整除,说明是素数
import java.text.DecimalFormat;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
for (int i = 101; i < 200; i++) {
boolean flag = false;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
flag = true;
}
}
if (!flag) {
System.out.println(i);
}
}
}
}
4.有1、2、3、4四个数字,能组成多少个互不相同且无重复的三位数。
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= 4; j++) {
for (int k = 1; k <= 4; k++) {
if (!(i == j || i == k || j == k))
{
System.out.print(i + " " + j + " " + k);
System.out.println();
}
}
System.out.println();
}
System.out.println();
}
}
}
6.输入三个整数x,y,z,请把这三个数由小到大输出
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner in= new Scanner(System.in);
int max,min;
int x=in.nextInt();
int y=in.nextInt();
int z=in.nextInt();
min=x<y?x:y;
min=min<z?min:z;
max=x>y?x:y;
max=max>z?max:z;
int [] arr=new int[3];
arr[0]=min;
arr[1]=x+y+z-max-min;
arr[2]=max;
for(int i=0;i<arr.length;i++)
{System.out.print(arr[i]+",");}
}
}
7.求1至1000之间满足“用3除余2;用5除余3;用7除余2”的数,且一行只打印5个数
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 1000; i++) {
if (i % 3 == 2 && i % 5 == 3 && i % 7 == 2) {
System.out.print(i + " ");
count++;
if (count % 5 == 0) {
System.out.println();
}
}
}
}
}
8.求1-3+5-7+ …… -99+101的值。
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int sum = 0;
int count = 0;
for (int i = 1; i <=101; i += 2) {
count++;
if (count % 2 != 0) {
sum = sum + i;
} else
sum = sum - i;
}
System.out.println(sum);
}
}
9.打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
import java.text.DecimalFormat;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int i = in.nextInt();
int b = i / 100;
int s = i / 10 % 10;
int g = i % 10;
if (b * b * b + s * s * s + g * g * g == i) {
System.out.println("YES");
} else {
System.out.println("NO");
}
}
}
10.求出1~100之间,即是3又是7的倍数的数出现的次数?
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 100; i++) {
if (i % 3 == 0 && i % 7 == 0) {
count++;
}
}
System.out.println(count);
}
}