Click here to Skip to main content
15,886,689 members
Please Sign up or sign in to vote.
1.00/5 (3 votes)
See more:
I am trying to compare a user entered variable to an array containing the lowercase alphabet. The user sees the lowercase version of the letter and is supposed to enter the uppercase. Does anyone have any ideas on how to do this better? This code always says the answer is correct, even if it's not. Thank you.
Posted
Updated 1-Feb-13 8:20am
v3

Your logic on this is completely messed up. As long as the user enters ANY A-Z character it will return "Correct". Why do you need an array of any kind. If you show the user a lower case letter, you already know what that is. All you have to do is compare the user's entered value to the one value you already know. The array seems completely pointless.
 
Share this answer
 
I am going to answer this in C++ as it is more comfortable for me to do so, and so I do not make any syntax mistakes. The logic does not change.


Convert the user input to a char. Only accept uppercase alphabet characters by using the following snippet.

C#
if( userInput < 'A' || userInput > 'Z' )



C#
std::cout << "The starting lower is: " << YourLowerVariable<< std::endl;

if (YourLowerVariable + 32 == userInput)
{
    std::cout << "You are correct!";

system("pause");
}

return 0;


There is a difference of 32 in the ASCII version of a to A, as well as b to B and so on.
 
Share this answer
 
v3

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900