在之前的文章《PHP如何输出20世纪的所有闰年》中,我们利用闰年特性,介绍了判断闰年的一种通用算法。这次我们来介绍使用PHP如何判断一个三位数是不是回文数,如何输出全部三位回文数,感兴趣的朋友可以学习了解一下~

首先我们需要了解什么是回文数?

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数,例如(0、1、2、3、4、5、6、7、8、9、11、22、121、656、757、12321、5264625等等)。

那么如果给出一个三位数i,如何判断这个三位数是不是回文数呢?

思想:

我们可以将这个三位数(例如121)的个位、十位、百位上的数,单独取出来,即g、s、b。

然后将 g*100、s*10,在和百位数b相加:g*100+s*10+b;这样会得到一个新的三位数hws。

使用if语句判断i是否等于hws,即可判断出该三位数i是不是回文数了。

因此我们可以给出判断一个三位数是不是回文数的方法

<?phpheader("Content-type:text/html;charset=utf-8");$i=121;$b= intval($i/100);$s= ($i/10)%10;$g= $i%10;$hws=$g*100+$s*10+$b;if($i==$g*100+$s*10+$b){echo $i."是回文数";}else{echo $i."不是回文数";}?>

输出结果为:

121是回文数

既然知道了如何判断一个三位数是不是回文数了,下面增加难度:我们来输出全部三位回文数!

分析:输出全部三位回文数,那就是输出100~999内的回文数;QQ账号交易平台地图因此我们可以使用for循环来限定范围

<?phpheader("Content-type:text/html;charset=utf-8");$num=0;for($i=100;$i<1000;$i++){$b= intval($i/100);$s= ($i/10)%10;$g= $i%10;$hws=$g*100+$s*10+$b;if($i==$g*100+$s*10+$b){echo $i." ";$num++;}}echo "<br><br>三位回文数共有".$num."个";?>

输出结果为:

可以看出,我们在for循环的循环体中,使用一个计数器$num,在每次输出一个三位回文数后,自增1,这样就可以统计出100~999内有多少回文数了。


更多相关文章

  1. html注册页面-表单
  2. GPS NMEA协议,0183 定位数据格式 双模定位:GNXXX GPS+BD 完整版
  3. 「PostgreSQL高级特性」PostgreSQL 数据库的近似算法
  4. (lintcode)第3题统计数字
  5. 我的应用所需权限都已全部打开,定位数据依然不准确?
  6. Java基础编程练习4:求一个长整数的各位数字是多少并输出?
  7. leetcode(4)——寻找两个有序数组的中位数
  8. 分位数回归, Oaxaca分解, Quaids模型, 非参数估计程序
  9. 单链表字符串判断回文

随机推荐

  1. android中ListView滑动变黑的情况
  2. Excessive JNI global references - Andr
  3. Android IPC 机制【1】--简介
  4. Android Studio第三十九期 - popWindows
  5. 【自定义控件】 ------- GridView
  6. android 修改主题背景色
  7. android日历实现
  8. android wiki
  9. android SDK安装后设置环境变量
  10. 类加载器