Дано целое число а и натуральное (целое неотрицательное) число n. Вычислить а в степени n. Т.е., необходимо составить программу, при исполнении которой значения переменных а и n не меняются, а значение некоторой другой переменной (например, b) становится равным а в степени n. (При этом разрешается использовать и другие переменные.)

Решение. Введем целую переменную k, которая меняется от 0 до n, причем поддерживается такое свойство: b = (a в степени k).

  k := 0; b := 1;
  {b = a в степени k}
  while k <> n do begin
  | k := k + 1;
  | b := b * a;
  end;

Другое решение той же задачи:

  k := n; b := 1;
  {a в степени n = b * (a в степени k)}
  while k <> 0 do begin
  | k := k - 1;
  | b := b * a;
  end;


2009-11-01 • Просмотров [ 1229 ]