キーパッドが壊れているため、入力番号 1、4、および 7 が機能しません。次に、コンピューターは次に小さい数字と次に大きい数字を出力します。ここで、1、4、および 7 は数字ではありません。
私の目標は、ブール関数を使用して数字と出力をチェックアウトし、次に高い数値と次に低い数値を出力することです。やるべきことのほとんどをやったと確信していますが、うまくいきません。444と入力したところ、結果は443と445でした。よろしくお願いします。
#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
bool containDigit(int number, int digit);
int main()
{
int number, digit, lowNum, highNum;
cout<<"Enter a number between 1 and 999 for the oven temperature: ";
cin>>number;
//1st digit
digit = number / 100;
containDigit(number, digit);
if (containDigit(number, digit) == true)
{
number = number - 100;
}
//2nd digit
digit = (number / 10) % 10;
containDigit(number, digit);
if (containDigit(number, digit) == true)
{
number = number - 10;
}
//3rd Digit
digit = number % 10;
containDigit(number, digit);
if (containDigit(number, digit) == true)
{
number = number - 1;
}
cout<<number<<endl;
getche();
return 0;
}
bool containDigit(int number, int digit)
{
if ((digit == 1) || (digit == 4) || (digit == 7))
{
return true;
}
else
{
return 0;
}
}