3.1 循环语句 whil3.1 循环语句 while3.1 循环语句 while3.1 循环语句 while.ppt
文本预览下载声明
* 珠穆朗玛峰高度 8844.43 米,即 8844430 毫米, 一张纸的厚度 1 毫米, 折叠 1 次后厚度为 2 毫米, 折叠 2 次后厚度为 4 毫米, 折叠 3 次后厚度为 8 毫米, 折叠 4 次后厚度为 16 毫米, …… 最少折叠多少次,纸的厚度超过珠穆朗玛峰? 这个问题里重复着判断与折叠 厚度不够就折一下…… h 峰高 成立 不成立 初始厚度 h = 1 ,折叠次数 c = 0 输出折叠次数 c 折叠次数 c=c+1 纸厚度 h = h*2 珠穆朗玛峰高度 8844.43 米,即 8844430 毫米, 一张纸的厚度 1 毫米, 折叠 1 次后厚度为 2 毫米, 折叠 2 次后厚度为 4 毫米, 折叠 3 次后厚度为 8 毫米, 折叠 4 次后厚度为 16 毫米, …… 最少折叠多少次,纸的厚度超过珠穆朗玛峰? h 峰高 成立 不成立 初始厚度 h = 1 ,折叠次数 c = 0 输出折叠次数 c 折叠次数 c=c+1 纸厚度 h = h*2 int h=1,c=0; while(h 8844430) { c=c+1; 次数增 1 h=h*2; 厚度翻倍 } cout c endl; 循环语句 当判断条件成立时, 执行一遍循环体语句, 然后再次判断 当条件不成立时, 执行右花括号下面的语句 判断条件 循环体语句 成立 不成立 前面的语句 后面继续的语句 while(判断条件) { 循环体语句; } while 循环 int s=0,n; cin n; while(n 0) { s ++; n=n/10; } cout s endl; 循环条件 循环体 输入一个数 n ,判断 n 是几位数。 如 8697 ,则 4 位数 每次累加 n 的个位数,然后将此个位扔掉,最终 n 变成 0 ,结束循环 初始时 s = 0 ,n = 8697 一轮后 s = 1 ,n = 869 二轮后 s = 2 ,n = 86 三轮后 s = 3 ,n = 8 四轮后 s = 4 ,n = 0 int s=0,n; cin n; while(n 0) { s += n%10; n/=10; } cout s endl; 循环条件 循环体 输入 n ,求 n 的各位上数字之和。 如 3625 ,则 3+6+2+5 = 16 每次累加 n 的个位数,然后将此个位扔掉,最终 n 变成 0 ,结束循环 初始时 s=0 ,n=3625 一轮后 s=5 ,n=362 二轮后 s=7 ,n=36 三轮后 s=13 ,n=3 四轮后 s=16 ,n=0 int s,n=0,sum=0; cin s; 如 s = 10000 while(sum s) { n++; sum += n*n; } cout n endl; 给出 s 值,求最小的 n 满足: 12 + 22 + 32 + …… + n2 ≥ s 加入 12 超 s 吗?再加入 22 后超 s 吗?…… 最后一次加入 n2 后不等式成立了 循环条件 循环体 int sum=0, i=1; while(i=100) { sum+=i; i++; } cout sum endl; 循环条件 循环体 计算 1+2+3+……+100 用 sum 表示箱子里的苹果数量,再往箱子里放入 i 只苹果, 数量变化可表示为:sum += i ; i 变化 1 2 3 …… 100 101 , 101 没有加入,结束循环 5050 输出: *
显示全部