Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

11.6 Podpowiedz do zadania

Ostatnio zmodyfikowano 2010-02-22 13:29
Autor Wiadomość
maarcin
Temat założony przez niniejszego użytkownika
11.6 Podpowiedz do zadania
» 2010-02-19 10:14:21
Witam.

Mam pytanie do zadania 11.6 p.2, http://kursy.ddt.pl/?LessonId=7

W programie kino pobieram dane liczbowe (jaki film, ile biletow). Robie zmienne "int", liczby biletow odaja sie, odejmuja i nie ma problemu.
Problem mam jesli chce wprowadzic przerwanie operacji litera "p". Musze pobierac wtedy wszystko jako "char" co stwarza mi problem z danymi liczbowymi.

Mam nadzieje, ze nie pogmatwalem opowiesci :)

Q: Jak w prosty sposob mozna rozdzielic te typy?
Czy pobierac wszystko jako "char", sprawdzac co zostalo wpisane i liczby zamieniac z "char" na "int"? Czy jakos jeszcze inaczej (lepiej, prosciej)?

M.


P-13982
DejaVu
» 2010-02-19 12:16:54
Użyj funkcji getline()
P-13983
lenrokskate
» 2010-02-22 12:46:06
może spróbuj rzutowania:

C/C++
static_cast < int >( nazwa - zmiennej );
P-14022
Elaine
» 2010-02-22 13:29:17
C/C++
int num;
if( !( cin >> num ) )
{
    cin.clear();
    char ch;
    cin >> ch;
    cin.sync(); // tak na wszelki wypadek
    if( ch == 'p' )
    {
        // przerywamy
    }
    else
    {
        // ktoś tu sobie robi jaja i wpisuje niepoprawne znaki
    }
}
else
{
    // wczytano liczbę
}
P-14024
« 1 »
  Strona 1 z 1