I dette eksemplet lærer du å konvertere oktaltall til desimal og desimaltall til oktalt manuelt ved å opprette en brukerdefinert funksjon.
For å forstå dette eksemplet, bør du ha kunnskap om følgende C ++ programmeringsemner:
- C ++ funksjoner
- Typer brukerdefinerte funksjoner i C ++
- C ++ hvis, hvis … annet og Nestet hvis … annet
- C ++ mens og gjør … mens Loop
Eksempel 1: Konverter oktaltall til desimal
#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; )
Produksjon
Skriv inn et oktalt tall: 2341 2341 i oktalt = 1249 i desimal
I programmet lagres det oktale tallet i variabelen octalNumber og overføres til funksjon octalToDecimal()
.
Denne funksjonen konverterer oktaltallet som sendes av brukeren til det tilsvarende desimaltallet og returnerer det til main()
funksjon.
Eksempel 2: Konverter desimaltall til oktal
#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; )
Produksjon
Skriv inn et desimaltall: 78 78 i desimal = 116 i oktalt
I programmet lagres desimaltallet i variabelen desimaltall og overføres til funksjon decimalToOctal()
.
Denne funksjonen konverterer desimaltallet som sendes av brukeren til det tilsvarende oktale tallet og returnerer det til main()
funksjon.