-6

2017-01-24 3 views
-6
274 ​​
+4

Пожалуйста, прочтите [тур] (http://stackoverflow.com/tour) и [* Как задать хороший вопрос? *] (Http://stackoverflow.com/help/how-to -просить). – Biffen

ответ

0

Вот как это сделать с петлями

int n=10; //This is your Number 
int i = 0; 
for(i=n;i>=1;i--) 
    if((int)Math.sqrt(i)*(int)Math.sqrt(i)==i) 
     break; 
System.out.println(i); 

Ниже, как это работает: -

Петля проходит от n, что является вашим номером, до 1. Затем он проверяет, является ли квадратный корень i, который проходит через n, до 1, является perfect square. Если да, то breaksloop, и печатает значение i на экране.

+0

Спасибо, что очень помог – kago

+0

@kago Если это помогло, выберите его в качестве ответа. –

+0

Я просто поблагодарил вас – kago

2

Как о чем-то вроде следующего, чтобы ты ...

double x = 20; 
double root = Math.sqrt(x); 
int t = (int)root; 
System.out.println("Root is:" + root + " and answer is :" + t*t); 
+0

Это путь ИМХО. –

0
public static void main(String argv[]){ 
     System.out.println(largestSquareLessOrEqualTo(145)); 
    } 

    public static int largestSquareLessOrEqualTo(int limit){ 
    int i = 0; 
     for (; i <(int)Math.sqrt(limit); i++){ 
     } 
     return(i*i); 
    }