本题导读
本题考查算法与程序框图,以及直到型循环变体)。
📌【题干】
Question
(2012年福建卷(理)) 阅读右图所示的程序框图,运行相应地程序,输出的 值等于 .
🔍【思路分析】
破题导航
- 初始化变量:进入程序后,读取初值 。
- 分析判断逻辑:流程线首先流向判断框 ?。如果为“是”,则向下(或向上)进入循环体;如果为“否”,则跳出循环,直接输出 。
- 追踪循环体变化:每次进入循环,先执行 ,再执行 。注意变量更新的先后时序。
- 数据打表迭代:步步模拟,记录每一轮循环结束后 和 的最新数值,直至 。
✅【答案】
点击查看答案
✍【详细解析】
Abstract
根据程序框图的流程导向,逐轮模拟计算机的运算步骤:
初始化阶段: 程序开始运行,赋初值: 。
第一轮循环:
遇到判断框,此时 ,由于 成立,执行“是”的分支,进入循环体。
执行赋值变算:
接着执行计数加 1:
流程线返回,重新来到判断框前。此时变量状态: 。
第二轮循环:
此时 ,由于 成立,继续执行“是”分支。
执行赋值变算(注意此时 已变为 2):
接着执行计数加 1:
流程线返回判断框前。此时变量状态: 。
第三轮循环:
此时 ,由于 成立,继续执行“是”分支。
执行赋值变算(注意此时 已变为 3):
接着执行计数加 1:
流程线返回判断框前。此时变量状态: 。
跳出结束阶段: 此时 ,重新面对判断框 ?。 由于 4 不严格小于 4,条件不成立,因此程序执行“否”的分支,跳出整个循环。 流程线导向“输出 ”的平行四边形框,此时的变量 。
所以,最终输出的 值为 。
填空题答案为:-3
💡【考点归纳与避坑指南】
Danger
- 核心考点:循环结构的条件流向、赋值语句 的右侧代入左侧更新逻辑、迭代终止边界。
- 核心方法:数据清单打表法。在考场上做程序框图填空题时,切忌盲目在大脑中死记硬背数字,最不容易出错的万能法是在草稿纸上列出一个包含“循环轮次 | 判定值 | 最新 值 | 最新 值”的四列清单表格。通过表格化对齐,能避免多算一轮或少算一轮的现象。
- 避坑指南:
- 代错 的更新值:在第二轮循环计算 时,很多考生容易粗心套用最开始的初值 ,错算成 。切记程序运行是动态的,必须使用当前最新的 值(此时 )代入计算。
- 终止条件判定失误:部分考生在 时,由于审题不仔细,误认为还要再进去算一轮,导致算出下一轮的错误数据。
📖【试题探源与推广】
Tip
- 试题探源: 本题源于人教A版高中数学(老教材必修三第一章《算法初步》的课后标准基础巩固题,现多作为新教材选择性必修模块中数学建模与计算机算法的前置矩阵训练)。属于常规基本功送分题。
- 结论推广:
- 双变量一阶非齐次递推循环模型:在程序算法小题中,凡是涉及形如 的双变量嵌套递推结构。
- 其本质上是在计算一个非齐次差分方程(递推数列)的特定项值。
- 只要我们理清判断框的截断阈值 (本题中 ),其总循环次数必然严格等于 轮。
- 掌握这种表格化状态推演模型,能让你在面对任何长链条、大次数的程序循环大题时,均能做到忙而不乱,稳定斩获全分。
🔗【关联脉络】
Multi column
知识锚点 (Nodes)
类题演练 (Links)
/2012-福建理-12-题.png)