6. 打印出实心 10*10 正方形、空心 10*10 正方形
package com.liubj.projectbaizhan;
/**
* 打印出实心 10*10 正方形、空心 10*10 正方形
* @author liubaojun
*
*/
public class Square {
public static void main(String[] args) {
//实心10*10正方形
for(int i = 1; i <= 10; i++){
for(int j = 1; j <= 10; j++){
System.out.print("*");
}
System.out.println();
}
System.out.println("=========================");
//空心正方形
for(int i = 1; i <= 10; i++){
//第一行和第十行实线
if(i == 1 || i == 10){
for(int j = 1; j <= 10; j++){
System.out.print("*");
}
System.out.println();
}else{
System.out.print("*");
//控制中间空心
for(int k = 1; k <=8; k++){
System.out.print(" ");
}
System.out.print("*");
System.out.println();
}
}
}
}
运行结果:
7. 将上面打印实心和空心正方形练习中相关代码,封装成方法,便于重用
package com.liubj.projectbaizhan;
import java.util.Scanner;
/**
* 将上面打印实心和空心正方形练习中相关代码,封装成方法,便于重用
*
* @author liubaojun
*
*/
public class SquareCapsulation {
// 打印实心正方形
public static void solid(int n) {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
System.out.print("*");
}
System.out.println();
}
}
// 打印空心正方形
public static void hollow(int n) {
for (int i = 1; i <= n; i++) {
// 第一行和第十行实线
if (i == 1 || i == n) {
for (int j = 1; j <= n; j++) {
System.out.print("*");
}
System.out.println();
} else {
System.out.print("*");
// 控制中间空心
for (int k = 1; k <= n - 2; k++) {
System.out.print(" ");
}
System.out.print("*");
System.out.println();
}
}
}
public static void main(String[] args) {
//创建Scanner对象
Scanner sc = new Scanner(System.in);
System.out.print("请输入正方形的边长:");
int n = sc.nextInt();
//打印实心圆
solid(n);
System.out.println("========================");
//打印空心圆
hollow(n);
}
}
运行结果:
8. 使用递归算法完成阶乘:1!+2!+3!+4!+5!
package com.liubj.projectbaizhan;
/**
* 使用递归算法完成阶乘:1!+2!+3!+4!+5!
* @author liubaojun
*
*/
public class Factorial {
//递归实现n!
public static long getFactorial(int n){
if(n == 1){
return 1;
}else{
return getFactorial(n - 1) * n;
}
}
//主方法
public static void main(String[] args) {
int sum = 0;
//计算1!+2!+3!+4!+5!
for(int i = 1; i <= 5; i++){
sum += getFactorial(i);
}
System.out.println("1!+2!+3!+4!+5!的值是:" + sum);
}
}
运行结果:
9. 设计一个类代表二维空间的一个圆。要求两个成员变量。一个是圆心,一个是半径提供计算面积的方法。
package com.liubj.projectbaizhan;
/**
* 设计一个类代表二维空间的一个点。
* @author liubaojun
*
*/
public class Point {
private int x;
private int y;
public Point(int x, int y) {
super();
this.x = x;
this.y = y;
}
}
package com.liubj.projectbaizhan;
import java.util.Scanner;
/**
* 设计一个类代表二维空间的一个圆。要求两个成员变量。一个是圆心,一个是半径提供计算面积的方法。
* @author liubaojun
*
*/
public class Circle {
int radius; //半径
Point point; //圆心
//构造方法
public Circle(int radius, Point point){
super();
this.radius = radius;
this.point = point;
}
//圆的面积
public double area(int radius){
return Math.PI * Math.pow(radius, 2);
}
//主方法
public static void main(String[] args) {
//设置圆心
Point p = new Point(10, 10);
//圆
Scanner sc = new Scanner(System.in);
System.out.print("请输入圆的半径:");
int radius = sc.nextInt();
Circle circle = new Circle(radius, p);
System.out.println("圆的面积是:" + circle.area(radius));
}
}
运行结果: