Напишите функцию double power(double a, int n), вычисляющую значение a^n - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Чем мой код отличается от библиотечной функции

pow()

?
Листинг программы
  1. #include <stdio.h>
  2. double power(double a, unsigned n)
  3. {
  4. int i;
  5. double pow = a;
  6. if (n == 0.0)
  7. pow = 0.0;
  8. else
  9. for (i = 1; i < n; ++i)
  10. pow *= a;
  11. return pow;
  12. }
  13. int main()
  14. {
  15. unsigned n;
  16. double a;
  17. scanf("%lf%d", &a, &n);
  18. printf("%f\n", power(a, n));
  19. return 0;
  20. }
Просто решил сдать задачу в тестирующую систему: мой код система не принимает (пишет, что моя программа выдаёт 2 неправильных ответа из 22), а эта программа нормально проходит все 22 теста:
Листинг программы
  1. #include <stdio.h>
  2. #include <math.h>
  3. double power(double a, unsigned n)
  4. {
  5. return pow(a, n);
  6. }
  7. int main()
  8. {
  9. unsigned n;
  10. double a;
  11. scanf("%lf%d", &a, &n);
  12. printf("%f\n", power(a, n));
  13. return 0;
  14. }
Не могу понять, что не так в моей программе.

Решение задачи: «Напишите функцию double power(double a, int n), вычисляющую значение a^n»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <math.h>
  3. #include <conio.h>
  4. double Power(double a,double b){
  5. return exp(b*log(a));
  6.  
  7. }
  8. int main(){
  9. printf("%f",Power(2,5));
  10. getch();
  11. return 0;
  12.  
  13. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы