Lập trình C# - Chuyển đổi bát phân thành thập phân

Chuyển đổi bát phân thành thập phân

Viết chương trình C# để chuyển đổi một số trong hệ bát phân (hệ Octal) thành số tương đương trong hệ thập phân.

Các bài tập chuyển đổi hệ cơ số là các bài tập khá phổ biến. Các bài tập C# này minh họa giúp bạn cách sử dụng vòng lặp trong C#.

Chương trình C#

Dưới đây là chương trình C# để giải bài tập chuyển đổi bát phân thành thập phân trong C#:

using System;

namespace Csharp
{
    class TestCsharp
    {
        public static void Main()
        {

            int n1, n5, p = 1, k, ch = 1;
            int dec = 0, i = 1, j, d;

            Console.Write("\n");
            Console.Write("Chuyen doi bat phan thanh thap phan trong C#:\n");
            Console.Write("------------------------------------------");
            Console.Write("\n\n");

            Console.Write("Nhap mot so trong he bat phan (su dung cac so 0 - 7): ");
            n1 = Convert.ToInt32(Console.ReadLine());
            n5 = n1;

            for (; n1 > 0; n1 = n1 / 10)
            {
                k = n1 % 10;
                if (k >= 8)
                {
                    ch = 0;
                }
            }

            switch (ch)
            {
                case 0:
                    Console.Write("\nSo vua nhap khong phai la so trong he bat phan. \n\n");
                    break;
                case 1:
                    n1 = n5;
                    for (j = n1; j > 0; j = j / 10)
                    {
                        d = j % 10;
                        if (i == 1)
                            p = p * 1;
                        else
                            p = p * 8;

                        dec = dec + (d * p);
                        i++;
                    }
                    Console.Write("\nSo trong he bat phan: {0}\nSo thap phan tuong duong la: {1} \n\n", n5, dec);
                    break;
            }   

            Console.ReadKey();
        } 
    }
}
Xem ví dụ

Biên dịch và chạy chương trình C# trên sẽ cho kết quả:

Chuyển đổi bát phân thành thập phân trong C#