2015-10-27 2 views
0
public class Solution { 

    public static void main(String[] args) { 
     Scanner sc=new Scanner(System.in); 
     int t=sc.nextInt(); 
     for(int i=0;i<t;i++) 
      { 
      double a=sc.nextInt(); 
      double b=sc.nextInt(); 
      double n=sc.nextInt(); 
      double result=0; 
      for(int j=0;j<n;j++) 
      { 
      double power; 
      double m; 
      power = Math.pow(double m, double n); 
      double result = result+power*b; 

      System.out.println(result); 
      } 


     } 

компилятор говорит .class требуется в заявлении «power = Math.pow(double m, double n);» что же я скучаю в этом заявлении ... спасибоя обнаружил ошибку при использовании POW метода java.lang.Math

ответ

3

Вы не указываете типы аргументов при вызове метода.

Изменить

power = Math.pow(double m, double n); 

в

power = Math.pow(m, n); 

Вы должны, однако, дать начальное значение m, или код не будет проходить компиляцию.

+0

спасибо, что было полезно –

1

В коде содержатся различные ошибки или ошибки. Я пройду через них сверху вниз.

  1. Ваша переменная a не используется. Вы можете удалить всю double a=sc.nextInt(); линии, не затрагивая вашу программу

  2. Вашего переменной m не инициализирована, и не имеет значения, когда вы используете его в первый раз

  3. При вызове методы вы не указать типы данных , Типы данных будут взяты из переменных, которые вы передаете в этот метод. Таким образом, могут быть методы с тем же именем, но с разными типами данных в списке параметров. Представьте себе метод int sum(int a, int b) с параметрами a и b, которые должны быть целочисленного типа. Вы легко можете себе представить, что может быть ситуация, когда вы не хотите суммировать целые числа, но удваиваете. Таким образом, вы можете искать метод double sum (double a, double b), и вы можете использовать этот метод так же, как первый, но на этот раз для переменных/литералов двойного типа. Как я уже писал, вы не записываете типы данных параметров, которые вы передаете в метод, потому что они определяются автоматически. Таким образом, ваш Math.pow(..) вызова должен выглядеть power = Math.pow(m, n);

  4. Вашего код не хватает два } в конце (для основного метода и класса)

  5. Попробуйте использовать самоописываемые имена для переменных. Счетчик с именем i может быть в порядке, но вы можете легко переименовать m в base и n в exponent, и ваша программа будет автоматически легче читать.