0

Could someone help me with a bug I'm getting in my program? Thanks

Here's the program: int main() { cout <<"guess the first letter of my name!/n"; char firstLetter; cin >> firstLetter; if (firstLetter = r || R) { cout << "I'm not rumple stilsken, I'll give you that."; } else if (firstLetter = q || Q) { cout << "Really? Q?? You guessed q??"; } else { cout << "WRONG. No pancakes for you..."; } } The only error it gives me is that my q's and r's "were not declared in this scope." What's going on here?

26th Jul 2019, 3:00 PM
Thomas Wald
Thomas Wald - avatar
3 Answers
+ 1
You forgot this ( ' ) Because you don't have ( ' ), so the compiler thought that r's and q's is variable. And there's no variable named r or q. Which is told by the compiler. (was not declared in the scope.)
26th Jul 2019, 3:47 PM
ä½ ēŸ„é“č¦å‰‡ļ¼Œęˆ‘也ę˜Æ
ä½ ēŸ„é“č¦å‰‡ļ¼Œęˆ‘也ę˜Æ - avatar
+ 1
Thomas Wald Write it like this if (firstLetter == 'r' || firstLetter == 'R') { ... } Do the same pattern with the else if statement, the == is to check equality, while = is assignment. Another error is r, R, and other characters are not inside the single quotation mark ( ' ). Even if you write it like this 'r' || 'R' , it's still wrong, since it will always give true because it checks the value of character r or R, they both have the value more than one, so it's true, firstLetter == true will always be true since every characters has value more than 0. So, you have to write the code like I did above
26th Jul 2019, 4:02 PM
Agent_I
Agent_I - avatar
0
Ok. Thanks that helps a lot šŸ‘šŸ‘šŸ‘Œ
26th Jul 2019, 5:11 PM
Thomas Wald
Thomas Wald - avatar