Ejemplo n.º 1
0
int main(int argc, char** argv)
{
	char * inputNumber;
	intu originBase;
	if (argc==1)
	{
		inputNumber = (char*) malloc (DEFAULT_LENGTH);
		interactiveModePrompt(inputNumber, originBase);
		printf("%u\n",convertToDecimal(inputNumber,originBase));
	}
	else if (argc==2)
	{
		if (!strcmp(argv[1],"--help")||!strcmp(argv[1],"-h"))
		{
			printCStr(argv[0],0);		
			printf(" [input-number] [original-base]\n"
				"\n"
				"Both arguments are optional, in which case the program launches\n"
				"interactive move. However, you must supply both arguments if you\n"
				"choose not to run interactive mode.\n"
				"\n"
				"input-number: a number of arbitrary base to be converted into base 10.\n"
				"\tIf larger than base 10, use A-Z or a-z for digits greater than 9.\n"
				"\tThe program will complain if the variable contains any other values\n"
				"\tor starts with a 0.\n"
				"\n"
				"original-base: the number of this base for conversion purposes. Because\n"
				"\tthe program uses A-Z for digits larger than 9, you cannot specify a base\n"
				"\tlarger than 36 for this number. The program will complain if you exceed\n"
				"\tthis value.\n");
			exit(NO_ERROR);
		}
		fprintf(stderr,"Incorrect usage.\n"
				"This program requires either zero arguments to enter interactive mode,"
				"or two arguments to enter automatic mode.\n"
				"Usage:");
		printCStr(argv[0],1);
		fprintf(stderr," [input-number] [original-base]\n"
			"\n"
			"You may specify \"--help\" or \'-h\' as the first argument if you do not"
			"know what sorts of input the program expects to see.\n");
		exit(ERR_NOARGS);
	}
	else
	{
		inputNumber = (char*) malloc (strlen(argv[0]));
		originBase = static_cast<intu>(atoi(argv[1]));
		printf("%u\n",convertToDecimal(inputNumber,originBase));
	}
	return 0;
}
Ejemplo n.º 2
0
int main(int argc, char **argv) {
  char *inputNumber = argv[1];
  char *srcBase = argv[2];
  char *destBase = argv[3];
  int srcBaseInt = convertCharNumberToInt(srcBase);
  int destBaseInt = convertCharNumberToInt(destBase);
  long inputNumberLong = convertToDecimal(inputNumber, srcBaseInt,0,getStringLength(inputNumber));
  printf("Conversion of %s base %s to base %s is : %s\n",inputNumber, srcBase, destBase, convertDecimalToBase(inputNumberLong, destBaseInt));
  return 0;
}
Ejemplo n.º 3
0
void RomanNumber::convert()
{
    if (status == OnlyDecimal)
    {
        romanNumber = convertToRoman();
    }
    else if (status == OnlyRoman)
    {
        decimalNumber = convertToDecimal();
    }
}
Ejemplo n.º 4
0
long convertToDecimal(char *inputNumber, int base, int cIndex,
                      int numberLength) {
  long number = 0;
  if (cIndex < numberLength) {
    char digitChar = inputNumber[numberLength - 1 - cIndex];
    long digit = convertCharToNumber(digitChar);
    long sumTemp = power(base, cIndex) * digit;
    cIndex++;
    number = sumTemp;
    return number + convertToDecimal(inputNumber, base, cIndex, numberLength);
  } else
    return number;
}
Ejemplo n.º 5
0
int main()
{
int EV_number;
int EV_waitTime;
scanf("%d", &EV_number);
EV_number = convertToDecimal(EV_number);
EV_waitTime = (EV_number*EV_number);
while ((EV_waitTime>0))
{
wait(EV_waitTime);
EV_waitTime = (EV_waitTime-1);
}
printf("%d\n",EV_number);
return 0;
}
Ejemplo n.º 6
0
int main()
{
   int number, waitTime;

   scanf("%d", &number);

   number = convertToDecimal(number);
   waitTime = number * number;

   while (waitTime > 0)
   {
      wait(waitTime);
      waitTime = waitTime - 1;
   }

   fprintf(stdout, "%d\n", number);
}