c++ - Basic Value Swap function -
i'm trying design piece of code works this. user enters 3 digit number, let's chose 653, input numbers in integer wish swap around. example:
enter number , values wish swap: "653 2 3"
this returns following value:
635 new number.
i trying in function called digit_swap. im not sure how approach i'm new coding , newer coding. think have seperate integer units, tens , hundred components , did following:
third = (number % 10); second = ((number % 100)/10); first = ((number % 1000)/100);
the thing is, use bunch of if statements determine swapping of numbers or loop. have no idea how go this. code have following.
#include <iostream> using std::cin; using std::cout; using std::endl; int digit_swap(int number, int inputone, int inputtwo) { int first, second, third; if (number < 100) { cout << "please enter 3 digit integer\n"; exit(0); } else if (number >= 1000) { cout << "please enter 3 digit integer\n"; exit(0); } else { third = (number % 10); second = ((number % 100)/10); first = ((number % 1000)/100); } } using namespace std; int main() { int option_one, option_two; int number; cin >> number; cin >> option_one >> option_two; digit_swap(number, option_one, option_two); cout << "new number = " << number; }
even when test see if working adding return first
in else segment of if statement returns nothing. appreciated, i'm not asking code me either.
int digit_swap(int number, int inputone, int inputtwo) { int first, second, third; if (number < 100) { // doing } else { third = (number % 10); number /= 10; second = (number % 10); number /= 10; first = (number % 10); number /= 10; } if(inputone == 1) { if(inputtwo == 2) { number += second*100 + first*10 + third; } else if(inputtwo == 3) { number += third*100 + second*10 + first; } else{;} } else if(inputone == 2) { if(inputtwo == 3) { number += first*100 + third*10 + second; } } else{;} return number; }
Comments
Post a Comment