每日小语
我相信即便是一道简单的题目,背后也有深刻的自然规律,通向那最高的“道”。
即便一个晚上,一道题也没做出来,只是不断地体悟那些解法与思想。彷佛这是一趟心灵的朝圣之旅。
——柳智宇
思考
最近开始拾起博客了,我可能注定是孤独的。
键入用Java好像是scanner
表面积计算公式好像是3*(长*宽+长*高+宽*高)
体积公式不说了
最后再掌握一下java输出的关键字,我记得是system.out.println()
嗯,可以开始自己写了。
自己敲写
public class SurfaceAndVolume
{
public static void main()
{
//设置长宽高变量
double length;
double width;
double height;
//用户输入
Scanner scannerl = new Scanner (System.in);//长
Scanner scannerw = new Scanner (System.in);//宽
Scanner scannerh = new Scanner (System.in);//高
//创建表面积和体积的对象
double surface;
double volume;
SurfaceAndVolume surface = new SurfaceAndVolume();
SurfaceAndVolume volume = new SurfaceAndVolume();
//计算表面积
double surface = 3*(length*width+length*height+width*height);
//计算体积
double volume =length*width*height;
//输出数据
System.out.println("Surface:"+surface);//S要大写
System.out.println("Volume :"+volume);
}
}
这个有很多底下划横杠的部分,目前还不知道问题在哪里,我的gpt网站崩了呜呜呜。唉。
gpt指出的问题
这段代码存在几个问题,我来逐一指出并提供修改建议:
1. `main` 方法的声明应该是 `public static void main(String[] args)`,而不是 `public static void main()`。Java 的 `main` 方法必须接受一个字符串数组作为参数。
2. 缺少 `import java.util.Scanner;`,需要在代码开头添加这一行以引入 `Scanner` 类。
3. 创建 `Scanner` 对象时应该使用一个 `Scanner` 对象来接收用户的输入,而不是每次都创建一个新的 `Scanner` 对象。应该像下面这样创建:
Scanner scanner = new Scanner(System.in);
length = scanner.nextDouble();
width = scanner.nextDouble();
height = scanner.nextDouble();
4. 定义表面积和体积的变量时,不需要再次创建 `SurfaceAndVolume` 对象,而只需定义一个变量即可。应该修改为:
double surface;
double volume;
5. 计算表面积和体积时,应该在接收用户输入之后进行计算。因为当前的代码在计算表面积和体积时,`length`、`width` 和 `height` 都没有被赋值,所以计算结果将会是错误的。
6. 在计算表面积和体积时,不需要再次声明 `double` 类型,应该直接进行计算。应该修改为:
surface = 3*(length*width+length*height+width*height);
volume = length*width*height;
7. 在输出数据时,应该将 `Surface` 的首字母大写。应该修改为:
System.out.println("Surface: " + surface);
System.out.println("Volume: " + volume);
import java.util.Scanner;
public class SurfaceAndVolume
{
public static void main(String[] args)
{
//设置长宽高变量
double length;
double width;
double height;
//用户输入
Scanner scanner = new Scanner(System.in);
System.out.println("Enter length: ");
length = scanner.nextDouble();
System.out.println("Enter width: ");
width = scanner.nextDouble();
System.out.println("Enter height: ");
height = scanner.nextDouble();
//创建表面积和体积的变量
double surface;
double volume;
//计算表面积
surface = 3*(length*width+length*height+width*height);
//计算体积
volume = length*width*height;
//输出数据
System.out.println("Surface: " + surface);
System.out.println("Volume: " + volume);
}
}
gpt给的代码很棒,输入思想让我完善了许多
经过修改代码运行成功啦,撒花花~
终极代码
import java.util.Scanner;
public class SurfaceAndVolume
{
private static Scanner scanner;
public static void main(String[] args)
{
//设置长宽高变量
double length;
double width;
double height;
scanner = new Scanner (System.in);
System.out.println("length:");
length = scanner.nextDouble();
System.out.println("width:");
width = scanner.nextDouble();
System.out.println("height:");
height = scanner.nextDouble();
//创建表面积和体积的对象
double surface;
double volume;
//无需再写这一行SurfaceAndVolume surface = new SurfaceAndVolume();
//SurfaceAndVolume volume = new SurfaceAndVolume();
//计算表面积
surface = 3*(length*width+length*height+width*height);//前面不用再写类型
//计算体积
volume =length*width*height;
//输出数据
System.out.println("Surface:"+surface);//S要大写
System.out.println("Volume :"+volume);
}
}