古代一个王国的公主爱上了花匠。公主要出嫁按传统要用抛绣球的方式选择附马。花匠就给公主献了个对策。婚日来临,人群拥挤,主持人叫求婚者排成一行,花匠在队列外数了数,共有101个人,于是他找了个适当的位置也站在了队伍中。主持人喊1、2,1、2地报数,报单数的退出场外;余下的人靠拢又成一行,再重新1、2,1、2地报数,报单数的退出场外;如此下去最后只剩一下,公主便嫁给谁。当然,最后剩下的是花匠。请问花匠站在原队伍中的哪一个位置?
算法分析:求婚的总人数是102人;第一遍报数后,退出场的是1,3,5,7...共51人,也就是2的0次方分别乘以1,3,5...;
第二遍报数后,退出场的是原队伍中的2,6,10.. 即2的1次方分别乘1,3,5;
第三遍报数后,退出场的就是2的2次方分别乘以1,3,5.. 所以,源程序ex11_1.prg如下:



































