信息学奥赛C++语言: 趣味整数5(勾股数)
生活随笔
收集整理的這篇文章主要介紹了
信息学奥赛C++语言: 趣味整数5(勾股数)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【題目描述】
輸入兩個正整數A 和 B(1<=A<=B<=1000),求A~B的所有勾股數。
什么是勾股數?勾股數就是所謂勾股數(三個數一組的),是指能夠構成直角三角形三條邊的三個正整數(a,b,c)。根據“勾股數”定義,所求三角形三邊應滿足條件a2+b2=c^2 比如:3 4 5 // 32+42=5^2 每行一組勾股數,兩兩用一個空格隔開。注意輸出嚴格:A<=a<=b<=c<=B,首先按a從小到大順序,接著再考慮b,再考慮c
【輸入】
一行輸入A、B兩個數。
【輸出】
依次輸出A~B范圍內的勾股數,一行輸出一組
【輸入樣例】
2 20
【輸出樣例】
3 4 5
5 12 13
6 8 10
8 15 17
9 12 15
12 16 20
代碼
#include<cstdio> using namespace std; int a,b; int main() {scanf("%d%d",&a,&b);for(int i=a;i<=b;i++){for(int j=i;j<=b;j++){for(int n=j;n<=b;n++){if(i*i+j*j==n*n)printf("%d %d %d\n",i,j,n);}}}return 0; } 新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的信息学奥赛C++语言: 趣味整数5(勾股数)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Super Jumping! Jumpi
- 下一篇: 信息学奥赛C++语言:删除试题