第42课 倒立的数字
倒立的数字(do-while应用、回文数)

你会倒立吗?将头朝下,脚朝上就完成了倒立。但是数字倒立,你知道是怎么回事吗?
例如:数字123456789倒立成987654321。

倒立的数字

运行程序:
(1)do{...}while(num !=0):通过do-while循环,反复执行循环内的代码,直到num的值变成0,此时已经输出了最后一位数字。
(2)cout<<num % 10:在每次循环迭代中,程序将num的个位数字(通过num% 10取余运算得到)输出,使得从整数的最低位开始逆序输出数字。
(3)num /=10:程序通过除以10来将num的位数向右移动一位,以准备输出下一个位数。
例如,整数先相除,1234/10=123,接下来再除10求余,得到的就是3了。
回文数
掌握了如何将数字倒立,接下来就可以判断一个数字是不是回文数了。


运行程序:
请输入一个整数:666888666
666888666是回文数
敲黑板
通过不断÷10求余的方式取得的数字,在生成倒转的数字时,记得要不断×10。reversedNum=reversedNum*10 + remainder例如:121。
第一步
取出第一个数字1
倒转数字reversedNum=1
第二步
取出第二个数字2
倒转数字reversedNum的第一位需要通过×10向前移动,即1×10+2=12
第三步
取出第三个数字1
倒转数字reversedNum的数字需要通过×10继续向前移动,即12×10+1=121
巩固练习
(1)以下哪个选项属于回文?()
A.人人为我,我为人人
B.12345678987654321; C.Abcbca D.WorldWorld(2)阅读代码,填出程序运行结果。

请输入一系列整数:
输出:_____________________________________________________________ ______
(3)编写一个C++程序,要求用户输入一组整数,直到输入0后停止输入。然后,计算并输出数字中正整数的和。
示例:
请输入正整数(输入0以结束):
总和:16