С++ неправильно считает

Почему неправильно считает (С++)?

int main(){
    long long int km;
    long long int a=8;
    cout<<"input km" << endl;
    cin>>km;
    cout<<(a*km);

    return 0;}
    Результат в консоли: 
    input km
    1e+10
    8

Ответы (1 шт):

Автор решения: Harry

Потому что здесь

cin >> km;

вы читаете целое число, так что из 1e8 будет прочитано только 1, а e8 останется в буфере ввода.

Попробуйте ввести 100000000 :)

→ Ссылка