1樓:
var__i:longint;
begin
__for i:=32 to 99 do
____if (i*i div 1000=(i*i mod 1000) div 100)and((i*i) mod 10) then
______writeln(i*i);
end.
列舉她的算數平方根,得到它本身,並判斷前兩位是否相同、後兩位是否相同。
(ms我最近總是看錯題,剛才就看錯了)
2樓:
program bamboobrook;
var i,j,x:longint;
begin
for i:=1 to 9 do//列舉前兩位for j:=0 to 9 do//列舉後兩位begin
x:=i*1100+j*11;//組成四位數if(sqr(trunc(sqrt(x)))=x)then//sqr:平方;trunc:去尾;sqrt:開平方;
writeln(x);
end;
end.
臨時編的,應該沒問題
3樓:匿名使用者
什麼意思呀
難道1122這樣子是允許的麼?
4樓:世界__我的
var i,k,s:longint;
ss:string;
begin
while not eof do
begin
for i:=1100 to 9999 dobegin
str(i,ss);//轉為字串,進行要求的匹配if (ss[1]=ss[2])and(ss[3]=ss[4]) then
begin//如果上述成立,判讀是否為完全平方數k:=trunc(sqrt(i));
if k*k=i then writeln(i);
end;
end;
readln;
end;
end.
用c++程式設計求出乙個四位完全平方數,前兩個數字相同,後兩個數字相同。
5樓:匿名使用者
【解題思路】
乙個數若能表示成某個整數的平方的形式,則稱這個數為完全平方數。比如:0,1,4,9,16,25,……。
本題有兩個關鍵點:第乙個是找出四位數的完全平方數;第二個是判斷這個完全平方數是不是前兩位相同,並且後兩位也相同。
第乙個問題比較簡單,四位數是從1000到9999之間,但是不需要從1000開始乙個乙個去判斷是否完全平方數,這樣做要檢測9000個,每個數還要看看是不是完全平方數,計算量很大。事實上只需要從32開始到99,逐個取平方就可以得到所有四位數的完全平方數。(因為31的平方是三位數,而100的平方是五位數,所以只需要在32到99的平方數中乙個個找下去就可以了)。
第二個問題可以巧妙利用c語言中的取餘運算子%和整型變數除法規則來實現。比如要對1234進行上述比較,可以先把1234分成兩截,辦法如下:int a=1234/100;int b=1234%100;因為c語言中整數除法會自動忽略小數部分,所以int a=1234/100的結果就是a=12;而取餘運算子是得到餘數,所以int b=1234%100的意思就是1234除以100的餘數,結果就是b=34,這樣就成功把1234分成12和34兩段,然後再分別判斷a和b個位和十位是否相同就可以了。
判斷的方法如下:if(a/10==a%10),因為a/10會得到a的十位數,而a%10會得到a的個位數,所以只要這兩個相等,就說明a的個位和十位相同,因此上題的具體**如下:
【程式**】
#include //控制台操作標頭檔案
int main() //主函式
//輸出這個四位數的完全平方數
printf("\n"); //換行
system("pause"); //螢幕暫停,以便看到顯示結果
return 0;} //結束程式
【執行結果】
以上程式在dev c++中執行通過,執行結果是只有7744這個數符合要求,它是88的平方。具體截圖如下:
6樓:
不應該很複雜——
//#include "stdafx.h"//vc++6.0加上這一行.
#include "stdio.h"
void main(void)
7樓:匿名使用者
#include
#include
void main()
}7744=88*88
8樓:匿名使用者
#include
#include
using namespace std;
int main()
}return 0;}
9樓:匿名使用者
#include
int main()}
10樓:匿名使用者
這個應該可
以:#include
#include
using namespace std;
bool judge(float s)
int main()}}
for(int i=0;i cout< return 0;} for和while 乙個四位數是完全平方數,且它的前兩位數字相同,後兩位數字也相同,求這個四位數是 11樓:匿名使用者 while(1000
while(1000
乙個四位整數,前兩位相同,後兩位相同,並且是乙個完全平方數,這個四位數是多少??求解題思路 12樓:匿名使用者 因為它是乙個完全平方數,所以可以設它是k平方,那麼就有k*k = 1100a + 11b, 所以k*k必須是11的倍數,所以k必須是11的倍數, 只剩下33,44,55,66,77,88,99這麼幾個數了, 1100a + 11b / 11 => 100a + b 100a + b 寫成 a0b,它也必須是11的倍數, a0b/11 其中十位只能是a-1,然後餘數是 11-a, 而b必須跟這個餘數相同,因為(11-a)b要被11整除, 所以a+b = 11,那麼只剩下 2299, 3388, 4477, 5566 (高低可以交換) 顯然33和44立刻被排除,因為最小也要是2299,不可能達到, 於是只剩下55,66,77,88,99的平方了, 99的平方公尺末尾是1,所以立刻被排除, 只剩下55,66,77,88 要湊成 2299,3388,4477,5566(高低可交換) 55的平方,一定是25的倍數,所以排除 只剩下66,77,88 要湊成 2299,3388,4477,5566(高低可交換) 66的平方一定是9的倍數,但是a+b=11,所以不可能被9整除 所以只能是77或者88了,如果是77,則一定是2299,因為7的平方末尾一定是9,顯然不對, 那麼只剩下88了,88*88 = (90-2)*(90-2) = 8100 - 4*90 + 4 = 8104 - 360 = 7744 所以這個數是7744 13樓:匿名使用者 7744=88平方 四位數7744 乙個四位數字,前兩個數字相同,後兩個數字相同,且這個四位數是乙個整數的平方,請程式設計球這個數,用c++ 14樓:匿名使用者 #include #include using namespace std;int main()return 1;} 15樓:匿名使用者 **: #include #include void main() }} 圖: 已知乙個數是完全平方數,並且前兩位數字相同,後兩位數字也相同,這四位數是______ 16樓:情緒控 四位製數可以表示成: a×1000+a×100+b×10+b, =a×1100+b×11, =11×(a×100+b); 因為a×100+b必須被11整除,所以a+b=11,代入上式得: 四位數=11×[a×100+(11-a)],=11×(a×99+11), =11×11×(9a+1); 只要9a+1是完全平方數就行了. 由a=2、3、4、5、6、7、8、9驗證得,9a+1=19、28、27、46、55、64、73.所以只有a=7乙個解,則b=4. 因此四位數是7744=112 ×82 =88×88.故答案為:7744. a,c都是乙個4位完全平方數;b是乙個4位數,且每一位的數字都相同.已知c=a-b,請程式設計求出所有這樣的a,b,c組合 17樓:匿名使用者 平方數是從32到99 最簡單的就是直接使用for迴圈了 bool equal(int sum) ;for(int i=0;i<9;i++)if(sum == hehe[i]) return true; return false; }for(int i=32;i<=99;i++)int a = i**i; for(int j=32;j<99;j++)int c = j**j; if(a 差不多偽**就這樣的 18樓:旅初彤 #include using namespace std; void main()}}} 5 3 15 4 5 是乙個四位數在括號裡填上合適的數字使這個四位數既是三的倍數又是二的倍數有15種不同的填法。17種先把個位確定出bai來,duzhi因為是2的倍數dao,所以個位只能是0,2,4,6,8當個位是0時,版 百位可以是權0,3,6,9共四種 當個位是2時,百位可以是1,4,7共3種 ... 人民幣前三位相同中間三位相同後兩位相同55577722 就是普通bai號碼,當個愛好收藏還行!du搞錢zhi幣收藏的人都是為了尋找dao稀缺錢幣本身版,而不是這種無意義的權號碼。有興趣到古玩市場,郵幣市場轉轉就了解了。都是在買賣稀缺,老版或者有公升值潛力的特定年份的紙幣。這種號碼也至多實在愛好者中交... 手機號的後四位數是這後四位是很重要的,是代表每個人的手機號碼,一般情況下是不可以透露的 以後去之後的後四位數的話 一般是用於驗證的時候輸入銀行卡 驗證的時候可以回去 手機號的後四位數怎麼了?有什麼問題嗎?能否說的詳細一些,這個問題問得太寬泛了,沒法回答 你好,手機號的後四位數是誰的?手機號的後四位數...是四位數在括號裡填上合適的數字使這個四位數既是三
人民幣前三位數與後三位相同中間兩位相同有沒有收藏價值
手機號的後四位數嗎,手機號碼後四位什麼數字好?