Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ошибка с функцией - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не выполняется действия в функциях http://www.cyberforum.ru/cpp-beginners/thread621052.html
В программе осуществляется ввод целых чисел ( при вводе 0 происходит остановка дальнейшего ввода чисел в массив ), затем последовательность и сумма чисел массива выводятся на экран. #include...
C++ Сформировать файл из действительных чисел. Найти расположенные в порядке убывания их модулей В этой программе представлен алгоритм решения: Сформировать файл из действительных чисел. Найти наибольшее из значений модулей компонентов с четными номерами. А мне нужно так: Сформировать файл... http://www.cyberforum.ru/cpp-beginners/thread621045.html
C++ Обратная формула
Задача есть формула: a=(a1+7)%10; Как будет обратная формула для получения a1 ? задача 3.46 Дейтела все сделал а тут затык. Помогите. Спасибо.
C++ Массивы. Ошибка в программе
Помогите, пожалуйста, решить задачу! Почему не проверяется условие с массивом. Что не так? Весь текстовый файл у меня забит словами "Clean". #include <fstream> #include <iostream> using...
C++ Подсчет частоты встречи слов от 1 до 10 букв http://www.cyberforum.ru/cpp-beginners/thread621016.html
Подсчет частоты встречи слов от 1 до 10 букв(включительно) в текстовых файлах русского алфавита. Нужно подсчитать и сделать в stringird некую статистику: длина слова, количество встреченных слов в...
C++ Задание на деревья Всем доброго времени суток. Суть задачи дана строка вида: (1)(2)(3)()(4), строка может быть любой, пустые скобки означают что данная ветвь должна остаться пустой. Дерево нужно заполнить числами из... подробнее

Показать сообщение отдельно
Fooly
21 / 17 / 1
Регистрация: 26.03.2012
Сообщений: 147
08.07.2012, 22:13  [ТС]
Цитата Сообщение от grizlik78 Посмотреть сообщение
Ну, начать можно с того, что это не присваивание, а сравнение. А в данном простом случае я бы сделал ввод до первого отрицательного, или до первого не числа.
C++
1
2
3
4
    int i = 0;
    while (i < size && cin >> golf[i] && golf[i] >= 0)
        ++i;
    return i;
Правда если введено не число, то поток переходит в состояние ошибки, а введённые символы остаются в потоке. Так что с дальнейшим вводом будут проблемы.
Я тоже сильно не стал замарачиваться и сделал выход не через буквы, а через отрицательное число, правда у меня вышло более громаздко =) Спасибо за помощь

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int vvod(int golf[], int size)
{
    using namespace std;
    int l=0;
    int ch;
    for (int i=0; i<size; i++)
    {   
        cout << "Введите значение: ";
        cin>>ch;
        if (ch >=0)
        {
        golf[i]=ch;
        l +=1;
        }
        else
            break;
    }
    return l;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru