博图SCL_约瑟夫入狱

实验案例

要求描述:约瑟夫入狱,监狱内共有33个犯人。某日33名犯人围成一圈,从第一个犯人开始报数,报到数字7的犯人出列,被枪毙,下一名犯人重新从1开始报数。依次类推,直至剩下最后1名犯人可被赦免。聪明的约瑟夫在心里稍加计算,算出了最后枪毙的位置,他站在这个位置,最终避免了自己被枪毙,逃出升天
问:约瑟夫算出的是哪个位置?

1、主程序

上升沿触发函数计算一次,并输出存活犯人编号
在这里插入图片描述

2、SCL程序

用0与1表示33个犯人是否存活,0表示存活、1表示死亡
在这里插入图片描述

3、仿真演示

更改Caculate变量为1,调用一次函数,输出结果在存活人员编号内,且人员数组内相应位置下标代表人员为0存活
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/fenglingxicao/article/details/106933401