周小小今天开始学习平方运算和开方运算了,老师布置了一道利用平方和开方来求解方程式的作业。如果这题让你来做,如何求解?
输入格式:
输入有多行,每行一个正整数n,要求计算x * x+y * y=n的不同的正整数解(x<=y)。
输出格式:
按照指定格式输出所有不同的解,输出格式为:No 1: 1 * 1 + 2 * 2 = 5。不同n的解之间加一个空行分隔,如果有多组解,按照x从小到大顺序输出结果。
样例">样例">样例">样例">样例">输入样例:
5
50
输出样例:
No 1: 1 * 1 + 2 * 2 = 5
No 1: 1 * 1 + 7 * 7 = 50
No 2: 5 * 5 + 5 * 5 = 50
代码(注意输出样例中的空行是两个输出间有一个空行)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]) {
int n,j=1;
while(scanf("%d",&n)!=EOF){
if(j!=1) printf("\n");
int x,y,i=0;
for(x=1;x<=sqrt(n);x+&#