romanbel
@romanbel
Программист

Как сделать чтоб вводились буквы в c++?

#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;

    cout << "Ïðèâåò: ";
    cin >> num;

    if (num == 0) { // Если введенное число меньше 10.
        cout << "Как тебя зовут?" << endl;
    } else {
        cout << "пока" << endl;
    }
   setlocale(0, "");
    int b;
    cout << "Нажми 1 чтобы я закрылся";
    cin >> b;
    cout << b << endl;
     return 0;
}

Как сделать чтоб в этой программе если ввести текст, то он был как вариант действия?
Я пытаюсь вместо 0 набрать текст - получается ошибка. Что делать?
  • Вопрос задан
  • 443 просмотра
Пригласить эксперта
Ответы на вопрос 3
GavriKos
@GavriKos
Читать внимательно что за ошибка, много думать, читать о типах данных "строка" и методах работы с ними. Для подсказки - strcmp гуглите.
Ответ написан
Здесь спрашивается о возрасте? Тогда зачем тип double? Здесь подошёл бы unsigned short int. И зачем в программе два setlocale?
double num;

    cout << "Ïðèâåò: ";
    cin >> num;
Ответ написан
Комментировать
@Bonce
Cin ломается, если тип вводимой информации не соответствует объявленному типу. Поэтому следует использовать
while (!(cin >> num) || num < 0.0)
{
     cin.clear();
     while (cin.get() != '\n')
          continue;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы