Convert Octal to Decimal Number in Windows Store App

In this article I am explain how to convert numbers expressed as octal to numbers expressed as decimal in Windows Store Apps.

 Introduction

My previous article explained how to convert Decimal to Octal number and in this article  I explain how to convert a number expressed as an octal number to a number expressed as a decimal number. So let us first of all understand the conversion.

Octal Number: A number expressed using the base 8 number system with digits 0 to 7.

Decimal Number: A number expressed using the base 10 number system with digits 0 to 9.

Conversion Example: suppose you want to convert an octal number 764 to decimal number. Then use the following procedure.

Step 1 : 4 * 8^0 =4 * 1=4
Step 2 : 6 * 8^1= 6* 8=48
Step 3 : 7* 8^2=7*64= 448

Hence equivalent decimal number = 4 + 48 + 448 =  500

Use the following procedure to create it.


Step 1

First of all you must create a new Windows Store Application.
Open Visual Studio 2012
"File" -> "New" -> "Project..."
Choose "Template" -> "Visual C#" -> "Window Store app"
Choose "Blank App (XAML)" then rename the application

new-windows-store-app.jpg

Step 2
Write the following XAML code in "Mainpage.Xaml" (that is available in Solution Explorer):

<Page

    x:Class="Octal_to_Decimal_converter_app.MainPage"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    xmlns:local="using:Octal_to_Decimal_converter_app"

    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

    mc:Ignorable="d">

 

    <Grid Background="red">

        <Grid.ColumnDefinitions>

            <ColumnDefinition Width="313*"/>

            <ColumnDefinition Width="254*"/>

            <ColumnDefinition Width="788*"/>

        </Grid.ColumnDefinitions>

        <Grid.RowDefinitions>

            <RowDefinition Height="78*"/>

            <RowDefinition Height="49*"/>

            <RowDefinition Height="37*"/>

            <RowDefinition Height="40*"/>

            <RowDefinition Height="39*"/>

            <RowDefinition Height="525*"/>

        </Grid.RowDefinitions>

        <TextBlock Text="Octal to Decimal Converter app" Grid.ColumnSpan="3" Grid.Row="1" Foreground="White" FontSize="20" FontFamily="Arial" TextAlignment="Center"></TextBlock>

        <TextBlock Text="Enter Octal Number :" FontFamily="Arial" FontSize="15" Foreground="White" Grid.Column="1" Grid.Row="2" Grid.RowSpan="4"></TextBlock>

        <TextBox x:Name="textbox1" Grid.Column="2" Grid.Row="2" Width="200" HorizontalAlignment="Left" Height="20" VerticalAlignment="Top" />

        <TextBlock Text="Eqivalent Decimal Number is " FontSize="15" Foreground="White" Grid.Column="1" Grid.Row="3"></TextBlock>

        <TextBlock x:Name="text1" FontSize="15" Foreground="White" Grid.Column="2" Grid.Row="3" Width="200" HorizontalAlignment="Left" ></TextBlock>

        <Button x:Name="button1" Grid.Column="2" Grid.Row="4" Background="Yellow" Foreground="Black" Width="150" Content="Click" Click="button1_Click"></Button>

    </Grid>

</Page>

 

Step 3

Now write the following C# code for the button within "Mainpage.Xaml.cs".

using System;

using System.Collections.Generic;

using System.IO;

using System.Linq;

using Windows.Foundation;

using Windows.Foundation.Collections;

using Windows.UI.Xaml;

using Windows.UI.Xaml.Controls;

using Windows.UI.Xaml.Controls.Primitives;

using Windows.UI.Xaml.Data;

using Windows.UI.Xaml.Input;

using Windows.UI.Xaml.Media;

using Windows.UI.Xaml.Navigation;

 

namespace Octal_to_Decimal_converter_app

{   

    public sealed partial class MainPage : Page

    {

        public MainPage()

        {

            this.InitializeComponent();

        }

        protected override void OnNavigatedTo(NavigationEventArgs e)

        {

        }

        private void button1_Click(object sender, RoutedEventArgs e)

        {

            int octnum = 0, r = 0;

            int i=0;

            double decnum = 0; 

            octnum = int.Parse(textbox1.Text);

            while (octnum != 0)

            {

                r = octnum % 10;

                decnum = decnum +(r * Math.Pow(8, i++));

                octnum = octnum / 10;

            }

            text1.Text = decnum.ToString();

        }

    }

}

 

Step 4

Now Run Your app.

output-of-converter-app.jpg