Проверка на число которое вписывается в массив С++

289
06 августа 2017, 08:21

Всем привет,есть цикл которые заполняет массив, которые с динамической памятью

for (int i = 0; i <= gran-1; i++)
        {   
                cin >> ptr[i];  
        }

Как сделать проверку, допустим если число в консоли больше 31 не записывать его?

Answer 1

Считать число, если оно больше - не записывать.

for (int i = 0; i <= gran-1; i++)
{   
    cin >> ptr[i];  
    if (ptr[i] > 31) { i--; cout << "Bad input\n"; continue; }
}

Чтоб цикл крутился дальше с правильным счетчиком, мы его уменьшаем. И новый цикл опять будет писать в старое значение i.

READ ALSO
Инструменты для оптимизации в с++ [требует правки]

Инструменты для оптимизации в с++ [требует правки]

Я сейчас изучаю С++ и люблю всё оптимизироватьНа Python это сложно сделать, а на С и С++ в самый раз

327
средства ввода\вывода

средства ввода\вывода

Товарищи,ситуация такая : у меня есть файл json в котором описана структураФункция ReadEntrants читает файл и возвращает строку wchar_t

297
Творческое заимствование?

Творческое заимствование?

Добрый день, у меня проблема не могу вытащить слайдер товаров из этой бутcтреповской темыПереношу в проект css и скрипты master-slider, но все равно...

479
mysql правильное хранение платежей

mysql правильное хранение платежей

Возник следующий вопрос: сервис продает определенные услугиУ каждой услуги есть несколько цен со своим сроком действия

333