Chương trình tính toán sức mạnh bằng cách sử dụng đệ quy
#include <stdio.h> int power(int n1, int n2); int main() { int base, a, result; printf("Enter base number: "); scanf("%d", &base); printf("Enter power number(positive integer): "); scanf("%d", &a); result = power(base, a); printf("%d^%d = %d", base, a, result); return 0; } int power(int base, int a) { if (a != 0) return (base * power(base, a - 1)); else return 1; }Đầu ra
Enter base number: 3 Enter power number(positive integer): 4 3^4 = 81Bạn cũng có thể tính toán sức mạnh của một số bằng một vòng lặp.
Nếu bạn cần tính toán công suất của một số được nâng lên một giá trị thập phân, bạn có thể sử dụng hàm thư viện pow ().
Làm thế nào để bạn tìm thấy sức mạnh của một số sử dụng chức năng POW trong C?
#include <iostream> using namespace std; int calculatePower(int, int); int main() { int base, powerRaised, result; cout << "Enter base number: "; cin >> base; cout << "Enter power number(positive integer): "; cin >> powerRaised; result = calculatePower(base, powerRaised); cout << base << "^" << powerRaised << " = " << result; return 0; } int calculatePower(int base, int powerRaised) { if (powerRaised != 0) return (base*calculatePower(base, powerRaised-1)); else return 1; }2*1 = 2 & nbsp; & nbsp; Mạnh & nbsp; sức mạnh (2,1)
Enter base number: 3 Enter power number(positive integer): 4 3^4 = 812*2 = 4 & nbsp; & nbsp; Mạnh & nbsp; sức mạnh (2,2)
2*4 = 8 & nbsp; & nbsp; sức mạnh (2,3) & nbsp;
result = pow(base, exponent);Chương trình C này là tìm sức mạnh của một số sử dụng đệ quy. Ví dụ nếu cơ sở là 2 và số mũ là 3 thì công suất của một số là 23 & nbsp; = 8. Chúng tôi bao gồm một trường hợp cơ sở, tức là khi số mũ bằng 0 sau đó & nbsp; chúng tôi trả lại 1 và một trường hợp không cơ sở, tức là nhân cơ sở với cuộc gọi đệ quy với sức mạnh với exuropnent & nbsp; giảm 1. Lấy đầu vào làm cơ sở = 2 và power = 3 Chúng tôi nhập chức năng Power () int power (int b, int e) B = 2 và E = 3 if (e == 0) saifalseC chương trình để tìm sức mạnh của một số sử dụng đệ quy
Hợp lý
Chạy khô của chương trình
else
Trả lại (B*Power (B, E-1)); tức là & nbsp; return (2*power (2,3-1)); tức là & nbsp; return (2*power (2,2));return (2*power(2,2));
Một cuộc gọi đệ quy [Power (2,2)]
if (e == 0) saifalse
else
Trả lại (B*Power (B, E-1)); tức là & nbsp; return (2*power (2,3-1)); tức là & nbsp; return (2*power (2,2));return (2*power(2,1));
Một cuộc gọi đệ quy [Power (2,2)]
if (e == 0) saifalse
else
Trả lại (B*Power (B, E-1)); tức là & nbsp; return (2*power (2,3-1)); tức là & nbsp; return (2*power (2,2));return (2*power(2,0));
Một cuộc gọi đệ quy [Power (2,2)]
Trả lại (B*Power (B, E-1)); tức là & nbsp; return (2*power (2,2-1)); tức là & nbsp; return (2*power (2,1));true
Một cuộc gọi đệ quy [Power (2,1)]
Trả lại (B*Power (B, E-1)); tức là & nbsp; return (2*power (2,1-1)); tức là & nbsp; return (2*power (2,0));
Một cuộc gọi đệ quy [Power (2,0)]
if (e == 0) true
2*2 = 4 & nbsp; & nbsp; Mạnh & nbsp; sức mạnh (2,2)
2*4 = 8 & nbsp; & nbsp; sức mạnh (2,3) & nbsp; ….final answer
Chương trình
#include <stdio.h> int power(int b,int e) { if(e==0) return 1; else return (b*power(b,e-1)); } void main() { int base,exponent; printf("Enter the base\n"); scanf("%d",&base); printf("Enter the exponent\n"); scanf("%d",&exponent); printf("Power(%d^%d) = %d\n",base,exponent,power(base,exponent)); }Đầu ra
Đây là một chương trình C để tìm sức mạnh của một số sử dụng đệ quy. Mô tả vấn đề Chương trình C sau đây, sử dụng đệ quy, tìm thấy sức mạnh của một số. Giải pháp vấn đề Công suất của một số là số nhân với số lần nó được nâng lên ví dụ: 73 là 343 Chương trình/mã nguồn Dưới đây là mã nguồn của chương trình C để tìm một phần tử trong danh sách được liên kết. Chương trình C được biên dịch thành công và chạy trên một hệ thống Linux. Đầu ra chương trình cũng được hiển thị dưới đây. /*
* C Program to find Power of a Number using Recursion
*/
#include <stdio.h>
long power (int, int);
int main()
{
int pow, num;
long result;
printf("Enter a number: ");
scanf("%d", &num);
printf("Enter it's power: ");
scanf("%d", &pow);
result = power(num, pow);
printf("%d^%d is %ld", num, pow, result);
return 0;
}
long power (int num, int pow)
{
if (pow)
{
return (num * power(num, pow - 1));
}
return 1;
} Giải thích chương trình
Trong chương trình C này, chúng tôi đang đọc một số và sức mạnh của nó bằng cách sử dụng các biến ‘Num và‘ POW, tương ứng. Hàm Power () được sử dụng để tìm sức mạnh của một số sử dụng đệ quy.
Công suất của một số là số được nhân với số lần nó được nâng lên ví dụ: 73 là 343. Sử dụng câu lệnh IF IF, hãy tính công suất của một số. Nhân số lượng với số lần công suất tăng và trả về giá trị. In sức mạnh của một số bằng cách sử dụng câu lệnh printf.
Trường hợp kiểm tra thời gian chạy
$ cc pgm30.c $ a.out Enter a number: 456 Enter it's power: 3 456^3 is 94818816
Sê -ri Giáo dục & Học tập toàn cầu Sanfoundry - 1000 chương trình C.
Tại đây, danh sách các cuốn sách hay nhất trong lập trình C, cấu trúc dữ liệu và thuật toán
Bước tiếp theo:
- Nhận Giấy chứng nhận miễn phí trong chương trình C
- Tham gia cuộc thi chứng nhận lập trình C
- Trở thành người xếp hạng hàng đầu trong chương trình C
- Thực hiện các bài kiểm tra lập trình C
- Các bài kiểm tra thực hành theo chương: Chương 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10
- Các bài kiểm tra giả chương: Chương 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10,
Manish Bhojasia, một cựu chiến binh công nghệ với hơn 20 năm @ Cisco & Wipro, là người sáng lập và CTO tại Sanfoundry. Ông sống ở Bangalore, và tập trung vào sự phát triển của nhân Linux, Công nghệ San, Cvanced C, Cấu trúc dữ liệu & Alogrithms. Giữ kết nối với anh ta tại LinkedIn.Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.
Đăng ký các lớp học chính miễn phí của mình tại YouTube & Thảo luận kỹ thuật tại Telegram SanfoundryClasses.