Задача.
Даны значения чисел [latex]n ,[/latex] [latex] a .[/latex]Вычислить!!!!!!!!!!!!!!!!!!!!!!!!!!!
Тесты
Ввод: | 3 2 | 6 4 | 10 2 |
Вывод: | 36 | 504 | 1100 |
Код программы
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
/* package whatever; // don't place package name! */ import java.util.*; import java.lang.*; import java.io.*; /* Name of the class has to be "Main" only if the class is public. */ class Ideone{ public static void main (String[] args) throws java.lang.Exception{ float n,a; float sum = 0; Scanner sc = new Scanner(System.in); sc.useLocale(Locale.US); while (sc.hasNextFloat()){ n = sc.nextFloat(); a = sc.nextFloat(); sum = n * a; for (int i = 1; i < n; i++){ sum = sum * a; } System.out.println(sum); } } } |
Вводим два числа [latex]n[/latex],[latex]a[/latex] и [latex]sum[/latex] . Задаем цикл и суммируем до тех пор, пока [latex] i [/latex]не будет равно значению [latex]n[/latex].
— Исправьте знак меньше в коде.
— Не используйте функцию pow(). Она нужна для возведения в нецелую степень. Вам нужно просто домножать на [latex]a[/latex] очередное слагаемое.
— Понимаю, что всё очевидно, но сделайте хоть короткое описание.
Пожалуйста, уберите «!!!!!!!!!!!!!!!!!!!!!!!!!!!» в условии задачи, перечитайте второе замечание предыдущего комментария и придумайте как избавиться от вложенного цикла.
На случай, если это не получится, рискну предложить наводящий вопрос. Если Вам известно, что [latex] 2^{10}=1024,[/latex] то как вычислить [latex]2^{11}[/latex] не прибегая к утомительному возведению в степень?