ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมหาหลักที่ k จากด้านขวาในตัวเลข a b
เป็นปัญหาตรงไปตรงมา มาดูขั้นตอนการแก้ปัญหากัน
- เริ่มต้นตัวเลข a, b และ k
- หาค่าของ a b โดยใช้วิธีพาว
- เขียนลูปที่วนซ้ำจนกว่าค่ากำลังน้อยกว่าศูนย์หรือนับน้อยกว่า k
- รับตัวเลขสุดท้ายจากค่ายกกำลัง
- เพิ่มตัวนับ
- ตรวจสอบว่า k และตัวนับเท่ากันหรือไม่
- คืนตัวเลขหากเท่ากัน
- คืน -1.
ตัวอย่าง
มาดูโค้ดกันเลย
#include <bits/stdc++.h>
using namespace std;
int getTheDigit(int a, int b, int k) {
int power = pow(a, b);
int count = 0;
while (power > 0 && count < k) {
int rem = power % 10;
count++;
if (count == k) {
return rem;
}
power /= 10;
}
return -1;
}
int main() {
int a = 5, b = 6;
int k = 3;
cout << getTheDigit(a, b, k) << endl;
return 0;
} ผลลัพธ์
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้
6
บทสรุป
หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น