ในระบบคอมพิวเตอร์ เลขฐานแปด (Octal) ใช้ฐาน 8 ส่วนเลขฐานสิบ (Decimal) ใช้ฐาน 10
ตัวอย่างการแปลง:
| Decimal | Octal |
|---|---|
| 8 | 10 |
| 70 | 106 |
| 25 | 31 |
| 7 | 7 |
ตัวอย่างโค้ด
#include <iostream>
using namespace std;
void DecimalToOctal(int decimalNum) {
int octalNum = 0, placeValue = 1;
int dNo = decimalNum;
while (decimalNum != 0) {
octalNum += (decimalNum % 8) * placeValue;
decimalNum /= 8;
placeValue *= 10;
}
cout << "Octal form of decimal number " << dNo << " is " << octalNum << endl;
}
int main() {
DecimalToOctal(70);
return 0;
}
ผลลัพธ์
Octal form of decimal number 70 is 106
อธิบายการทำงาน
ฟังก์ชัน DecimalToOctal แปลง decimal เป็น octal:
- octalNum เริ่มที่ 0, placeValue = 1 (ตำแหน่งหลัก)
- while loop: decimalNum ≠ 0
- หาร decimalNum ด้วย 8 เอาเศษคูณ placeValue บวกใน octalNum
- decimalNum = ผลหาร, placeValue ×= 10
while (decimalNum != 0) {
octalNum += (decimalNum % 8) * placeValue;
decimalNum /= 8;
placeValue *= 10;
}
แสดงผล:
cout<<"Octal form of decimal number "<<dNo<<" is "<<octalNum<<endl;
main() เรียกฟังก์ชันด้วยค่าที่ต้องการ:
DecimalToOctal(70);