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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
InSpectr
10 / 10 / 1
Регистрация: 09.09.2013
Сообщений: 53
#1

Считывание после определенного числа - C++

19.12.2013, 20:58. Просмотров 301. Ответов 2
Метки нет (Все метки)

Добрый день. Дан текстовой фай:
2
0.3
0.1
3
0.5
0.2
0.5
4
0.5
0.7
0.3
0.2
Как считать в массив только те данные, после которого пользователь ввел цифру.
Например: Пользователь вводит цифру 3. В мой массив записывается a[0]=0.5 а[1]=0.2 a[2]=0.5

Добавлено через 1 час 29 минут
Народ подскажите пожалуйста.

Добавлено через 6 минут
Написал вот такой код но он считывает не правильно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include "stdafx.h"
#include <iostream>
#include <fstream>
using namespace std;
 
 
 
int main()
{
    float k=3;
    float a[3];
    float t;
    int p=100;
    bool q=false;
    ifstream f1("text.txt");
    if(f1==NULL)
        cout<<strerror(errno)<<endl;
    while(!f1.eof())
    {   
        f1>>t;
        if(t==k)
        {
            p=0;
            q=true;
        }
        if(q==true&&p<k)
        {
            f1>>a[p];
            p+=1;
 
        }
    }
    if(q==false)
        cout<<"заданного узла нет";
    else
        for(int i=0;i<k;i++)
            cout<<endl<<a[i];
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2013, 20:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Считывание после определенного числа (C++):

Считывание определенного текста из файла - C++
У меня есть текст в файле ASD/FG/GH. Как мне записать все, что разделено табуляцией в разные чаровские переменные? До первого понятно,...

Считывание из файла определенного формата - C++
Доброе время суток, запутался тут, помогите пожалуйста. информация в файле представлена следующим образом ...

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

Сортировка массива до и после определенного элемента - C++
Есть одномерный массив из 20 последовательных элементов. Нужно: перемешать элементы массива, выбрать случайный элемент и отсортировать...

Вывод части строки после определенного символа - C++
Написал функцию: #include &lt;iostream.h&gt; #include &lt;string.h&gt; void main() { char stroka; cin&gt;&gt;stroka; char*primer; ...

Считывание строки после пробела - C++
Здравствуйте. У меня возник вопрос насчет строк. Например у нас есть строка &quot;Hello John&quot;, как можно отдельно вывести название после пробела...

2
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
19.12.2013, 21:07 #2
Нужна ф-я определения является ли строка целым\дробным числом.

Далее в цикле:
- считываем номер блока (целое число)
- пока не считаем целое или не наступит конец файла добавляем текущее число в текущий блок
- если считали целое закрываем текущий блок открываем новый и продолжаем с второго пункта
0
InSpectr
10 / 10 / 1
Регистрация: 09.09.2013
Сообщений: 53
19.12.2013, 21:21  [ТС] #3
так, а если над будет считать после цифры 3? а у вас цикл сразу после первого целого

Добавлено через 10 минут
думаю вот так будет хорошо
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// считать  после определенной строки.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <fstream>
using namespace std;
 
 
 
int main()
{
    float k=5;
    float a[5];
    float t;
    int p=100;
    bool q=false;
    ifstream f1("text.txt");
    if(f1==NULL)
        cout<<strerror(errno)<<endl;
    while(!f1.eof())
    {   
        f1>>t;
        if(t==k)
        {
            q=true;
            for(int i=0;i<k;i++)
                f1>>a[i];
        }
    }
 
    if(q==true)
        for(int i=0;i<k;i++)
            cout<<endl<<a[i];
    else
        cout<<"no";
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2013, 21:21
Привет! Вот еще темы с ответами:

Считывание символов до пробела и после - C++
Здравствуйте. Считываю цифры с помощью функции gets_s(например 3 11). Подскажите как сделать,чтобы цифы до пробелы приравнялись допустим...

Мигающая точка, которая после определенного времени пропадает - C++
Как в произвольном месте консоли разместить точку, которая после определенного времени (например, секунды 3) пропадет? Желательно, чтобы...

Поставить ноль после каждого определенного значения в массиве - C++
доброго времени суток, друзья! у меня к вам есть просьба, объясните не разумному человеку как после отсортировать массив... я это ни на...

операторы ввода вывода << >>, последний не работает после определенного момента - C++
у меня отказывает оператор &gt;&gt; после определенного момента ни в какую не хочет принимать на вход поток. не знаю почему но мне кажется...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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