Форум программистов, компьютерный форум CyberForum.ru

помогите найти ошибку - C++

Восстановить пароль Регистрация
 
snegok22
 Аватар для snegok22
0 / 0 / 0
Регистрация: 30.08.2010
Сообщений: 23
08.11.2011, 23:11     помогите найти ошибку #1
C++
1
2
3
4
5
6
7
8
9
10
#include "../../header.h"
int main()
{
    vector <int> nums(0);
    int num = 0;
    while (cin>>num, nums.size()<2)
    nums.push_back(num);
    cout << nums[0] << "," << nums[1] << "\n";
    keep_window_open();
}
Всем привет. Начал изучать C++ по Страуструпу. В зааднии предлогается написать программу, считывающую и выводящую на экран 2 числа. Считывает почему то три. Не хотелось бы оставлять пробела. Помогите пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2011, 23:11     помогите найти ошибку
Посмотрите здесь:

Помогите найти ошибку C++
C++ Помогите найти ошибку
C++ помогите найти ошибку
C++ помогите найти ошибку.
C++ Помогите найти ошибку
C++ Помогите найти ошибку.
C++ Помогите найти ошибку: По двум сторонам и углу найти все остальное

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
09.11.2011, 01:00     помогите найти ошибку #2
C++
1
2
while (cin>>num, nums.size()<2)
        nums.push_back(num);
C++
1
2
3
4
5
while (nums.size()<2)
{
        cin>>num;
        nums.push_back(num);
}
Будет считать 2 числа. Пробел тут не причем.
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
09.11.2011, 01:42     помогите найти ошибку #3
snegok22, используйте ВСЕГДА фигурные скобки. вам это существенно облегчит жизнь пока вы учите язык. Да и после тоже.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
{
        vector <int> nums(0);
        int num, i = 0;
        while(nums.size()<2){ //заполняем вектор.
                        cin>>num;
            nums.push_back(num);
        }
        while(!nums.empty()){   //печатаем то что есть в векторе пока он не будет пустым
            cout << nums.front() << endl;
            nums.erase(nums.begin());  // удаляем первый элемент
        }
        system("pause");
    return 0;
}
Yandex
Объявления
09.11.2011, 01:42     помогите найти ошибку
Ответ Создать тему
Опции темы

Текущее время: 03:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru