60 664
Assignments Done
97,7%
Successfully Done
In April 2018

Answer to Question #23430 in C++ for Creepian

Question #23430
Why is the last "else" not working, if for example i type letters the program will just close. Thank you

using namespace std;

int main ()
{
int year = 2013;
int input;

cout << "What year are you in ?\n";
cin >> input;

if (input == year)
cout << "Congrats, you know what year it is.\n";
else
{
if (input < year)
{
cout << "You are living in the past.\n";
}

else
{
if (input > year)
{
cout << "Back to the future with you.\n";
}
else
cout << "What are you smoking man?\n";
}}


char x;
cin >> x;
return 0;
}
Expert's answer
Your last "else" are not working because if youtype letters your input does not match the type of the variable in which you
try to store it.
To fix this problem you need to use function"atoi". See the program below.


#include <iostream>
#include <stdlib.h>

using namespace std;

int main ()
{
int year = 2013;
int input;
char input_str[10];

cout << "What year are you in ?
";
cin >> input_str;

input = atoi(input_str);

if (input == 0)
{
cout << "What are you smoking man?
";
}
else
{
if (input == year)
cout << "Congrats, you know what year it is.
";
else
{
if (input < year)
{
cout << "You are living in the past.
";
}

else
{
cout << "Back to the future with you.
";
}
}
}

return 0;
}

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be first!

Leave a comment

Ask Your question

Submit
Privacy policy Terms and Conditions