Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में दशमलव को ऑक्टल में बदलना

दशमलव (बेस-10) संख्या को ऑक्टल (बेस-8) में बदलने के लिए हम बार-बार 8 से विभाजित करते हैं और शेषफल एकत्र करते हैं।

एल्गोरिदम

  1. संख्या को 8 से विभाजित करें, शेषफल स्टोर करें।
  2. भागफल को नई संख्या बनाएं।
  3. संख्या 0 होने तक दोहराएं।
  4. शेषफलों को उल्टे क्रम में पढ़ें।

उदाहरण

using System;

class Demo {
    public static void Main() {
        int decVal, quot, i = 1, j;
        int[] octalVal = new int[80];

        decVal = 40;
        quot = decVal;
        Console.WriteLine("Decimal Number: {0}", decVal);

        while (quot != 0) {
            octalVal[i++] = quot % 8;
            quot = quot / 8;
        }

        Console.Write("Octal Number: ");
        for (j = i - 1; j > 0; j--)
            Console.Write(octalVal[j]);

        Console.Read();
    }
}

आउटपुट

Decimal Number: 40
Octal Number: 50

चरण-दर-चरण (40 के लिए)

चरण संख्या 8 से विभाजित शेषफल
1 40 5 0
2 5 0 5

शेषफल उल्टे क्रम में: 50 (ऑक्टल)

सत्यापन: 5×8¹ + 0×8⁰ = 40 ✓

बिल्ट-इन मेथड: Convert.ToString

int dec = 40;
string octal = Convert.ToString(dec, 8); // "50"
Console.WriteLine(octal);

किसी भी बेस (2-36) के लिए जेनेरिक फंक्शन

public static string ToBase(int number, int base_) {
    if (number == 0) return "0";
    if (base_ < 2 || base_ > 36) throw new ArgumentException("Base must be 2-36");

    const string digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    var result = new System.Text.StringBuilder();

    bool negative = number < 0;
    uint n = (uint)(negative ? -number : number);

    while (n > 0) {
        result.Insert(0, digits[(int)(n % (uint)base_)]);
        n /= (uint)base_;
    }

    if (negative) result.Insert(0, '-');
    return result.ToString();
}

// उपयोग
Console.WriteLine(ToBase(40, 8));  // "50"
Console.WriteLine(ToBase(40, 2));  // "101000"
Console.WriteLine(ToBase(40, 16)); // "28"

मुख्य बिंदु

  • ऑक्टल प्रणाली में अंक 0-7 होते हैं।
  • C# में ऑक्टल लिटरल 0o या 0 प्रीफिक्स के साथ लिखे जाते हैं: 0o50 या 050।
  • बिल्ट-इन Convert.ToString(value, base) सबसे आसान तरीका है।
  1. C प्रोग्राम: संख्या को शब्दों में बदलें C प्रोग्राम: संख्या को शब्दों में बदलें

    समस्या विवरण एक संख्यात्मक स्ट्रिंग (अधिकतम 4 अंक: 0-9999) दी गई है, इसे अंग्रेजी शब्दों में बदलें। उदाहरण इनपुटआउटपुट 1234one thousand two hundred thirty four 7777seven thousand seven hundred seventy seven 100one hundred 15fifteen स्थान मान प्रणाली संख्या: 1111 स्थान: हजार सौ दहाई इकाई

  1. पायथन प्रोग्राम: दशमलव को बाइनरी संख्या में बदलें पायथन प्रोग्राम: दशमलव को बाइनरी संख्या में बदलें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक दशमलव संख्या दी गई है, जिसे उसके बाइनरी समकक्ष में बदलना है। दिए गए समस्या को हल करने के दो दृष्टिकोण हैं। आइए उन्हें एक-एक करके देखें। पुनरावर्ती दृष्टिकोण उदाहरण 1: DecimalToBinary(num // 2) print(num % 2, en

  1. पायथन प्रोग्राम: डेसीमल को बाइनरी नंबर में बदलें पायथन प्रोग्राम: डेसीमल को बाइनरी नंबर में बदलें

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट एक नंबर दिए जाने पर, हमें इसे बाइनरी नंबर में बदलने की आवश्यकता है। दृष्टिकोण 1 – रिकर्सिव समाधान 1: DecToBin(num // 2) print num % 2 उदाहरण 1: DecimalToBi