Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ แปลงเลขฐานแปด (Octal) เป็นฐานสิบ (Decimal)


บทนำ

แปลงเลขฐานแปด (Base 8, หลัก 0-7) เป็นฐานสิบ (Base 10)

ขั้นตอน

  1. แยกหลักจากขวาไปซ้าย (mod 10)
  2. คูณแต่ละหลักด้วย 8^position
  3. รวมผลคูณ

ตัวอย่าง

451 = 1×8⁰ + 5×8¹ + 4×8² = 1 + 40 + 256 = 297

ตัวอย่างโค้ด C++

#include <iostream>
using namespace std;

int convert(int num) {
    int temp = num;
    int val = 0;
    int base = 1;
    int count = temp;
    while (count) {
        int digit = count % 10;
        count = count / 10;
        val += digit * base;
        base *= 8;
    }
    return val;
}

int main() {
    int num = 45;
    cout << "after conversion value is " << convert(num);
    return 0;
}

ผลลัพธ์

after conversion value is 37