Ciò di cui sono confuso riguarda la funzione isNumPalindrome(). Restituisce un valore booleano sia vero che falso. Come suppongo di usarlo, così posso mostrarlo se è un palindromo o meno. Per es. if (isNumPalindrome == true) cout << "Your number is a palindrome"; else cout << "your number is not a palindrome.";
Ho appena saputo delle funzioni C++; posso usare se le istruzioni sui valori restituiti dalla funzione?
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
#include <iostream>
#include <cmath>
using namespace std;
int askNumber();
bool isNumPalindrome();
int num, pwr;
int main()
{
askNumber();
return 0;
}
bool isNumPalindrome()
{
int pwr = 0;
if (num < 10)
return true;
else
{
while (num/static_cast<int>(pow(10.0, pwr)) >=10)
pwr++;
while (num >=10)
{
int tenTopwr = static_cast<int>(pow(10.0, pwr));
if ((num/tenTopwr) != (num% 10))
return false;
else
{
num = num % tenTopwr;
num = num/10;
pwr = pwr-2;
}
}
return true;
}
}
int askNumber()
{
cout << "Enter an integer in order to determine if it is a palindrome: " ;
cin >> num;
cout << endl;
if(isNumPalindrome(num))
{
cout << "It is a palindrome." ;
cout << endl;
}
else
{
cout << "It is not a palindrome." ;
cout << endl;
}
return num;
}
Wow, per qualcuno solo imparare a conoscere le funzioni si sta già scrivendo molto carino codice C++. Molto bene. –
Haha grazie. Ho solo questa lezione quindi trascorro le mie giornate semplicemente praticando il codice -_-... – Sagistic
Modificato: Funziona ora, ma devo ancora correggere la parte della variabile globale. – Sagistic