Нужно считать целые числа, среди них есть записанные в экспоненциальном виде, есть ли способ их пометить как не правильные и пропустить, без обработки чисел как строки и переводом в число опять. Пробовал считывать в double и проверять остаток, но его может и не быть, зависит от числа, а в int записывает округлённый результат. Есть флаг fixed, но на cin он, конечно-же не работает.
Если заранее неизвестно, в каких фиксированных позициях располагаются "неправильные" числа, то пропустить их автоматически не получится. Читать придется именно строки и затем анализировать/переводить их в числа дополнительным вызовом какой-нибудь функции перевода.
Однако не совсем понятно, почему вы говорите о переводе "в число опять". Никакого "опять" тут не будет - читаем строку и переводим ее в число ровно один раз.
Допустим все числа записаны в одну строку, не знаю какой разделительный символ между ними, если пробел то просто считываем строку, если нет, то используем getline. Если строк много, то снова getline, только с другим разделительным символом
input - входной поток
string s;
int x;
while(!input.eof()){
intput>>s;//строка до разделителя
stringstream ss(s);
ss>>x;
if (!ss.eof()) {// не дошли при парсинге инта до конца строки
//значит x отметаем
report_error(s);
}
do_smth(x);
}
в итоге: если на входе было 123 2, в результате будет 123, 2; если было 123e2 2, на первой итерации s=123e2, x=123, ss.eof()=false
Нашел решение с использованием printf, он считывает только число, после этого можно проверить следующий символ, если это разделитель - число int, если нет - не целое число.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
ЗдравствуйтеХочу создать простой онлайн редактор кода (JQuery + PHP)
Добрый день! Есть спойлер на jQueryРаботает корректно, но, фишка в том, что при открытии спойлера срабатывает ссылка загрузки страницы (это необходимо,...