通过PHP程序快速将一个正整数反转输出
给你一个数1234567,你能不能通过编写某程序输出7654321呢?这就是所谓的反转输出或者说是逆序输出。不知道作为程序员的大家有没有实现的思路?
首先给大家两个思路:
1.递归函数传入正整数,先输出最末尾数字,再除以10用递归函数继续迭代,直到该正整数为0时终止递归。
2.逆序输出一个整数可以对其除10直到其为0为止,并输出其对10取余,最后的结果就是这个整数的逆序。
各位可以先在本地进行练习,然后再对比一下我给出的方法。
下面是我给出的方法:
PHP代码如下:
<?php function reverse_integer($n) { $reverse = 0; while ($n > 0) { $reverse = $reverse * 10; $reverse = $reverse + $n % 10; $n = (int)($n/10); } return $reverse; } print_r(reverse_integer(1234)."<br>"); print_r(reverse_integer(23));
输出结果:
4321 32
相关知识点介绍:
循环语句while:只要指定条件为真,则循环代码块;
x % y :模(除法的余数),x 除以 y 的余数;
x / y : 除,x 和 y 的商;
x * y :乘,x 和 y 的积;
print_r()函数:用于打印变量,以更容易理解的形式展示。
(int)使用示例:
$a=0.99; $b=(int)$a; //$b=0; $a=1.99; $b=(int)$a; //$b=1;
附int相关介绍:
int 是集合 ℤ = {…, -2, -1, 0, 1, 2, …} 中的某个数。
整型值 int 可以使用十进制,十六进制,八进制或二进制表示,前面可以加上可选的符号(- 或者 +)。 可以用 负运算符 来表示一个负的int。
要使用八进制表达,数字前必须加上 0(零)。要使用十六进制表达,数字前必须加上 0x。要使用二进制表达,数字前必须加上 0b。
从 PHP 7.4.0 开始,整型数值可能会包含下划线 (_),为了更好的阅读体验,这些下划线在展示的时候,会被 PHP 过滤掉。
最后给大家推荐最新最全面的《PHP视频教程》~快来学习吧!