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

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

Войти
Регистрация
Восстановить пароль
 
botwa
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 22
#1

файл и строки - C++

20.12.2009, 20:46. Просмотров 445. Ответов 2
Метки нет (Все метки)

такая задача по файлам

дан файл.в нём некий набор чисел.
нужно выяснить есть ли среди этого набора чисел хотя бы одна последовательность и если есть, то какая максимальная длина?

у меня есть начало написанной программы, но даже в ней где-то проблемы.
у меня не считывает например в массив из файла (в файле лежит набор чисел в строчку через пробелы, в конце строки нчиего нет, нкиаких пробелов, просто конец и всё).
логика была такая: сначала считать все числа из файла в массив. потом найти разность между соседними элементами массива, чтобы дальше выяснять последовательность или нет, но как-то после разности мысли стухли. у меня не получается разработать эффективную формулу для получения ответа на вопрос есть ли последовательность и если их несколько, то какая самая длинная? сколько в ней символов?

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
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream f;
    int i, n;
    float *a, *b;
    f.open("C:\\abc.txt");
    f>>n;
    a=new float[n];
    b=new float[n-1];
    for (i=0; i<n; i++)
    {
        f>>a[i];
        cout<<a[i]<<"\t";
    }
    for (i=0; i<(n-1); i++)
    {
        b[i]=a[i]-a[i+1];
    }
    
                ...
 
    f.close();
    delete []a;
    return 0;
}
и ещё если несложно, то не могли бы вы помочь написать программу по строкам:
"даны две строки. нужно сравнить их и вывести самую длинную их общую часть"
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2009, 20:46     файл и строки
Посмотрите здесь:

Найти в файле максимальную длину строки и вывести в новый файл все строки, имеющую такую длину - C++
Товарищи, простите что обращаюсь. Кому не сложно, помогите (решите) хоть сколько нибудь из этих 3 заданий. Сам я чайник, много проболел и...

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

Файл.Удаление строки. - C++
Всем здрасте.Собственно проблема.Есть текстовый файл,который заполнен любым текстом. Нужно что б пользователь мог выбрать номер...

Вывод из строки в файл - C++
Уважаемые знатоки у меня к вам несколько вопросов по программе.. #include&lt;iostream&gt; #include&lt;fstream&gt; #include&lt;string&gt; using...

Строки, запись в файл - C++
int main() { std::ofstream oFile(&quot;t.txt&quot;); oFile &lt;&lt; my_func(); } char *my_func() { char szResult = {&quot; \0&quot;}; return...

файл и длина строки - C++
Предположим, я создал файл в блокноте. Назвал его &quot;A.txt&quot;. В этом файле написал какое-то слово. Сохранил. Как мне подсчитать длину этого...

Строки.Текстовый файл. - C++
Есть файл с 5 строками. Задача состоит в том, чтобы использовать каждую строку по очереди, т.е. как я понимаю нужно в переменную по очереди...

Запись строки в файл - C++
char name; cin &gt;&gt; name; strcpy(file_txt, name); strcat(file_txt, &quot;.txt&quot;); ofstream user(file_txt); ...

Запись строки в файл - C++
Нужно ввести строку в текстовый файл(строку нужно ввести)!!! Если не вводить то работает(как сделать, как нужно): #include &lt;iostream.h&gt; ...

Вывод строки в файл - C++
Препод задал объяснить задал объяснить программу: #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; /* * */ int main(int argc,...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
20.12.2009, 20:58     файл и строки #2
что является определением последовательности?
botwa
0 / 0 / 0
Регистрация: 12.10.2009
Сообщений: 22
21.12.2009, 01:55  [ТС]     файл и строки #3
в моём случае это просто арифметическая прогрессия

подумалось что возможно надо взять тогда модуль разности. если прогрессия убывающая...

Добавлено через 48 минут
люди, помогите пожалуйста, не молчите!

Добавлено через 4 часа 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 <iostream>
#include <fstream>
using namespace std;
int main()
{
    ifstream f;
    int i, n, j;
    float *a, *b, *c;
    f.open("C:\abc.txt");
    f>>n;
    a=new float[n];
    b=new float[n-1];
    c=new float[n-1];
    for (i=0; i<n; i++)
    {
        f>>a[i];
        cout<<a[i]<<"\t";
    }
    for (i=0; i<(n-1); i++)
    {
        b[i]=a[i]-a[i+1];
    }
    j=0;
    for (i=0; i<(n-1); i++)
    {
        if a[i]=a[i+1]-b[j]
            then c[j]=(c[j]+1)
        else
        {
            j=j+1;
            i=j;
        }
    }
    f.close();
    delete []a;
    delete []b;
    delete []c;
    return 0;
}

вот что у меня вышло.
выдаёт ошибки: error C2061: синтаксическая ошибка: идентификатор "a" в строчке 22.
и error C2181: недопустимый else без парного if в 29.
не поняла в чёммоя поблема если честно.
что ему не нарвится?
предыдущие a нарвились, а в 22 не понарвился?
и что не так с if и else?
Ответ Создать тему
Опции темы

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