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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.86
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
#1

При запуске программы указать адрес файла и посчитать количество слов в нем - C++

11.06.2009, 20:38. Просмотров 1763. Ответов 14
Метки нет (Все метки)

Ввод, вывод. При запуске программы указать адрес файла и посчитать количество слов в нем! Где-то ошибка при вводе адреса ... помогите!

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 "stdafx.h"
#include <fstream.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
#include <windows.h>
 
const int N=1000;
 
void main()
{
    int z=0;
    char ch;
    char kur1111[]=" Введите адрес и полное имя файла!\n";                
    CharToOem (kur1111, kur1111);   
    cout<<kur1111;
    char h[N];
    cout<<" ";
    cin>>h[N];
    ifstream in("h[N]");
    if (!in.fail())
    {
        while (in)
        {
            in.get(ch);
            cout<<ch;
            if(ch==' ')
            {
                z++;
            }
            else if(ch=='.' || ch==',' || ch=='"' || ch=='!' || ch=='-' || ch=='?') 
            {
                if(ch==' ')
                {
                    z++;
                }
            }
        }
    }
    else
    {
        char kur11111[]="\n Ошибка! Неверно указан адрес или имя файлa!\n";                
        CharToOem (kur11111, kur11111);   
        cout<<kur11111;
    }
    char kur2[]="В тексте ";                
    CharToOem (kur2, kur2); 
    char kur3[]=" слов";                
    CharToOem (kur3, kur3); 
    cout<<"\n\t\t\t\t\t\t\t"<<kur2<<z<<kur3<<"\n";
    cout<<"\n\n";
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2009, 20:38     При запуске программы указать адрес файла и посчитать количество слов в нем
Посмотрите здесь:

Посчитать количество слов в каждой строке текстового файла - C++
пусть дан текстовый файл. создайте файл целых чисел, в котором каждой строке исходного файла соответствует в выходном файле число, равное...

Из файла считать третью строку и посчитать количество слов в этой строке - C++
Помогите плиз!!!Завтра надо здать такую вот задачку:Есть файл(создаётся самостоятельно),с файла считать третью строку и пощитать количество...

Указать адрес файла по умолчанию - C++
Как прописать код, чтобы путь создания файла был по умолчанию, но имя файла пользователь вводил с клавиатуры? Что-то вроде cout «...

Ошибка программы при запуске .exe файла из коммандной строки - C++
Доброе Время ! Собсно некорректно работает .exe файл проекта Visual Studio из коммандной строки windows. (Нужно с целью использования...

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

Посчитать сумму с заданной точностью eps и указать количество учтенных слагаемых - C++
№1 задано действительные числа x,a,e(epselon)(x!=0,a!=0,e&gt;0). Сделать программу которая считает суму с заданной точностью e(epselon) и...

Текстовый файл. Открыть, посчитать в нем количество английских и русских букв - C++
У меня есть текстовый фаил с русским и английским текстом, как мне открыть этот фаил в с++ (путь к нему как указывать правильно), и как...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 21:44     При запуске программы указать адрес файла и посчитать количество слов в нем #2
C++
1
2
3
4
5
...
        cin>>h[N];
        ifstream in("h[N]");
        if (!in.fail())
...
Попробуй

C++
1
2
3
4
5
...
        cin>>h;
        ifstream in("h");
        if (!in.fail())
...
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
11.06.2009, 21:49  [ТС]     При запуске программы указать адрес файла и посчитать количество слов в нем #3
Цитата Сообщение от ZVolodumur Посмотреть сообщение
[CPP]
C++
1
2
3
4
5
...
        cin>>h;
        ifstream in("h");
        if (!in.fail())
...
Ничего не изменилось...
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 22:02     При запуске программы указать адрес файла и посчитать количество слов в нем #4
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
//#include "stdafx.h"
#include <fstream.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
#include <windows.h>
 
const int N=1000;
 
void main()
{
        int z=0;
        char ch;
        char kur1111[]=" Ââåäèòå Г*äðåñ ГЁ ïîëГ*îå èìÿ ГґГ*éëГ*!\n";                
        CharToOem (kur1111, kur1111);   
        cout<<kur1111;
        char h[N];
        cout<<" ";
        cin>>h;
         ifstream ifs ( h , ifstream::in );
        if (!ifs.fail())
        {
                while (ifs)
                {
                        ifs.get(ch);
                        cout<<ch;
                        if(ch==' ')
                        {
                                z++;
                        }
                        else if(ch=='.' || ch==',' || ch=='"' || ch=='!' || ch=='-' || ch=='?') 
                        {
                                if(ch==' ')
                                {
                                        z++;
                                }
                        }
                }
        }
        else
        {
                char kur11111[]="\n ГЋГёГЁГЎГЄГ*! ГЌГҐГўГҐГ°Г*Г® ГіГЄГ*Г§Г*Г* Г*äðåñ èëè èìÿ ГґГ*éëa!\n";                
                CharToOem (kur11111, kur11111);
                cout<<kur11111;
        }
        char kur2[]="Г‚ ГІГҐГЄГ±ГІГҐ ";
        CharToOem (kur2, kur2); 
        char kur3[]=" ñëîâ";                
        CharToOem (kur3, kur3); 
        cout<<"\n\t\t\t\t\t\t\t"<<kur2<<z<<kur3<<"\n";
        cout<<"\n\n";
        system("pause");
}
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
11.06.2009, 22:07  [ТС]     При запуске программы указать адрес файла и посчитать количество слов в нем #5
Работает! СПС! Но... если задать неверный адрес вместо вывода

C++
1
2
3
...
"Ошибка! Неверно задано адрес или имя файлa!";
...
выполняется

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
...
if (!in.fail())
    {
        while (in)
        {
            in.get(ch);
            cout<<ch;
            if(ch==' ')
            {
                z++;
            }
            else if(ch=='.' || ch==',' || ch=='"' || ch=='!' || ch=='-' || ch=='?') 
            {
                if(ch==' ')
                {
                    z++;
                }
            }
        }
    }
...
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 22:22     При запуске программы указать адрес файла и посчитать количество слов в нем #6
Да. Ище слова лучше считай так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
...
 ifstream ifs ( h , ifstream::in );
        if (!ifs.fail())
        {     char ch[N],*p;
          while (!ifs.eof())
                {
                        ifs.getline(ch,80);
                        cout<<ch<<endl;
                        p=strtok(ch," !?,.-_");
                        while(p)
                        {p=strtok(NULL," !?,.-_"); z++;}
 
                }
        }
        else
...
Вложения
Тип файла: txt Unit1_Slova_v_faile.txt (1.2 Кб, 11 просмотров)
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 22:36     При запуске программы указать адрес файла и посчитать количество слов в нем #7
Работает! СПС! Но... если задать неверный адрес вместо вывода...
Вот Код
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
//#include "stdafx.h"
#include <fstream.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
#include <windows.h>
 
const int N=1000;
 
void main()
{
        int z=0;
        char kur1111[]=" Ââåäèòå Г*äðåñ ГЁ ïîëГ*îå èìÿ ГґГ*éëГ*!\n";
        CharToOem (kur1111, kur1111);   
        cout<<kur1111;
        char h[N];
        cout<<" ";
        cin>>h;
         ifstream ifs ( h , ifstream::in );
        if (!ifs.fail())
        {     char ch[N],*p;
          while (!ifs.eof())
                {
                        ifs.getline(ch,80);
                        cout<<ch<<endl;
                        p=strtok(ch," !?,.-_");
                        while(p)
                        {p=strtok(NULL," !?,.-_"); z++;}
 
                }
        char kur2[]="Г‚ ГІГҐГЄГ±ГІГҐ ";
        CharToOem (kur2, kur2);
        char kur3[]=" ñëîâ";
        CharToOem (kur3, kur3);
        cout<<"\n\t\t\t\t\t\t\t"<<kur2<<z<<kur3<<"\n";
        cout<<"\n\n";
 
        }
        else
        {
                char kur11111[]="\n ГЋГёГЁГЎГЄГ*! ГЌГҐГўГҐГ°Г*Г® ГіГЄГ*Г§Г*Г* Г*äðåñ èëè èìÿ ГґГ*éëa!\n";
                CharToOem (kur11111, kur11111);
                cout<<kur11111;
        }
 
        system("pause");
}
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
11.06.2009, 22:44  [ТС]     При запуске программы указать адрес файла и посчитать количество слов в нем #8
Та же проблема (
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 23:08     При запуске программы указать адрес файла и посчитать количество слов в нем #9
Та же проблема (
У меня всё нормально. какой компилятор?
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
11.06.2009, 23:18  [ТС]     При запуске программы указать адрес файла и посчитать количество слов в нем #10
Цитата Сообщение от ZVolodumur Посмотреть сообщение
У меня всё нормально. какой компилятор?
Microsoft Visual C++ 6.0 Standard Edition
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 23:25     При запуске программы указать адрес файла и посчитать количество слов в нем #11
У меня в C++ Builder 6 нормально... Но тот кусок кода оно неможет выполнять эсли неправильно задано имя файла...

Добавлено через 3 минуты 34 секунды
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
//#include "stdafx.h"
#include <fstream.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
#include <windows.h>
 
const int N=1000;
 
void main()
{
        int z=0;
        char kur1111[]=" Введите адрес и полное имя файла!\n";
        CharToOem (kur1111, kur1111);   
        cout<<kur1111;
        char h[N];
        cout<<" ";
        cin>>h;
         ifstream ifs ( h , ifstream::in );
        if (!ifs.fail())
        { cout<<"Эсли отображаеться то имя файла верное";
         char ch[N],*p;
          while (!ifs.eof())
                {
                        ifs.getline(ch,80);
                        cout<<ch<<endl;
                        p=strtok(ch," !?,.-_");
                        while(p)
                        {p=strtok(NULL," !?,.-_"); z++;}
 
                }
        char kur2[]="В тексте ";
        CharToOem (kur2, kur2);
        char kur3[]=" слов";
        CharToOem (kur3, kur3);
        cout<<"\n\t\t\t\t\t\t\t"<<kur2<<z<<kur3<<"\n";
        cout<<"\n\n";
 
        }
        else
        {
                char kur11111[]="\n Ошибка! Неверно указан адрес или имя файлa!\n";
                CharToOem (kur11111, kur11111);
                cout<<kur11111;
        }
 
        system("pause");
}
Эсли ты указал неверное имя файла и програма вивела строку Эсли отображаеться то имя файла верное", то чтото не так эсли не вивела то всё норм
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
11.06.2009, 23:28  [ТС]     При запуске программы указать адрес файла и посчитать количество слов в нем #12
Даже если адрес введен не верно отображаеться строка

C++
1
2
3
...
cout<<"Эсли отображаеться то имя файла верное";
...
ZVolodumur
49 / 49 / 3
Регистрация: 21.05.2009
Сообщений: 156
11.06.2009, 23:37     При запуске программы указать адрес файла и посчитать количество слов в нем #13
Э то уже какието глюки

Добавлено через 4 минуты 56 секунд
Ану так
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
//#include "stdafx.h"
#include <fstream.h>
#include <conio.h>
#include <iostream.h>
#include <iomanip.h>
#include <stdio.h>
#include <windows.h>
 
const int N=1000;
 
void main()
{
        int z=0;
        char kur1111[]=" Ââåäèòå Г*äðåñ ГЁ ïîëГ*îå èìÿ ГґГ*éëГ*!\n";
        CharToOem (kur1111, kur1111);   
        cout<<kur1111;
        char h[N];
        cout<<" ";
        cin>>h;
         ifstream ifs ( h , ifstream::in );
        if (ifs.good())
        {
         char ch[N],*p;
          while (!ifs.eof())
                {
                        ifs.getline(ch,80);
                        cout<<ch<<endl;
                        p=strtok(ch," !?,.-_");
                        while(p)
                        {p=strtok(NULL," !?,.-_"); z++;}
 
                }
        char kur2[]="Г‚ ГІГҐГЄГ±ГІГҐ ";
        CharToOem (kur2, kur2);
        char kur3[]=" ñëîâ";
        CharToOem (kur3, kur3);
        cout<<"\n\t\t\t\t\t\t\t"<<kur2<<z<<kur3<<"\n";
        cout<<"\n\n";
 
        }
        else
        {
                char kur11111[]="\n ГЋГёГЁГЎГЄГ*! ГЌГҐГўГҐГ°Г*Г® ГіГЄГ*Г§Г*Г* Г*äðåñ èëè èìÿ ГґГ*éëa!\n";
                CharToOem (kur11111, kur11111);
                cout<<kur11111;
        }
 
        system("pause");
}
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
11.06.2009, 23:51     При запуске программы указать адрес файла и посчитать количество слов в нем #14
Цитата Сообщение от IamSCORPION Посмотреть сообщение
Даже если адрес введен не верно отображаеться строка

C++
1
2
3
...
cout<<"Эсли отображаеться то имя файла верное";
...
Пробуй так :
C++
1
2
ifstream ifs;
ifs.open(h);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2009, 00:10     При запуске программы указать адрес файла и посчитать количество слов в нем
Еще ссылки по теме:

посчитать количество слов - C++
я все вроде написал, но надо еще что то написать если между словами по несколько пробелов, а то сейчас он лишние слова в таком случае...

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

Посчитать количество слов в строке - C++
Здравствуйте! Дайте пожалуйста пример функции которая считает количество слов с строке с помощью функции strtok. Number_Word (char...

Посчитать количество слов в строке - C++
Всем привет!Зарегался я на форуме недавно,минут 5 назад.У меня есть проблема,моя программа(внизу)должна считать сколько слов в строке.Мне...

Посчитать количество слов в строке - C++
Здравствуйте, я не знаю в чем дело, но прога всегда выдает что в строке 1 слово. #include &lt;iostream&gt; #include &lt;string.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
IamSCORPION
SysOp
38 / 37 / 1
Регистрация: 13.04.2009
Сообщений: 274
12.06.2009, 00:10  [ТС]     При запуске программы указать адрес файла и посчитать количество слов в нем #15
Цитата Сообщение от FunDuck Посмотреть сообщение
Пробуй так :
C++
1
2
ifstream ifs;
ifs.open(h);
Непомогло...

Но я уже разобрался! Спасибо всем за труди!
Yandex
Объявления
12.06.2009, 00:10     При запуске программы указать адрес файла и посчитать количество слов в нем
Ответ Создать тему
Опции темы

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