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

Как определить конец файла? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ список http://www.cyberforum.ru/cpp-beginners/thread269912.html
Даны натуральные числа k, m, n символы s1, ... , sk, t1, ... , tm, u1, ... , un. Получить по одному разу те символы, которые входят одновременно во все три последовательности. Нужно сделать с помощью списка.
C++ Функция f(x) Найти среднее арифметическое значений функции f(x) в точках а, b, (a+b)/2, используя обращение к функции. Функция f(x): f=arctg x+ln2 x2 : a=1 b=3 http://www.cyberforum.ru/cpp-beginners/thread269908.html
не вижу ошибки C++
программа компилируется,но выводит какие то иероглифы,помогите найти ошибки #include<assert.h> #include<iostream> #include<string> static const int N = 3; //количество "карточек" в массиве static const int char_size = 256; class note{ public: char family_name;
отладить программу C++
программа компилируется,но выводит какие то иероглифы,помогите найти ошибки #include<assert.h> #include<iostream> #include<string> static const int N = 3; //количество "карточек" в массиве static const int char_size = 256; class note{ public: char family_name;
C++ спользуя прямоугольную матрицу сформировать два вектора: первый, полученный путём сложения элементов строк матрицы... http://www.cyberforum.ru/cpp-beginners/thread269875.html
Используя прямоугольную матрицу сформировать два вектора: первый, полученный путём сложения элементов строк матрицы, а второйЯ, полученный умножением матрицы на первый вектор.
C++ Константные функции-члены ? Для чего использовать #define ? не имеют права изменять поля класса почему ? class Array { ... inline double operator (int n) const; объявлен константной функцией-членом: class X { public: //??? подробнее

Показать сообщение отдельно
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
04.04.2011, 15:48     Как определить конец файла?
В файле лежит одно число, которое нужно проверить на делимость на 11.
Число большое-до 10^10000.
Попробовал сделать так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
main(){
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout);
    char b;
    int c=0;
    while (true){
    cin >> b;
    if (EOF==1) break;  //В этом
    c+=(int)b-48;
    cin >> b;
    if (EOF==1) break; //и этом месте хочу поставить проверку на конец строки...
    c-=(int)b-48;
    }
    if (c%11==0) cout << "YES"; else cout << "NO";
    return 0;
    }
Цикл идет бесконечно, хотя в input.txt число 121.
Не совсем понятно, как eof работает не в цикле while, который в данном случае не совсем подходит.
P.S. Наверняка эту задачу можно решить и по другому(через строку, например), но меня интересует именно определение конца файла.
P.P.S.после числа нету других символов

Добавлено через 11 минут
В исходниках, что я видел, было примерное такое:while (!eof(fh))
Но у меня нету переменной под файл...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru