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

считывание потока чисел - C++

Восстановить пароль Регистрация
 
zzhenya
0 / 0 / 0
Регистрация: 23.12.2010
Сообщений: 7
24.12.2010, 00:06     считывание потока чисел #1
здраствуйте такая вот задачка http://acm.timus.ru/problem.aspx?space=1&num=1001
а вот мой код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<vector>
#include <math.h>
 
using namespace std;
vector < int > A;
vector < int > B;
 
void main(){
    A.resize(1000000);
    B.resize(1000000);
    int i=0;
    while(scanf("%d",&A[i])!=EOF){
        ++i;
    }
    for (int i=A.size()-1;i>=0;--i){
        printf("%.4d\n",sqrt((double)A[i]));
    }
}
никак не разберусь, почему считывание не заканчивается
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2010, 00:06     считывание потока чисел
Посмотрите здесь:

C++ считывание строк и чисел.
Считывание с потока ввода C++
считывание строк из потока файлов C++
Считывание чисел в массив C++
C++ Считывание символа с потока для дальнейших действий
C++ Считывание чисел
Считывание комплексных чисел C++
C++ Считывание из стандартного потока ввода
Считывание до конца потока в числовой массив C++
C++ Считывание чисел в строке. С++
C++ Считывание строки из потока, не удаляя символ-ограничитель
C++ Считывание до конца входного потока

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
.4rray
8 / 8 / 0
Регистрация: 15.12.2010
Сообщений: 41
24.12.2010, 00:17     считывание потока чисел #2
EOF - конец файла, используется для fscanf
А так просто while(scanf("%d",&A[i]) != 0)
И ещё проверку надо, что входной поток меньше 256kb, то есть
while(scanf(("%d",&A[i]) != 0) && (i <= 256*256)
Кстати там в примере используют не int а float;float - 4 байта.
zzhenya
0 / 0 / 0
Регистрация: 23.12.2010
Сообщений: 7
24.12.2010, 00:29  [ТС]     считывание потока чисел #3
спасибо)
я все сделала так, как вы сказали, но все равно ввожу тест, нажимаю enter много раз - программа не выполняется дальше
.4rray
8 / 8 / 0
Регистрация: 15.12.2010
Сообщений: 41
24.12.2010, 00:39     считывание потока чисел #4
Я немного наошибался ))
while(scanf(("%d",&A[i]) != 1) || (i <= 256*256))
zzhenya
0 / 0 / 0
Регистрация: 23.12.2010
Сообщений: 7
24.12.2010, 00:57  [ТС]     считывание потока чисел #5
если поменять только эту строчку выдает 4 ошибки:
1)error C2040: '!=' : 'int *' differs in levels of indirection from 'int'
2)error C2446: '!=' : no conversion from 'int' to 'int *'
3)error C2664: 'scanf' : cannot convert parameter 1 from 'bool' to 'const char *'
4)fatal error C1903: unable to recover from previous error(s); stopping compilation
и все с указанием на строчку while(scanf(("%d",&A[i]) != 1) || (i <= 256*256))
Yandex
Объявления
24.12.2010, 00:57     считывание потока чисел
Ответ Создать тему
Опции темы

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