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

Посимвольная обработка текстового файла: распределение всех слов по длине - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Работа с файлами http://www.cyberforum.ru/cpp-beginners/thread799097.html
Доброго времени суток... Необходимо выполнить следующее задание: Найти сумму первых шести элементов массива и записать вместо последнего элемента. (массив из 10 элементов) ВНИМАНИЕ! Нужно использовать работу с файлами (именно в этом и проблема). То есть создан, например у нас текстовый файл на диске Д под названием "лаб", в котором прописаны 10 циферок, мы оттуда должны их взять, выполнить...
C++ Размер вектора Подскажите функцию для класса vector, которая будет возвращать размер памяти, который занимает вектор. http://www.cyberforum.ru/cpp-beginners/thread799090.html
Проверьте ошибки пожалуйста в коде C++
Всем Доброго времени суток. Написал программу крестики нолики. Она ,что та не работает поможете? #include<Windows.h> #include<iostream> #include<iomanip> #include <stdio.h> #include <stdlib.h> #include <time.h>
Работа с файлами, структуры C++
Создать файл, содержащий сведения об отправке. Структура записи: номер поезда, станция назначения, время отправления, время в пути, наличие билетов. Написать программу, которая позволяет получить следующую справочную информацию: 1) наличие билетов на поезд с номером XXX. 2) время отправления поездов в город X во временном интервале от А до В часов; Помогите сделать 2) пункт #include...
C++ Высчитать значение выражения с приоритетами http://www.cyberforum.ru/cpp-beginners/thread799075.html
Дана строка символов, представляющих собой арифметическое выражение, содержащее только знаки +,-,*,/,(,) и строчные буквы английского алфавита. Требуется подсчитать результат выражения. Вход Первая строка входа содержит число n ≤ 26 количество параметров, входящих в арифметическое выражение. Следующие n строк содержат значение каждого параметра в формате t=x, где t название параметра...
C++ Двумерный массив через вектор Задача состоит в том, что надо создать массив строк через вектор, т.е. я хочу иметь возмость изменять как количество строк, так и их длину. подробнее

Показать сообщение отдельно
w0nder
 Аватар для w0nder
0 / 0 / 0
Регистрация: 23.11.2012
Сообщений: 131
12.03.2013, 01:37  [ТС]     Посимвольная обработка текстового файла: распределение всех слов по длине
Я просто еще немного переделала (вчитаталась в задание - нужно было, чтобы результат выводился не в консоли, а во втором файле) и добавила строчку if (count[i]>0) , может в этом дело

Код:

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
#include <fstream>
#include <iostream>
using namespace std;
 
bool check(char c){
    if (c==' ') return true;
    if (c==',') return true;
    if (c=='!') return true;
    if (c=='?') return true;
    if (c=='(') return true;
    if (c==')') return true;
    if (c=='\n') return true;
return false; }
 
int main(){
int ok;
do {
int count[40]; 
int n=40;
char c; 
int t=0; 
 
for (int i=0; i<n; i++) count[i]=0; 
fstream fin ("1.txt", ios::in);
fstream fout ("2.txt", ios::out);
 
    while (!fin.eof()) {
        fin.get(c);
        if (!isdigit(c)) 
        if (!check(c)){ 
            t++;  
        }
 
        else {  
            count[t-1]++; 
                                                 
            t=0; 
        }
    }
        count[t-2]++; 
 
for (int i=0; i < n-1; i++) 
    if (count[i]>0) 
    fout << "words with "<< i+1 << " letter(s): " << count[i]<<endl;
 
fin.close ();
fout.close ();
 
cout << " Vai turpinДЃt (1) vai beigt (0)?" << endl;
cin >> ok;
}
while (ok == 1);
return 0; }
 
Текущее время: 04:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru