Я написал функцию для вычисления числа и попытался охватить все возможности ввода.
В целом, он отлично работает с числовым вводом, но при вводе алфавитного ввода запускает бесконечный цикл печати операторов на экране.Как все мы знаем, что внутри компьютера один символ, такой как «A или a или b или B», и так далее представлен целыми числами, и, как я узнал от своего учителя, мы можем хранить отдельные символы в переменной с целочисленным типом данных.я не говорю о строках, что означает набор символов.эта программа создает проблему с одним символом!
#include <iostream>
#include <string>
using namespace std;
void squire();
int main() {
squire();
}
void squire() {
double num = 1.0, pow = 1.0, Squire_Number = 1.0;
char ans;
reStart:
cout << "please Enter the Number: \n";
cin >> num;
cout << "please enter the nmber you want to power the number with: \n";
cin >> pow;
if (num > 0 && pow>0) {
for (int i = 1; i <= pow; i++) {
Squire_Number *= num;
}
cout << pow << " power of " << num << " is equil to : " << Squire_Number;
goto option;
}
else
{
cout << "Please enter Positve Integers. \n" ;
option:
cout<< "\nPease type 'Y' to Enter the values again OR type 'c' to Exit ! \n";
cin >> ans;
if (ans == 'y' || ans == 'Y') {
goto reStart;
} else if (ans == 'c' || ans == 'C') {
cout << "thank you for using our function. \n";
}
}
return;
}