You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
2.3 KiB
58 lines
2.3 KiB
#include "conversionOfNumbers.h"
|
|
#include "../userinput.h"
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
|
|
int main(){
|
|
int minInput = 0;
|
|
int maxInput = 2;
|
|
int InputMainMenu;
|
|
while(InputMainMenu != 3){
|
|
|
|
printf("\nWaehle Zahlensystem:\n"
|
|
"\n<0> Binaer System\n"
|
|
"<1> Hexadezimal System\n"
|
|
"<2> Beenden\n");
|
|
InputMainMenu = usergetd("\nEingabe: ", &minInput, &maxInput);
|
|
if(InputMainMenu == 2) break;
|
|
int InputOptionsMenu;
|
|
|
|
while(InputOptionsMenu != 3){
|
|
|
|
printf("\nZu oder von einer Dezimalzahl konvertieren?\n"
|
|
"\n<0> Zu\n"
|
|
"<1> Von\n"
|
|
"<2> Hauptmenue\n");
|
|
InputOptionsMenu = usergetd("\nEingabe: ", &minInput, &maxInput);
|
|
if(InputOptionsMenu == 2) break;
|
|
if(InputMainMenu == 0){
|
|
if(InputOptionsMenu == 0){
|
|
char* toConvert = usergets("\nGeben Sie eine Zeichenkette von 0 und 1 ein: ", NULL, NULL);
|
|
int result = convertBinaryStrToInt(toConvert);
|
|
printf("\nAusgabe (in Dezimal): %d\n", result);
|
|
}
|
|
if(InputOptionsMenu == 1){
|
|
int toConvert = usergetd("\nGeben Sie eine Ganzzahl ein: ", NULL, NULL);
|
|
char* result = convertIntToBinaryStr(toConvert);
|
|
printf("\nAusgabe (in Binaer): %s\n", result);
|
|
free(result);
|
|
}
|
|
}
|
|
if(InputMainMenu == 1){
|
|
if(InputOptionsMenu == 0){
|
|
char* toConvert = usergets("\nGeben Sie eine Zeichenkette im Hexadezimal-Format ein: ", NULL, NULL);
|
|
int result = convertHexStrToInt(toConvert);
|
|
printf("\nAusgabe (in Dezimal): %d\n", result);
|
|
}
|
|
if(InputOptionsMenu == 1){
|
|
int rangeMin = 0;
|
|
int toConvert = usergetd("\nGeben Sie eine positive Ganzzahl ein: ", &rangeMin, NULL);
|
|
char* result = convertIntToHex(toConvert);
|
|
printf("\nAusgabe (in Hex): %s\n", result);
|
|
free(result);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return 0;
|
|
}
|