en.javascript.info/1-js/3-writing-js/2-coding-style/1-style-errors/solution.md
Ilya Kantor 87bf53d076 update
2014-11-16 01:40:20 +03:00

1.6 KiB
Raw Blame History

Ответ

Вы могли заметить следующие недостатки, сверху-вниз:

function pow(x,n)  // <- отсутствует пробел между аргументами
{  // <- фигурная скобка на отдельной строке
  var result=1;   // <- нет пробелов вокруг знака =
  for(var i=0;i<n;i++) {result*=x;}   // <- нет пробелов
  // содержимое скобок { ... } лучше вынести на отдельную строку
  return result;
}

x=prompt("x?",'')  // <- не объявлена переменная, нет пробелов, ;
n=prompt("n?",'')
if (n<0)  // <- нет пробелов, стоит добавить вертикальную отбивку
{   // <- фигурная скобка на отдельной строке
  // ниже - слишком длинная строка, нет пробелов
  alert('Степень '+n+'не поддерживается, введите целую степень, большую 0');
} 
else // <- можно на одной строке } else { 
{
  alert(pow(x,n))  // нет точки с запятой
}

Исправленный вариант:

function pow(x,n)  {
  var result = 1;  
  for(var i = 0; i < n; i++) {
    result *=x;
  }       
  return result;
}

var x = prompt("x?", "");
var n = prompt("n?", "");

if (n < 0) {
  alert('Степень ' + n + 
    'не поддерживается, введите целую степень, большую 0');
} else {
  alert( pow(x, n) );
}