4.20趣味百题13
一 问题描述

二 设计思路
利用循环结构 来达成 最终目标 循环体执行糖果操作 循环结束条件为每个小朋友手中一样。
利用选择结构来完成奇数和偶数的不同操作。
三 流程图

四 代码实现
#include<iostream>
using namespace std;
int main()
{
int a[10]={10,2,8,22,16,4,10,6,14,20};
int n=0;//记录循环次数
for(;a[0]!=a[1]||a[0]!=a[2]||a[0]!=a[3]||a[0]!=a[4]||a[0]!=a[5]||a[0]!=a[6]||a[0]!=a[7]||a[0]!=a[8]||a[0]!=a[9];)
{
int t=a[9];
a[9]=(a[9]+1)/2+(a[8]+1)/2;
a[8]=(a[8]+1)/2+(a[7]+1)/2;
a[7]=(a[7]+1)/2+(a[6]+1)/2;
a[6]=(a[6]+1)/2+(a[5]+1)/2;
a[5]=(a[5]+1)/2+(a[4]+1)/2;
a[4]=(a[4]+1)/2+(a[3]+1)/2;
a[3]=(a[3]+1)/2+(a[2]+1)/2;
a[2]=(a[2]+1)/2+(a[1]+1)/2;
a[1]=(a[1]+1)/2+(a[0]+1)/2;
a[0]=(a[0]+1)/2+(t+1)/2;
n++;
}
cout<<"分糖次数"<<n<<endl<<"每人糖数"<<a[0];
return 0;
}

浙公网安备 33010602011771号