for(int j=1;j<=9;j++){
for(int i=1;i<=j;i++){
System.out.print(i+"*"+j+"="+i*j+"\t");
}
//换行
System.out.println();
}
for(int j=9;j>=1;j--){
for(int i=1;i<=j;i++){
System.out.print(i+"*"+j+"="+i*j+"\t");
}
//换行
System.out.println();
}
for(int j=1;j<=4;j++){
//j:控制行数
//*********
for(int i=1;i<=9;i++){
//i:控制*的个数
System.out.print("*");
}
//换行:
System.out.println();
}
for(int j=1;j<=4;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(9-j);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=9;i++){
//i:控制*的个数
System.out.print("*");
}
//换行:
System.out.println();
}
for(int j=1;j<=4;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(9-j);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=(2*j-1);i++){
//i:控制*的个数
System.out.print("*");
}
//换行:
System.out.println();
}
for(int j=1;j<=4;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(9-j);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=(2*j-1);i++){
//i:控制*的个数
System.out.print("*");
}
//换行:
System.out.println();
}
可以看成两个三角形拼成一个菱形
//上面三角形:
for(int j=1;j<=4;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(9-j);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=(2*j-1);i++){
//i:控制*的个数
System.out.print("*");
}
//换行:
System.out.println();
}
//下面三角形:
for(int j=1;j<=3;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(j+5);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=(7-2*j);i++){
//i:控制*的个数
System.out.print("*");
}
//换行:
System.out.println();
}
//上面三角形:
for(int j=1;j<=4;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(9-j);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=(2*j-1);i++){
//i:控制*的个数
if(i==1||i==(2*j-1)){
System.out.print("*");
}else{
System.out.print(" ");
}
}
//换行:
System.out.println();
}
//下面三角形:
for(int j=1;j<=3;j++){
//j:控制行数
//加入空格:
for(int i=1;i<=(j+5);i++){
//i:控制空格的个数
System.out.print(" ");
}
//*********
for(int i=1;i<=(7-2*j);i++){
//i:控制*的个数
if(i==1||i==(7-2*j)){
System.out.print("*");
}else{
System.out.print(" ");
}
}
//换行:
System.out.println();
}
可以把菱形看成一个正方形,在相应位置打空,在相应位置打*
public class TestFor14{
public static void main(String[] args){
//先打印出一个正方形,然后某些位置上打印* 某些位置上打印空格:
int size = 17;
int startNum = size/2+1;//起始列号
int endNum = size/2+1;//结束列号
//引入一个布尔类型的变量---》理解为“开关”
boolean flag = true;
for(int j=1;j<=size;j++){
//*****
for(int i=1;i<=size;i++){
if(i>=startNum&&i<=endNum){
System.out.print("*");
}else{
System.out.print(" ");
}
}
//换行
System.out.println();
if(endNum==size){
flag = false;
}
if(flag){
//flag是true相当于在菱形的上半侧 flag是false相当于在菱形的下半侧
startNum--;
endNum++;
}else{
startNum++;
endNum--;
}
}
}
}
public class TestFor14{
public static void main(String[] args){
//先打印出一个正方形,然后某些位置上打印* 某些位置上打印空格:
int size = 17;
int startNum = size/2+1;//起始列号
int endNum = size/2+1;//结束列号
//引入一个布尔类型的变量---》理解为“开关”
boolean flag = true;
for(int j=1;j<=size;j++){
//*****
for(int i=1;i<=size;i++){
if(i==startNum||i==endNum){
//和实心菱形只有这行不一样
System.out.print("*");
}else{
System.out.print(" ");
}
}
//换行
System.out.println();
if(endNum==size){
flag = false;
}
if(flag){
//flag是true相当于在菱形的上半侧 flag是false相当于在菱形的下半侧
startNum--;
endNum++;
}else{
startNum++;
endNum--;
}
}
}
}
1<=a<=5
3<=b<=6
求出a+b=7中a和b的所有可能性
public static void main(String[] args){
for(int a=1;a<=5;a++){
for(int b=3;b<=6;b++){
if(a+b==7){
System.out.println(a+"----"+b);
}
}
}
}
公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱。
数学:
设未知数:
公鸡:x只
母鸡:y只
小鸡:z只
x+y+z=100只
5x+3y+z/3=100钱
for(int x=1;x<=100;x++){
for(int y=1;y<=100;y++){
for(int z=1;z<=100;z++){
if((x+y+z==100)&&(5*x+3*y+z/3==100)&&(z%3==0)){
System.out.println(x+"\t"+y+"\t"+z);
}
}
}
}
100文做多买公鸡19只,母鸡31只,小鸡100-公鸡-母鸡
for(int x=1;x<=19;x++){
for(int y=1;y<=31;y++){
int z = 100-x-y;
if((5*x+3*y+z/3==100)&&(z%3==0)){
System.out.println(x+"\t"+y+"\t"+z);
}
}
}
有不懂的地方可以私信~
内容来源于马士兵教育赵姗姗老师的Java笔记。