V tomto príklade sa naučíte manuálne prevádzať osmičkové číslo na desatinné a desatinné číslo na osmičkové vytvorením používateľom definovanej funkcie.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich programovacích tém C ++:
- Funkcie C ++
- Typy funkcií definovaných používateľom v jazyku C ++
- C ++ ak, ak … inak a Vnorené, ak … inak
- C ++ zatiaľ čo a robiť … zatiaľ čo Loop
Príklad 1: Preveďte osmičkové číslo na desatinné miesto
#include #include using namespace std; int octalToDecimal(int octalNumber); int main() ( int octalNumber; cout <> octalNumber; cout << octalNumber << " in octal = " << octalToDecimal(octalNumber) << " in decimal"; return 0; ) // Function to convert octal number to decimal int octalToDecimal(int octalNumber) ( int decimalNumber = 0, i = 0, rem; while (octalNumber != 0) ( rem = octalNumber % 10; octalNumber /= 10; decimalNumber += rem * pow(8, i); ++i; ) return decimalNumber; )
Výkon
Zadajte osmičkové číslo: 2341 2341 v osmičkovom formáte = 1249 v desatinnom čísle
V programe je osmičkové číslo uložené v premennej octalNumber a odovzdané funkcii octalToDecimal()
.
Táto funkcia prevádza osmičkové číslo odovzdané používateľom na jeho ekvivalentné desatinné číslo a vráti ho do main()
funkcie.
Príklad 2: Preveďte desatinné číslo na osmičkové
#include #include using namespace std; int decimalToOctal(int decimalNumber); int main() ( int decimalNumber; cout <> decimalNumber; cout << decimalNumber << " in decimal = " << decimalToOctal(decimalNumber) << " in octal"; return 0; ) // Function to convert decimal number to octal int decimalToOctal(int decimalNumber) ( int rem, i = 1, octalNumber = 0; while (decimalNumber != 0) ( rem = decimalNumber % 8; decimalNumber /= 8; octalNumber += rem * i; i *= 10; ) return octalNumber; )
Výkon
Zadajte desatinné číslo: 78 78 v desatinnom čísle = 116 v osmičkovom formáte
V programe je desatinné číslo uložené v premennej decimalNumber a odovzdané funkcii decimalToOctal()
.
Táto funkcia prevádza desatinné číslo odovzdané používateľom na jeho ekvivalentné osmičkové číslo a vráti ho do main()
funkcie.