ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมเพื่อหาหลักลำดับที่ k จากด้านขวาในตัวเลข ab
นี่เป็นปัญหาที่ตรงไปตรงมา มาดูขั้นตอนการแก้ปัญหา
- กำหนดค่าเริ่มต้นของตัวเลข a, b, และ k
- หาค่าของ ab โดยใช้เมธอด pow
- เขียนลูปที่วนจนกว่าค่า power จะน้อยกว่าศูนย์ หรือ count น้อยกว่า k
- ดึงหลักสุดท้ายจากค่า power
- เพิ่มตัวนับ
- ตรวจสอบว่า k และ count เท่ากันหรือไม่
- คืนค่าหลักถ้าเท่ากัน
- คืนค่า -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
สรุป
หากมีข้อสงสัยเกี่ยวกับบทช่วยสอนนี้ สามารถถามได้ในส่วนความคิดเห็น