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

Текстовые файлы с числовой информацией. ВЫРУЧАЙТЕ ! - C++

Восстановить пароль Регистрация
 
nikitenko_d
0 / 0 / 0
Регистрация: 10.03.2013
Сообщений: 25
22.03.2013, 21:18     Текстовые файлы с числовой информацией. ВЫРУЧАЙТЕ ! #1
Помогите с задачей!!! очень нужно !!!

Дано текстовый файл. Посчитать количество появлений в нем каждой маленькой буквы и создать файл, элементы которого имеют вид "<буква> - <количество её появлений>" (например, "а-25"). Буквы отсутствующие в тексте не включать. Рядки упорядочить за возрастанием кодов букв.

Добавлено через 1 час 10 минут
Заранее благодарю
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.03.2013, 21:18     Текстовые файлы с числовой информацией. ВЫРУЧАЙТЕ !
Посмотрите здесь:

C++ Текстовые файлы
C++ Текстовые файлы в C++
C++ Текстовые файлы
Текстовые файлы. C++
Текстовые файлы в С++ C++
C++ Текстовые файлы
Текстовые файлы C++
Текстовые файлы в С++ C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mindz
 Аватар для Mindz
7 / 7 / 1
Регистрация: 31.01.2010
Сообщений: 51
22.03.2013, 21:38     Текстовые файлы с числовой информацией. ВЫРУЧАЙТЕ ! #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
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
#include <iostream>
#include <string>
#include <fstream>
#include <map>
#include <algorithm>
 
using namespace std;
 
bool _CounterLowerChar( const string &, map< char, unsigned int > & );
void _toOut( fstream *, const map< char, unsigned int > & );
 
int main()
{  
  fstream * _file;
  string _buffer, _result;
  char _pathToFile[200];
  map< char, unsigned int > _container;
 
  cout << "Enter the path to the file: ";
 
  if ( cin >> _pathToFile ) {
      _file = new fstream( _pathToFile );
      if ( _file -> is_open() ) {
          while ( *_file >> _buffer ) _result += _buffer;
          if ( !_result.empty() ) {
              if ( _CounterLowerChar( _result, _container ) )
                  _toOut( _file, _container );
          } else cout << "Input string is empty!" << endl;
      } else {
              cout << "Path to file is wrong!" << endl;
              delete _file;
        }
  } else cout << "As you type, an error occurred" << endl;
 
  system("PAUSE");
 
  return EXIT_SUCCESS;
}
 
bool _CounterLowerChar( const string &_str, map<char, unsigned int> &_con )
{
  string::const_iterator index = _str.begin();
  unsigned int _Counter = 0;
 
  while ( index != _str.end() ) {
         if ( *index >= 'a' && *index <= 'z' ) {
             _Counter = count( _str.begin(), _str.end(), *index );
             _con[*index] = _Counter;
         }
         index++;
  }
 
  return !_con.empty();
}
 
void _toOut( fstream *_file, const map<char, unsigned int> &_con )
{
  map<char, unsigned int>::const_iterator i;
 
  for ( i = _con.begin(); i != _con.end(); i++ ) {
       cout << i -> first << " - " << i -> second << endl;
  }
}
Ой забыл что в файл, сейчас подождите выведем в файл а не на экран результаты.

В этом варианте создает текстовый файл Result.txt,который будет лежать в той же директории что и исполняемый файл.Надеюсь вам это подойдет.Делал спеша.

Добавлено через 39 секунд
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
67
#include <iostream>
#include <string>
#include <fstream>
#include <map>
#include <algorithm>
 
using namespace std;
 
bool _CounterLowerChar( const string &, map< char, unsigned int > & );
void _toOut( const map< char, unsigned int > & );
 
int main()
{  
  fstream * _file;
  string _buffer, _result;
  char _pathToFile[200];
  map< char, unsigned int > _container;
 
  cout << "Enter the path to the file: ";
 
  if ( cin >> _pathToFile ) {
      _file = new fstream( _pathToFile );
      if ( _file -> is_open() ) {
          while ( *_file >> _buffer ) _result += _buffer;
          if ( !_result.empty() ) {
              if ( _CounterLowerChar( _result, _container ) ) {
                  _toOut( _container );
                  _file -> close();
                  delete _file;
              }
          } else cout << "Input string is empty!" << endl;
      } else {
              cout << "Path to file is wrong!" << endl;
              delete _file;
        }
  } else cout << "As you type, an error occurred" << endl;
 
  system("PAUSE");
 
  return EXIT_SUCCESS;
}
 
bool _CounterLowerChar( const string &_str, map<char, unsigned int> &_con )
{
  string::const_iterator index = _str.begin();
  unsigned int _Counter = 0;
 
  while ( index != _str.end() ) {
         if ( *index >= 'a' && *index <= 'z' ) {
             _Counter = count( _str.begin(), _str.end(), *index );
             _con[*index] = _Counter;
         }
         index++;
  }
 
  return !_con.empty();
}
 
void _toOut( const map<char, unsigned int> &_con )
{
  map<char, unsigned int>::const_iterator i;
  const char * _resultFile = "Result.txt";
  ofstream _outFile( _resultFile );
 
  for ( i = _con.begin(); i != _con.end(); i++ )
       _outFile << i -> first << " - " << i -> second << endl;
}
Yandex
Объявления
22.03.2013, 21:38     Текстовые файлы с числовой информацией. ВЫРУЧАЙТЕ !
Ответ Создать тему
Опции темы

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