diff --git a/w2/DataCleaner.java b/w2/DataCleaner.java new file mode 100644 index 0000000..e8a6de0 --- /dev/null +++ b/w2/DataCleaner.java @@ -0,0 +1,36 @@ +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 data : sensorData) { + // 致命错误:传感器掉线 + if (data == 999) { + System.out.println("致命错误:传感器掉线,终止处理"); + break; + } + + // 无效数据:0或负数,或大于100(且不是999) + if (data <= 0 || data > 100) { + System.out.println("警告:发现越界数据 [" + data + "],已跳过"); + continue; + } + + // 正常范围数据(1-100) + validSum += data; + validCount++; + } + + // 最终输出 + if (validCount > 0) { + // 注意:避免整数除法,先将validSum转为double + double average = (double) validSum / validCount; + System.out.println("有效数据的平均值:" + average); + } else { + System.out.println("无有效数据"); + } + } +} \ No newline at end of file diff --git a/w2/readme(ai协助记录).txt b/w2/readme(ai协助记录).txt new file mode 100644 index 0000000..448b31a --- /dev/null +++ b/w2/readme(ai协助记录).txt @@ -0,0 +1,27 @@ +DataCleaner 说明 + +项目功能 + +处理传感器数据,过滤无效值,遇到 999 就停止,最后算有效数据的平均值。 + +代码逻辑 + +遍历数组  {85, -5, 92, 0, 105, 999, 88, 76} : + +- 1~100:算有效数据,累加求和、计数 +- 0/负数或 >100(不是999):跳过,打印警告 +- 遇到 999:立刻停止,打印致命错误 +- 最后:有有效数据就输出平均值(带小数),否则输出“无有效数据” + +AI 协助记录 + +- 帮我理清了判断顺序和  continue / break  的用法 +- 提醒我要转成  double  避免整数除法算错平均值 +- 帮我检查了输出格式和流程是否符合题目要求 + +  + +代码已在本地跑通,提交到 w2 目录。 + +  + diff --git a/w2/截屏2026-03-10 15.35.16.png b/w2/截屏2026-03-10 15.35.16.png new file mode 100644 index 0000000..a751d66 Binary files /dev/null and b/w2/截屏2026-03-10 15.35.16.png differ