构造一个四位数,前两位和后两位分别相等,但不完全相等,且该数是一个数的平方

//构造一个四位数,前两位和后两位分别相等,但不完全相等,且该数是一个数的平方
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,k;
int m;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
if(i!=j)
{
m=1000*i+100*i+10*j+j;
for(k=31;k*k<m;k++);//用空语句,判断该数是否存在,若存在则k*k==m;或者min=sqrt(1100),max=sqrt(9988)
if(k*k==m)
printf("Lorry number:%d\n",m);
}
return 0;
}

 

时间: 2024-09-13 08:03:31

构造一个四位数,前两位和后两位分别相等,但不完全相等,且该数是一个数的平方的相关文章

c-水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身

问题描述 水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身 水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3+ 3^3 = 153) 输出10000以内的水仙花数 解决方案 http://zhidao.baidu.com/question/402541959.html 其中1000修改为10000即可 解决方案二: #include <stdio.h> void fun(int n) {

0~9十个数,每个数只能使用一次,组成两个三位数相加和为四位数的算法

这几天上网,看到百度里面有人问这一道题目,0~9十个数,组成如下加法式 *** + *** = ****,每个数字都只能使用一次,问一共多少中组合? 今天,就用C#语言来写一下,解出这道题,其他语言算法相同,只是语法不同,这里由于时间关系,不再贴出代码. 针对大家提出的优化建议,已经将优化方案写出,下面是具体优化方案: 这里先讲解一下思路,首先我们是程序员,不是数学家,我们是站在编程的角度思考问题.这里是两个三位数相加,得到一个四位数,所有数字不能重复,最大的和应该为987 + 654 = 16

编号一个12位数,前8位为默认日期,后四位由0001开始

问题描述 编号一个12位数,前8位为默认日期,后四位由0001开始此编号每天都要重0001开始.如:2010-12-30编号是由2010123000012011-12-31编号是由201012310001数据库用的是oracle,请教大家有什么好的方式来生成编号吗 解决方案 解决方案二:建个辅助表比如只存id1自增id2就是你要的编号id2就是根据id1和日期组合的存进表里.然后这就得到你想要的编号了,在放的实际需要的表上spring写个定时任务,每天0点将辅助表清空解决方案三:手动改!对ID进

如何把文本里的每条数据后两位截掉,然后读到另一个文本里

问题描述 如何把文本里的每条数据后两位截掉,然后读到另一个文本里 现在有一个数据量比较大的文本文档,但是每行都多了两位,有什么dos命令,或者bat写法可以实现吗? 解决方案 FileIN 你的文本 @echo off &setlocal (for /f "delims=" %%a in (FileIN.txt) do ( set "line=%%a" setlocal enabledelayedexpansion set "line=!line:

javascript-用js怎么把一个13位数的每一位放到数组里!

问题描述 用js怎么把一个13位数的每一位放到数组里! 用js怎么把一个13位数的每一位放到数组里!求高手帮帮忙.急等!!!! 解决方案 var s = "rewrewtert"; var arrayObj = new Array(); for(var i in s){ arrayObj.push(s[i]); } console.info(arrayObj); 解决方案二: 先将一串数字转化为字符串,循环,每次循环调用字符串的方法indexOf,得到的字符转换会数字保存在新数组中 解

c语言-一个字节数据存储到四个字节里,高三个字节位里面会是什么?

问题描述 一个字节数据存储到四个字节里,高三个字节位里面会是什么? 其实就是这句C语言代码怎么解释: char c = 128; printf("%dn", c); //输出-128 printf("%dn", 128); //输出128 那个,我的想法是这样的: Int类型的128的二进制是1000 0000(忽略前面24个0),储存到char类型里面之后不应该还是1000 0000吗?然后用printf输出一个四字节(第二行代码),为什么就变成-128了呢?如果

怎么用sql语句取一个整数的后两位

问题描述 怎么用sql语句取一个整数的后两位 我想取一个数的后两位,比如12345678,我只想要78 这两个,各位有没有哦什么办法... 解决方案 居然有人用right,真是来坑lz的吧 这个很简单, select num % 100就可以了 也就是整除100取余数 解决方案二: select mod(col,100) from test; 解决方案三: substring(col,6,2) 解决方案四: 楼上的方法都可以解决,但是直接取余数的是最方便的.. 解决方案五: select rig

编程语言-c#实现两个相差一千位以内的整数相加,写出这样一个方法并测试两个相差一百位以上的两个数,输出结果。

问题描述 c#实现两个相差一千位以内的整数相加,写出这样一个方法并测试两个相差一百位以上的两个数,输出结果. (如:111111111111111111111111111110 + 8 ) 解决方案 如果是.NET 4.0(VS2010),不需要写什么方法,直接调用BigIntegerhttps://msdn.microsoft.com/zh-cn/library/system.numerics.biginteger.aspx 解决方案二: 2000位的整数也不在话下,加减乘除都能做.

c++读取csv文件并赋值-如何通过c ++读取一个csv文件并将数据赋值给两个一位数组?

问题描述 如何通过c ++读取一个csv文件并将数据赋值给两个一位数组? 0 912.43 1.24 912.42 1.54 901.92 21.94 883.97 24.17 881.51 29.94 876.45 37.4 870.57 49.62 861.14 59.06 853.05 75.99 843.75 90.84 833.95 118.8 818.25 135.2 804.9 152.35 791.55 157.68 791.15 174.6 770.35 190.92 766.