diff --git a/HelloWorld/HelloWorld.java b/HelloWorld/HelloWorld.java new file mode 100644 index 0000000..d558cad --- /dev/null +++ b/HelloWorld/HelloWorld.java @@ -0,0 +1,6 @@ +public class HelloWorld { + public static void main(String[] +args){ + System.out.println("Hello,World!"); + } +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..cc4a865 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +JAVA \ No newline at end of file diff --git a/w1/AI协助记录 b/w1/AI协助记录 new file mode 100644 index 0000000..def93e0 --- /dev/null +++ b/w1/AI协助记录 @@ -0,0 +1,15 @@ +AI协助记录 + +**遇到的问题:** +1. Git推送时出现“rejected”错误,远程有更新导致推送失败 +2. Java中文注释编译报错(编码GBK不可映射字符) +3. 不清楚作业文件如何整理 + +**AI提供的帮助:** +- 指导先`git pull`再`git push`的正确流程 +- 建议用UTF-8编码保存文件,编译时加`-encoding UTF-8` +- 指导创建`w1-姓名-学号`文件夹整理作业文件 +- 提供TemperatureConverter.java完整代码 + +**总结:** +通过本次作业,学会了Git规范操作和Java编码处理,顺利完成温度转换器程序。 \ No newline at end of file diff --git a/w1/README.md b/w1/README.md new file mode 100644 index 0000000..55c6ef7 --- /dev/null +++ b/w1/README.md @@ -0,0 +1,26 @@ +# \# 温度转换工具 (TemperatureConverter) + +# + +# 一个简单的 Java 命令行程序,支持摄氏度(C)和华氏度(F)之间的相互转换。 + +# + +# \## 功能说明 + +# \- 输入带单位的温度值(如 36.6 C 或 97 F),程序会自动完成温度单位转换 + +# \- 摄氏度转华氏度公式:F = C × 9/5 + 32 + +# \- 华氏度转摄氏度公式:C = (F - 32) × 5/9 + +# + +# \## 编译与运行 + +# ```bash + +# javac TemperatureConverter.java + +# java TemperatureConverter + diff --git a/w1/TemperatureConverter.java b/w1/TemperatureConverter.java new file mode 100644 index 0000000..7820cc0 --- /dev/null +++ b/w1/TemperatureConverter.java @@ -0,0 +1,54 @@ +import java.util.Scanner; +/** + * 温度转换器 + * 功能:支持摄氏度(C)与华氏度(F)之间的相互转换 + */ +public class TemperatureConverter { + /** + * 摄氏度转换为华氏度 + * @param celsius 摄氏温度值 + * @return 华氏温度值 + */ + public static double celsiusToFahrenheit(double celsius) { + return celsius * 9.0 / 5.0 + 32.0; + } + /** + * 华氏度转换为摄氏度 + * @param fahrenheit 华氏温度值 + * @return 摄氏温度值 + */ + public static double fahrenheitToCelsius(double fahrenheit) { + return (fahrenheit - 32.0) * 5.0 / 9.0; + } + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + System.out.println("===== 温度转换器 ====="); + System.out.print("请输入要转换的温度与单位(例如 36.6 C 或 97 F):"); + String input = scanner.nextLine().trim(); + if (input.isEmpty()) { + System.out.println("输入为空,程序退出。"); + scanner.close(); + return; + } + String[] parts = input.split(" "); + try { + double value = Double.parseDouble(parts[0]); + String unit = "C"; + if (parts.length >= 2) { + unit = parts[1].toUpperCase(); + } + if (unit.startsWith("C")) { + double f = celsiusToFahrenheit(value); + System.out.printf("%.1f °C = %.2f °F%n", value, f); + } else if (unit.startsWith("F")) { + double c = fahrenheitToCelsius(value); + System.out.printf("%.1f °F = %.2f °C%n", value, c); + } else { + System.out.println("未知单位,请使用 C 或 F。"); + } + } catch (Exception e) { + System.out.println("输入解析失败,请按示例输入:36.6 C"); + } + scanner.close(); + } +} \ No newline at end of file diff --git a/w1/程序运行截图/联想截图_20260308230209.png b/w1/程序运行截图/联想截图_20260308230209.png new file mode 100644 index 0000000..66d3889 Binary files /dev/null and b/w1/程序运行截图/联想截图_20260308230209.png differ diff --git a/w2/DataCleaner.java b/w2/DataCleaner.java new file mode 100644 index 0000000..451baf1 --- /dev/null +++ b/w2/DataCleaner.java @@ -0,0 +1,35 @@ +public class DataCleaner { + public static void main(String[] args) { + int[] sensorData = {85, -5, 92, 0, 105, 999, 88, 76}; + + int validSum = 0; // 有效数据总和 + int validCount = 0; // 有效数据个数 + + for (int i = 0;i < sensorData.length;i++){ + int num =sensorData[i]; + + if (num == 999) { + System.out.println("传感器断开连接,数据处理终止"); + break; + } + if (num <= 0 || num > 100) { + System.out.println("警告:发现越界数据!数值超过100。"); + continue; + } + + validSum = validSum + num; // 累加总和 + validCount = validCount + 1; // 计数加1 + System.out.println("有效数据:" + num + ",当前总和:" + validSum); + } + + System.out.println("\n===== 最终结果 ====="); + if (validCount > 0) { + double average = (double) validSum / validCount; // 计算平均值 + System.out.println("有效数据个数:" + validCount); + System.out.println("有效数据总和:" + validSum); + System.out.println("平均值:" + average); + } else { + System.out.println("无有效数据"); + } + } +} \ No newline at end of file diff --git a/w2/联想截图_20260316144831.png b/w2/联想截图_20260316144831.png new file mode 100644 index 0000000..53887ef Binary files /dev/null and b/w2/联想截图_20260316144831.png differ