编程1

小易有一个圆心在坐标原点的圆,小易知道圆的半径的平方。小易认为在圆上的点而且横纵坐标都是整数的点是优雅的,小易现在想寻找一个算法计算出优雅的点的个数,请你来帮帮他。
例如:半径的平方如果为25
优雅的点就有:(+/-3, +/-4), (+/-4, +/-3), (0, +/-5) (+/-5, 0),一共12个点。 

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
  Scanner sc = new Scanner(System.in);
  int b = sc.nextInt();
  getPoint(b);
  }

  public static void getPoint(int x) {
  int count = 0;
  for (int i = 1; i * i < x; i++) {
    int b = (int) Math.sqrt(x - i * i);
    if (i * i + b * b == x) {
    count++;
    }
  }
  count = count * 4;
  int c = (int) Math.sqrt(x);
  if (c * c == x) {
    count = count + 4;
  }
  System.out.println(count);
  }
}

原文地址:https://www.cnblogs.com/kimyong/p/5921207.html