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

Определить количество слов текста, в которых первый и последний символы совпадают - C++

Восстановить пароль Регистрация
 
Demix-V
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 8
10.04.2013, 23:31     Определить количество слов текста, в которых первый и последний символы совпадают #1
Написать программу, которая:
• Выводит текст на экран дисплея;
• По нажатию произвольной клавиши поочередно выделяет каждое из слов текста, в которых первый и последний символы совпадают;
• Определяет количество слов текста, в которых первый и последний символы совпадают.

Вот то написал, а дальше как не знаю помогите доделать =) Она считает только кол-во символов.

текст программы

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
#include <stdio.h>
#include <conio.h>
 
int main()
{
FILE *fstream;
char first_ch = ' ', last_ch = '\0', tmp_ch;
int count = 0;
 
fstream = fopen("file.txt", "r");
if (!fstream)
{
printf("File error\n");
getch();
return 1;
}
printf("Soderjimoe faila\n");
printf("-------------------------------\n");
while ((tmp_ch = fgetc(fstream)) != EOF)
{
printf("%c", tmp_ch);
if (first_ch == ' ' || first_ch == '\n')
first_ch = tmp_ch;
else
{
if (tmp_ch == ' ' || tmp_ch == '\n')
{
if (first_ch == last_ch)
{
count++;
}
first_ch = tmp_ch;
}
else if (last_ch == ' ' || last_ch == '\n')
{
first_ch = tmp_ch;
}
else
last_ch = tmp_ch;
}
}
printf("-------------------------------\n");
printf("Kolichestvo slov s odinakovymi pervoi i poslednei bukvami %i\n", count);
getch();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2013, 23:31     Определить количество слов текста, в которых первый и последний символы совпадают
Посмотрите здесь:

вывод текста, определение количество слов в тексте, у которых первый и последний символы совпадают. C++
C++ Найти количество слов, у которых первый и последний символы совпадают между собой.
Найти количество слов, у которых первый и последний символы совпадают между собой C++
Дана строка символов. Определить количество слов, у которых первый и последний символы совпадают между собой. C++
Дан текст, найти количество слов и количество слов, у которых первый и последний символ совпадают C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 929
Завершенные тесты: 1
10.04.2013, 23:55     Определить количество слов текста, в которых первый и последний символы совпадают #2
Какие инструменты разрешено использовать? Можно ли читить?

При "стандартных условиях" (используя только поток ввода/вывода) такое сделать нельзя без чита:
1. Прочитали и сохранили текст.
2. Вывели не "выделенный" текст.
3. Прочитали инпут. "Простым" перебором нашли нужные слова. Отметили их.
4. "Стерли" весь текст.
5. Заново вывели текст и если слово отмечено, то с помощью ескейп последовательностей разукрасили его.
6. ...

п.с. Чит в том, что мы не разукрашиваем текущий, а выводим новый разукрашенный (при этом если проскролить в верх то получим старый)
Demix-V
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 8
11.04.2013, 11:07  [ТС]     Определить количество слов текста, в которых первый и последний символы совпадают #3
Я делал похожую программу но только выделял слова которые начинаются на гласную букву, нормально вышло, но здесь не пойму.
Вот программа для выделения гласной буквы:

Программа выделения слов с гласными буквами
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
68
69
70
71
72
73
#include<iostream>
#include<windows.h>
#include<cstdlib>
#include<fstream>
#include<string>
#include<conio.h>
using namespace std;
CONSOLE_SCREEN_BUFFER_INFO csbi;
HANDLE consoleOutput;
COORD CurPos;
 
void Set_XY(int X, int Y);
void glasnost();
 
int main()
{
setlocale(0,"rus");
string word;
consoleOutput=GetStdHandle(STD_OUTPUT_HANDLE);
ifstream in1("Messi.txt"); //Создаем файловый поток.
while(in1>>word)// Передаем слова изфайла в строку.
cout<<word<<" ";//Выводим слова изфайла.
cout<<endl;
in1.close();//Закрываем поток.
glasnost();//Вызов функции, которая выделяет нужные слова.
system ("pause");
return 0;
}
void Set_XY(int X, int Y)//Функция, выставляющая курсор по координатам ХY.
{
CurPos. X=X; CurPos. Y=Y;
SetConsoleCursorPosition(consoleOutput, CurPos);
}
void glasnost()//Функция, выделяющая слова, которыеначинаются на гласную.
{
string word;
ifstream in("Messi.txt");
string glas="аоуеёияэыюАОУЕЁИЯЭЫЮ";//Гласные.
string znaki=",.!?;:'\|/({[*&^%$#@!№]})><";//Знаки.
int x=0, y=0;
int k=0;//Счетчик.
SetConsoleTextAttribute(consoleOutput,79);//Изменяем атрибуты вывода.
while (in>>word)
{
for(int i=0;i<glas.size();i++)//Поиск и выделениеслов.
if(word[0]==glas[i])
{
getch();
 
Set_XY(x,y);
cout<<word;
k++;
}
for(int i=0;i<znaki.size();i++)//Поиск и выделение слов.
if (word[word.size()-1]==znaki[i])
for(int i=0;i<glas.size();i++)
if (word[0]==glas[i])
{
getch();
word.erase(word.size()-1,1);
Set_XY(x,y);
cout<<word;
word=word+" ";
k++;//Количество слов.
}
x=x+word.size()+1;//Счетчик координат Х.
if(x>=80) {x=x-80; y++;}//Счетчик координат Y.
}
Set_XY(x,y);
SetConsoleTextAttribute(consoleOutput,7);//
cout<<endl;
cout<<"Количество слов которые начинаются на гласную = "<<k<<endl;
}
stima
430 / 285 / 16
Регистрация: 22.03.2011
Сообщений: 929
Завершенные тесты: 1
11.04.2013, 13:42     Определить количество слов текста, в которых первый и последний символы совпадают #4
Я с утра прочитал внимательно условие. И ключевым для меня было: "По нажатию произвольной клавиши".
Я думаю, что задача требует:
1. Прочитать файл. Сохранить строки.
2. Подождать приглашения к работе.
4. Вывести все строки в которых: str[0] == str[str.length() - 1]. Подсчитывать при выводе.
5. Вывести количество выведенных строк.
6. Завершить работу.

Т.е. от вас не требуется манипуляция с консолью и/или ее цветом.
Demix-V
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 8
11.04.2013, 21:47  [ТС]     Определить количество слов текста, в которых первый и последний символы совпадают #5
Цитата Сообщение от stima Посмотреть сообщение
Я с утра прочитал внимательно условие. И ключевым для меня было: "По нажатию произвольной клавиши".
Я думаю, что задача требует:
1. Прочитать файл. Сохранить строки.
2. Подождать приглашения к работе.
4. Вывести все строки в которых: str[0] == str[str.length() - 1]. Подсчитывать при выводе.
5. Вывести количество выведенных строк.
6. Завершить работу.

Т.е. от вас не требуется манипуляция с консолью и/или ее цветом.
Ну цветом нужно выделить препод говорит. Так что я скинул код "Выделение слов которые начинаются с гласной" можно легко переделать на тот что мне нужно? Вот я не могу понять как его подредактировать.
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 51
11.04.2013, 21:49     Определить количество слов текста, в которых первый и последний символы совпадают #6
Какой то мне пока не понятный и недоступный код...можно как то "по детски" написать?
Demix-V
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 8
11.04.2013, 22:04  [ТС]     Определить количество слов текста, в которых первый и последний символы совпадают #7
Цитата Сообщение от Exiss Посмотреть сообщение
Какой то мне пока не понятный и недоступный код...можно как то "по детски" написать?
Тот что я скинул где выделяет гласные буквы, он не сильно и сложны вроде.
Demix-V
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 8
16.04.2013, 00:39  [ТС]     Определить количество слов текста, в которых первый и последний символы совпадают #8
C++
1
2
3
4
for(int i=0;i<znaki.size();i++)//Поиск и выделение слов.
if (word[word.size()-1]==znaki[i])
for(int i=0;i<glas.size();i++)
if (word[0]==glas[i])
В этом куске так я понял нужно как-то приравнять начало и конец слова.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.04.2013, 18:30     Определить количество слов текста, в которых первый и последний символы совпадают
Еще ссылки по теме:

C++ Массив строк. Определить количество слов, у которых первый символ встречается в слове еще хотя бы один раз
Определить количество слов в тексте, у которых первый и последний символы совпадают между собой C++
Определить количество слов, у которых первый и последний символы совпадают C++

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

Или воспользуйтесь поиском по форуму:
Demix-V
0 / 0 / 0
Регистрация: 10.04.2013
Сообщений: 8
20.04.2013, 18:30  [ТС]     Определить количество слов текста, в которых первый и последний символы совпадают #9
Так что кто-то знает как делать?
Yandex
Объявления
20.04.2013, 18:30     Определить количество слов текста, в которых первый и последний символы совпадают
Ответ Создать тему
Опции темы

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