Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int powerOfNum(int base, int exponent);
- int recursiveAdd(int number);
- int printMenu();
- int recursiveAdd(int number)
- {
- if (number != 0)
- {
- return (number % 10 + recursiveAdd(number/10));
- }
- else
- {
- return 0;
- }
- }
- int powerOfNum(int base, int exponent)
- {
- if(exponent == 0)
- {
- return 1;
- }
- if(exponent == 1)
- {
- return base;
- }
- else
- {
- return base * powerOfNum(base, exponent-1);
- }
- }
- int printMenu()
- {
- printf("%s\n%s\n", "Menu:","************************");
- printf("%s\n%s\n%s\n\n", "(1) Add the digits of an integer together","(2) Find the power of a number","(3) Quit");
- return 0;
- }
- int main (void)
- {
- char input = '0';
- int numToAdd;
- int addResult;
- int baseNum;
- int exponentNum;
- int powerResult;
- int quitLoop = 0;
- printf("%s%s\n\n","To select a menu option, type the number that corresponds to that option.","\nEx: Type '2' to find the power of a number");
- printMenu();
- while (quitLoop == 0)
- {
- scanf("%c", &input);
- if(input == '1')
- {
- printf("\n%s\n", "Please enter a number to add the digits of:");
- scanf("%d", &numToAdd);
- addResult = recursiveAdd(numToAdd);
- printf("\nThe number %d yields the result %d\n\n", numToAdd, addResult);
- printMenu();
- }
- if (input == '2')
- {
- printf("\n%s\n", "Please enter a base number:");
- scanf("%d", &baseNum);
- printf("%s\n", "Please enter an exponent:");
- scanf("%d", &exponentNum);
- powerResult = powerOfNum(baseNum, exponentNum);
- printf("\nThe number %d to the power of %d is %d\n\n", baseNum, exponentNum, powerResult);
- printMenu();
- }
- if (input == '3')
- {
- quitLoop = 1;
- printf("%s\n", "Goodbye!");
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement