2 / 2 / 0
Регистрация: 08.02.2015
Сообщений: 191
1

Даны файл содержащий текст на русском языке и некоторые буквы

04.04.2015, 15:39. Показов 3127. Ответов 8
Метки нет (Все метки)

Здравствуйте! Помогите пожалуйста с программой.
Дали задачу: Даны файл содержащий текст на русском языке и некоторые буквы.Найти слово,содержащее наибольшее количество указанных букв.

Начало вот начала писать

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <conio.h>
#include<iostream>
#include<fstream>
using namespace std
int main(void)
{ int   // тут не знаю что надо написать,думала нужно k.
char c,str1,str2;
ifstream in("text1.txt") // мой файл,в котором записано небольшое предложение и несколько букв.
 
//проверка на открытие файла
if(!in)
{
cout<<"Не удается открыть файл.\n";
return 1;
}
while(!in.eof())
{in>>c
//и вот дальше не знаю писать какое условие нужно
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2015, 15:39
Ответы с готовыми решениями:

Дан файл, содержащий текст на русском языке
Дан файл, содержащий текст на русском языке. Cоставить в алфавитном порядке список всех слов,...

Дан файл, содержащий текст на русском языке. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз
Дан файл, содержащий текст на русском языке. Выяснить, входит ли данное слово в указанный текст, и...

Дан файл, содержащий текст на русском языке. Выяснить, входит ли данное слово в указанный текст, и если да, то сколько раз
...

Дан файл,содержащий текст на русском языке.& Дана строка,
#1 Дан файл,содержащий текст на русском языке.Определить сколько раз встречается самое длинное...

8
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
04.04.2015, 16:53 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
string letters = "абв"; // буквы
string w, mw; // текущее слово и слово содержащее наибольшее количество нужных букв
size_t mcount = 0;
while(!in.eof())
{
    int count = 0;
    in >> w;
    for (size_t i = 0; i < w.length(); ++i)
        if (letters.find(w[i]) != string::npos) ++count;
    if (count > mcount)
    {
        mcount = count;
        mw = w;
    }
}
 
if (mcount > 0) cout << "Слово: " << mw << endl;
else cout << "Не найдено." << endl;
1
2 / 2 / 0
Регистрация: 08.02.2015
Сообщений: 191
04.04.2015, 16:59  [ТС] 3
а в int мне что нужно написать?
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
04.04.2015, 17:02 4
Удали этот int, он не нужен.

Добавлено через 52 секунды
И подключить <string> не забудь.
0
2 / 2 / 0
Регистрация: 08.02.2015
Сообщений: 191
04.04.2015, 17:02  [ТС] 5
Поняла.

а вот это мы в начало вставляем?
C++
1
2
3
string letters = "абв"; // буквы
string w, mw; // текущее слово и слово содержащее наибольшее количество нужных букв
size_t mcount = 0;
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
04.04.2015, 17:04 6
Ну можно в начало или оставить как у меня, перед циклом.
0
2 / 2 / 0
Регистрация: 08.02.2015
Сообщений: 191
04.04.2015, 17:32  [ТС] 7
Хорошо,сейчас попробую

Добавлено через 28 минут
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
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(void)
{
    setlocale(LC_ALL, "Russian");
    string letters="а р к е";
    string w,mw;
    int k=0,i;
 
    ifstream in("text.txt");
 
if(!in)
{
    cout<<"Не удается открыть файл.\n";
    return 1;
}
while(!in.eof())
{
    char c=0;
    in>>w;
    for(i=0;i<w.length();i++)
        if(letters.find(w[i])!=string::npos) ++c;
    if(c > k)
    {
        k=c;
        mw=w;
    }
}
if(k>0)
cout<<"Cлово: "<<mw<<endl;
else
cout<<"Слово не найдено."<<endl;
system("pause");
return 0;
немного переделала,но получилось все.
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
04.04.2015, 17:53 8
Буквы в letters должны быть подряд, без пробелов.
0
2 / 2 / 0
Регистрация: 08.02.2015
Сообщений: 191
04.04.2015, 17:53  [ТС] 9
Исправлю.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2015, 17:53
Помогаю со студенческими работами здесь

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

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

Дана строка, содержащая текст на русском языке и некоторые 2 слова. Определить, сколько раз они входят непосредственно друг с другом.
Дана строка, содержащая текст на русском языке и некоторые 2 слова. Определить, сколько раз они...

Ввести текст на русском языке и заменить в нем первые буквы всех слов на заглавные
В среде MS Visual C++ разработать программу, которая вводит текст на русском языке и заменяет в нем...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru