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

Файл. Подстрока из цифр - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перевод из десятичной в Римскую http://www.cyberforum.ru/cpp-beginners/thread1020328.html
Дали курсовую , сдавать уже на днях. Может кто знает как делать? Написать программу перевода чисел из десятичной системы счисления в Римскую.исходное число считывается из одного файла, а результат записывается в другой файл.I-1;V-5; X-10; L-50; C-100; D-500; M-1000. Есть мысли вот такие.
C++ Найти первую последовательность максимальной длины в массиве Делал задачку: ввод одномерного массива из n целых чисел (1<=n<=100); Найти 1-ю последовательность максимальной длины масива; вывод результата выполнения операции. Вот что я написал, но программа не хочет работать, выдает непонятное решение или вообще зависает, помогите исправить код. Спасибо за помощь. Уже просто голова кругом едет. Вероятно я где-то сделал ошибку и не могу догнать где.... http://www.cyberforum.ru/cpp-beginners/thread1020321.html
Не могу найти ошибку C++
Задача: вывести элементы массива, которые повторяются ровно 2 раза #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv) { setlocale (LC_ALL, "Russian");
C++ Задан текст. Определить количество слов, в которых встречается буква вводимая с клавиатуры
Доброго времени суток. Помогите написать программу, пожалуйста. Заранее большое спасибо.
C++ Код не проходит компиляцию http://www.cyberforum.ru/cpp-beginners/thread1020301.html
Итак, задача - создание хеш-таблици и реализация функций для открытого хеширования х. Проблема в том, что елемент заноситься в INSERT, но не как то не правильно. В конце main cout всегда компилирует какое то M, не зависимо от того какое слово я ввел в x. Лично я считаю, что я не правильно передаю x либо плохо инициализирую element в структурах. Помогите, не могу разобраться. #define dict_size 5...
C++ дек с++ Помогите пожалуйста с задачей : Есть n черных и белых карточек, сложенных в стопку. Карточки раскладываются на столе в одну линию следующим образом: первая кладется на стол, вторая вниз стопки, третья на стол, четвертая – вниз... подробнее

Показать сообщение отдельно
vlad3996
6 / 6 / 3
Регистрация: 27.10.2013
Сообщений: 14
26.11.2013, 23:54     Файл. Подстрока из цифр
Требуется определить строки файла, содержащие максимальную по длине подстроку, состоящую только из цифр. Если таких строк несколько, вывести первые 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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <iostream>
using namespace std;
bool proverka(char *token,int &max)
{
    bool flag=true;
    for(int i=0;i<strlen(token);i++)
        if(!isdigit(token[i]))
            flag=false;
    if((flag)&&(strlen(token)>max))
        max=strlen(token);
    if(flag) return true;
    else return false;
}
int main()
{
    setlocale(LC_CTYPE,"Rus");
    bool flag;
    int number_str=0,kol_max=0,max=0;
    FILE *f1_in,*f1_out;
    if((f1_in=fopen("input.txt","r"))==NULL)
    {
        cout<<"Файл для чтения не открывается"<<endl;
        system("pause");
        return 1;
    }
    char *str=new char [1000];
    char *str2=new char [1000];
    char *token;
    char razd[]=" ,\|";
    fgets(str,1000,f1_in);
    if(feof(f1_in))
    {
        cout<<"Файл пуст"<<endl;
        system("pause");
        return 1;
    }
    rewind(f1_in);
    bool flag1;
    while(fgets(str,1000,f1_in)!=NULL)
    {
        token=strtok(str," ");
        do  proverka(token,max);
        while(token=strtok(NULL," "));
    }
    rewind(f1_in);
    cout<<"Строки, содержащие подстроки максимальной длины :"<<endl;
    while(fgets(str,1000,f1_in)!=NULL)
    {
        flag=true;
        number_str++;   
        strcpy(str2,str);                   //копия строки для вывода
        token=strtok(str,razd); 
        do 
        {
        if(proverka(token,max)&&(flag)&&(kol_max<=10)&&(strlen(token)==max))
        {
            cout<<"Строка "<<number_str<<" ------ "<<str2<<endl;                    //вывод всей строки
            flag=false;         //чтобы повторно не выводило
            kol_max++;
        }
        }
        while(token=strtok(NULL,razd));
    }
    system("pause");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru