Я пытаюсь создать кусок кода, который работает так. Пользователь вводит 3-значное число, предположим, что они выбрали 653, они также вводят номера в том целом, которые они хотят обменивать. Например:Функция Value Value Value
Enter a number and values you wish to swap: "653 2 3"
Это возвращает следующее значение:
635 is the new number.
Я пытаюсь сделать это в функции я назвал digit_swap. Я не совсем уверен, как я подхожу к этому, поскольку я очень новичок в кодировании и даже новичок в кодировании. Я думаю, что я должен отделить целое число в единицы, десятки и сотни компонентов и делать, что я сделал следующее:
third = (number % 10);
second = ((number % 100)/10);
first = ((number % 1000)/100);
Единственное, что я использую кучу если заявления для определения Перекачка числа или это будет цикл. Я действительно не знаю, как это сделать. Что касается моего кода, то у меня есть следующее.
#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 a 3 digit integer\n";
exit(0);
}
else if (number >= 1000) {
cout << "Please enter a 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;
}
Даже когда я тест, чтобы увидеть, если он работает, добавив return first
в еще сегменте, если заявление не возвращает ничего. Любая помощь приветствуется, я также не прошу вас сделать код для меня.
Что значит «ничего не возвращает»? Он возвращает 'int', поэтому он всегда возвращает что-то. Вы забыли сохранить результат 'digit_swap'? Прямо сейчас значения 'first',' second' и 'third' теряются, как только' digit_swap' возвращается, и поскольку у вас нет оператора 'return', возвращаемое значение' digit_swap' не определено (конкретный но не может быть определен только из кода). – szym
И не вызывайте 'exit' только из-за недопустимого ввода. Верните что-то по всем путям, отредактируйте, нужно ли его печатать в 'main'. – LogicStuff