精华内容
下载资源
问答
  • Python计算回文数计算1000以内的回文数只能用一个循环怎么做。。。。。。。。。。。。。。。
  • import java.util.Scanner; public class Work2 { public static void main(String[] args) { // TODO Auto-generated ... //计算回文数 //功能描述:输入一个五位正整数,使用数组判断它是不是回文数(例
    package com.jredu.ch05;
    
    import java.util.Scanner;
    
    public class Work2 {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		
    		  //计算回文数 //功能描述:输入一个五位正整数,使用数组判断它是不是回文数(例如12321是回文数) 
    		  //接收一个五位数
    		  Scanner sc=new Scanner(System.in);
    		  int[] num=new int[5];
    		  System.out.println("请输入一个五位数"); 
    		  int n=sc.nextInt(); //把每一位数放到数组中
    		  for(int i=num.length-1;i>=0;i--) {
    			  num[i]=n%10; n/=10; 
    			  } 
    		  //判断是否是回文数
    		  //第一位数字==最后一位数字 
    		  //第二位数字==倒数第二位数字 
    		  for(int i=0;i<num.length/2;i++) {
    		      if(num[i]!=num[num.length-1-i]) { 
    			       System.out.println("这个数字不是回文数");
    		           return; 
    		     } 
    		 } 
    		  System.out.println("这个数字是回文数");
    }
    	}
    

    展开全文
  • java判断回文数

    千次阅读 2017-07-11 22:51:42
    输入一个n位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。 import java.util.Scanner; public class IsPalindrome { public static void main(String[] args) { // TODO Auto-...

    输入一个n位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

    import java.util.Scanner;
    
    public class IsPalindrome {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    /*
    12、一个n位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
    */	
    		Scanner reader=new Scanner(System.in);
    		int a=0;
    		System.out.println("输入回文数a:");
    		a=reader.nextInt();//回文数
    		//计算输入数的位数
    		int count=countNumbersOfBit(a);
    		//求输入数字的最高位对应的基数
    		int tens=cardinalNumber(count);
    		//判断是不是回文数
    		boolean ispalindrome=isaPalindrome(a,count,tens);
    		//如果是回文数那就输出
    		if(ispalindrome) 
    			System.out.println(a+"是回文数!");
    
    	}
    	
    	//统计数字的位数
    	static int countNumbersOfBit(int n) 
    	{
    		int count = 0;
    		while (n > 0) {
    			n = n / 10;
    			count++;
    		}
    		return count;
    	}
    	//计算最高位的基数
    	static int cardinalNumber(int count)
    	{
    		int tens=1;
    		for(int i=0;i<count-1;i++)
    		{
    			tens*=10;
    		}
    		return tens;
    	}
    	/*
    	//判断是不是回文数
    	参数为输入的数a,数a的长度count,数a最高位对应的基数(对应最高位为1其余位补零)
    	*/
    	static boolean isaPalindrome(int a,int count,int tens)
    	{
    		int hight;//最高位
    		int low;//最低位
    		int aa=a;//复制a
    		boolean isPalindrome=true;
    		for(int i=0;i<count/2;i++)//求万位
    		{
    			hight=a/tens;//取得最高位
    //			System.out.println("hight:"+hight);
    			a=a-hight*tens;//减去最高位
    			tens=tens/10;//位数减1
    			//求最低位
    			low=aa%10;
    			aa=aa/10;
    //			System.out.println("low:"+low);
    			if(hight!=low)
    			{
    				isPalindrome=false;//如果不是回文数,让标志位假
    				System.out.println("不是回文!");
    				break;
    			}	
    		}
    		return isPalindrome;
    	}


    展开全文
  • poj2402(计算第k个回文数

    千次阅读 2014-03-26 20:49:27
    题目链接:poj2402 ...首先求出第k位的基数 10^((k-1)/2),再计算出第n个回文数是几位数, 对半后,对前半段进行填数,后半段的只要将前半段反向输出即可 */ #include #include #include #include using n

    题目链接:poj2402

    /*
    题意:
        求第n个回文数
    
    思路:
        不难发现规律,1位和2位的回文数有9个,3位和4位的回文数有90个。。。。
    首先求出第k位的基数 10^((k-1)/2),再计算出第n个回文数是几位数,
    对半后,对前半段进行填数,后半段的只要将前半段反向输出即可
    */
    #include <cstdio>
    #include <cstring>
    #include <iostream>
    #include <algorithm>
    using namespace std;
    #define LL __int64
    const int inf = 0x3f3f3f3f;
    const int N = 2010;
    LL f[30]={0,1,1};
    LL n;
    void solve()
    {
        int i,j;
        int k = 1;//k表示回文串数字的位数
        while(n > f[k]*9)
        {
            n -= 9*f[k++];
        }//n要减去小于k位的所有回文数
        int mid = (k+1)>>1;
        LL ans = 1;
        for(i  = 1, j = 0; i <= mid; i ++)//第一位到中间那一位
        {
            if(i == 1) j = 1;//i为1,因为首位不能为0,所以要从1开始
            else j = 0;//j表示第i位要填的数字
            while(n > f[k])
            {
                n -= f[k];//减去基数
                j ++;
            }
            k -= 2;//除了第i位和i相对称的那一位,中间还有几位
            if(i == 1) ans = j;
            else ans = ans*10 + j;
        }
        printf("%I64d",ans);
        if(k&1) ans /= 10;//位数为奇数,最中间的数只输出一次
        while(ans)
        {
            printf("%I64d",ans%10);
            ans /= 10;
        }
        printf("\n");
    }
    int main()
    {
        int i;
        for(i = 3; i < 30; i ++)
        {
            if(i&1) f[i] = f[i-1]*10;
            else f[i] = f[i-1];
        }
        while(scanf("%I64d",&n),n)
        {
            solve();
        }
        return 0;
    }
    


    展开全文
  • 利用数组来判断一个整数是不是回文 首先我们要搞清楚什么是回文 其次我们要清楚利用什么语句可以实现 这次采取for循环和数组遍历来... * 计算回文数 功能描述:输入一个五位正整数,使用数组判断它是不是回文数(例如1

    利用数组来判断一个整数是不是回文

    首先我们要搞清楚什么是回文

    其次我们要清楚利用什么语句可以实现

    这次采取for循环和数组遍历来做


    package com.jredu.ch04;
    
    import java.util.Scanner;
    
    public class excercise1 {
    
    	/**
    	 * 计算回文数 功能描述:输入一个五位正整数,使用数组判断它是不是回文数(例如12321是回文)
    	 * 
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		// 接收一个五位数
    		Scanner sc = new Scanner(System.in);
    		int[] a = new int[5];
    		System.out.print("请输入一个五位正数:");
    		int num = sc.nextInt();
    		// 把每一位放到数组中
    		/*
    		 * a[0] = num % 10; a[1] = num / 10 % 10; a[2] = num / 100 % 10; a[3] =
    		 * num / 1000 % 10; a[4] = num / 10000 % 10;
    		 */
    		for (int i = a.length - 1; i >= 0; i--) {
    			a[i] = num % 10;
    			num /= 10;
    		}
    		// 判断是否为回文数
    		/*
    		 * for (int i = 0; i < a.length; i++) { if (a[i] == a[a.length - i - 1]) {
    		 * System.out.println("是回文"); return; } else {
    		 * System.out.println("不是回文"); return; } }
    		 */
    		for (int i = 0; i < a.length / 2; i++) {
    			if (a[i] != a[a.length - i - 1]) {
    				System.out.println("不是回文数");
    			}
    		}
    
    		System.out.println("是回文数");
    
    	}
    
    }
    
    代码中有两种方式

    用注释下面的方法可以不用限制整数的位数



    展开全文
  • 编写需求:打印5位数中的所有回文数,并且每行打印5个数。 思路: 1.循环遍历五位数 2.获取每一位五位数的个、十、千、万位 3.判断个位与万位相同,十位与千位相同 举例: 12321是回文数 代码如下: // ...
  • Python中回文数和质数问题的解决

    千次阅读 2019-01-24 15:58:48
    Python中回文数和质数问题的解决一、前言二、实现判断素数的功能三、实现判断回文数的功能五、总结 一、前言 今天学习视频时课后作业是找出1000以内既是素数又是回文数的数,写代码这个很容易,结果一运行遇到了bug...
  • 素数回文数的个数

    千次阅读 2019-01-05 17:44:12
    描述 求11到n之间(包括n),既是素数又是回文数的整数有多少个。 ...在判断回文数时,可以利用取模分离各个数位,逆序构造数,看逆序和正序的数是否是同一个,如果是,那么这个数就是回文数 ...
  • python三种方式判断回文数

    千次阅读 2020-05-09 21:40:59
    若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。 解题思路 一、将输入的数字转换为字符串 1.利用字符串中的pop()方法【双向...
  • 关于生成回文数

    千次阅读 2012-11-27 12:01:46
    如:98789, 这个数字正读是98789,倒读也是98789,正读倒读一样,所以这个数字就是回文数。 具体可以看百科回文数介绍 百科回文数 计算机来求多少数之间的回文数,通常采用两种方法,一种是穷举,一种是根据回文数...
  • 西普实验吧CTF-双基回文数

    千次阅读 2016-03-17 12:55:42
    双基回文数:一个数的n进制(2≤n≤10)是回文数的至少存在2种,则这个数是双基回文数,代码: using System; using System.Collections.Generic; namespace a1 { class Program { public static bool Judge...
  • Python实现三位数字的所有回文数

    千次阅读 2016-04-14 23:37:21
    Python实现三位数字的所有回文数
  • C语言求回文数

    千次阅读 2019-07-30 16:03:43
    256)的其平方具有对称性质的(也称回文)。 代码如下: #include <stdio.h> int main() { int i,tem,k,a,b; for(i=1;i<256;i++) { b=i*i;//求平方 for(tem=b,k=0;tem>0;tem/=10)//循环 ...
  • 问题链接:POJ NOI0113-05 素数回文数的个数。 原题出处:PKU2928 素数回文数的个数。 总时间限制:1000ms内存限制: 65536kB 描述 求11到n之间(包括n),既是素数又是回文数的整数有多少个。 输入一个大于11...
  • 题目: 编写一个函数,求一个数字是否是...(2)再用首位数字和末尾数字进行判断,如果不相等,直接判断不是回文数,如果相等那么再将首位数字和末尾数字去除,再循环上述方法进行判断 源码: 运行结果如下: ...
  • 判断一个整数是否为回文数

    万次阅读 2015-05-11 22:04:22
    例如12121是回文数,而1231不是回文数。回文数定义为可以以中间某个数字对称,或者间隔对称,例如123321,或者1234321。详细的回文数介绍请参考维基百科:http://en.wikipedia.org/wiki/Palindromic_number ...
  • 所有五位回文数

    千次阅读 2019-02-18 11:44:15
    10301是个5位的素数。它有个特点,把数字倒过来还是它本身,...请填写这个表示个的整数,注意不要写任何其它多余的内容,比如说明或解释文字,也不要列出所有的回文素数。 public static void main(String[] arg...
  • 查看所有50道基础算法题请看: Java的50道基础算法题 package Demo25Palindrome; import java.util.Scanner;...即12321是回文数,个位与万位相同,十位与千位相同。 */ /* 分析:所谓回文,就是正着念跟...
  • Python 练习:四种方法实现回文数

    千次阅读 2018-04-18 23:52:21
    题目:回文数的定义,反转过来后的数字同原数相等,如121,12321。写一个算法判断1-99999之间的数字,有多少个回文数,输出并统计总个数。
  • 判断一个正整数是否为回文数

    千次阅读 2019-01-23 11:44:32
    为了大家更好了解,在看回文数之前我们先来看一个这样的问题: 从键盘输入任意一个正整数,编程计算这个正整数每一位数字相加之和。例如输入1234,先分离出1,2,3,4,然后再计算1+2+3+4=10,并输出10。 我们...
  • 五位质数回文数

    千次阅读 2018-02-02 14:54:05
    10000≤a≤b≤99999),找出这两个之间(包含这两个本身)所有即是质数又是回文 #include using namespace std; int main(){  int a,b;  bool t = true;  cin>>a>>b;  int
  • 1000以内所有回文数

    千次阅读 2016-12-12 19:43:57
     问题及代码: 烟台大学计算机与控制工程学院 作者:毕春超 完成日期:2016年12月12日 题目描述 #include int main() { int i,k,m,n; for(i=1;i { k=0; m=i;  while(m>0) ...}
  • c语言求回文数的三种算法的描述

    千次阅读 2019-09-22 03:27:43
    c语言求回文数的三种算法的描述 题目描述 注意:(这些回文数都没有前导0) 1位的回文数有0,1,2,3,4,5,6,7,8,9 共10个; 2位的回文数有11,22,33,44,55,66,77,88,99 共9个; * 请问:n位的回文数...
  • JAVA实现判断回文数

    千次阅读 2016-04-14 13:27:00
    从控制台输入一个,如果是回文输出是,不是回文输出否。package a1;import java.util.Scanner;public class HuiWenShuClass { public static void main(String[] args) { // TODO Auto-generated method stub...
  • 问题描述:输出10000以内的所有回文数(例1221,12321都是回文数,正着看,倒着看,是同一个数) 文件名称:第十周课后作业——输出10000以内回文数1 作者:何知令 发表时间:2016年11月8日 输入:无 输出:输出...
  • Java之判断回文数

    千次阅读 2013-01-22 16:05:19
    回文数是指将该数含有的数字逆序排列后得到的数*和原数相同,例如12121、3223都回文数。代码附后。 * 算法说明: * 程序头部的注释结束 */ import javax.swing.JOptionPane; public class TestNumber { public ...
  • 算法系列——打印回文数

    千次阅读 2015-09-07 11:31:09
    回文判定是学习程序设计和初等算法设计的时候,经常会遇到的题目,对于回文的判定算法包含了算法过程设计的朴素思想。
  • EularProject 36:2进制和10进制回文数

    千次阅读 2015-07-29 23:07:09
    天津大学认知计算与应用重点实验室 完成日期:2015/7/29Double-base palindromes Problem 36 The decimal number, 585 = 10010010012 (binary), is palindromic in both bases.Find the sum of all numbers, less...
  • 1000以内的所有回文数

    千次阅读 2013-11-18 12:00:55
    11.* 问题描述:1000以内的所有的回文 12.* 程序输入:略  13.* 程序输出:略 14.* 算法设计:略 include using namespace std; int reverse(int a) {  int b=0,c;  while(a>0)  ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 435,380
精华内容 174,152
关键字:

怎么计算回文数