Šajā piemērā jūs iemācīsities manuāli konvertēt oktālo skaitļus decimāldaļās un otrādi, izveidojot lietotāja definētu funkciju.
Lai saprastu šo piemēru, jums vajadzētu būt zināšanām par šādām C programmēšanas tēmām:
- C funkcijas
- C Lietotāja definētas funkcijas
1. piemērs: programma, lai pārvērstu decimāldaļu uz oktālo
#include #include int convertDecimalToOctal(int decimalNumber); int main() ( int decimalNumber; printf("Enter a decimal number: "); scanf("%d", &decimalNumber); printf("%d in decimal = %d in octal", decimalNumber, convertDecimalToOctal(decimalNumber)); return 0; ) int convertDecimalToOctal(int decimalNumber) ( int octalNumber = 0, i = 1; while (decimalNumber != 0) ( octalNumber += (decimalNumber % 8) * i; decimalNumber /= 8; i *= 10; ) return octalNumber; )
Rezultāts
Ievadiet decimāldaļu: 78 78 aiz komata = 116 astotniekā
2. piemērs: programma, lai konvertētu oktālo skaitli aiz komata
#include #include long long convertOctalToDecimal(int octalNumber); int main() ( int octalNumber; printf("Enter an octal number: "); scanf("%d", &octalNumber); printf("%d in octal = %lld in decimal", octalNumber, convertOctalToDecimal(octalNumber)); return 0; ) long long convertOctalToDecimal(int octalNumber) ( int decimalNumber = 0, i = 0; while(octalNumber != 0) ( decimalNumber += (octalNumber%10) * pow(8,i); ++i; octalNumber/=10; ) i = 1; return decimalNumber; )
Rezultāts
Ievadiet astotnieku skaitli: 116 116 oktobrī = 78 aiz komata