Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 53
1

Дан текст.Найти количество слов,где две гласные буквы и вывести их на экран.

11.04.2013, 22:49. Просмотров 1002. Ответов 2
Метки нет (Все метки)

Здравствуйте,уважаемые форумчане!Помогите пожалуйста с написанием программ-а то завтра сдать уже надо...
Препод ставит такие требования:
а)писать на С++;
б)использовать в программе не ссылки,а указатели;
в)использовать подпрограммы.
Работаю в Dev C++

Заранее ОГРОМНЕЙШЕЕ СПАСИБО!

4.Строки
Дано текст.Найти количество слов,где две гласные буквы и вывести их на экран.

Добавлено через 1 час 2 минуты
Ну пожалуйста,помогите...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2013, 22:49
Ответы с готовыми решениями:

Вывести на экран количество слов где первая и последняя буквы одинаковы (не понимаю где ошибка)
задан текст нужно вывести на экран количество слов где первая и последняя буквы...

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

Дан текст. Вывести все его гласные буквы
Подскажите, как тут вывести гласные буквы? /*Дан текст. Вывести все его...

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

Дан текст, найти количество слов и количество слов, у которых первый и последний символ совпадают
Помогите пожалуйста, выполнить задание. Дан текст из N символов. Группы...

2
anmartex
...
1711 / 1204 / 909
Регистрация: 12.02.2013
Сообщений: 1,978
12.04.2013, 10:23 2
Exiss, может тогда всё же на C? Ибо, как я понимаю STL нельзя использовать, а тогда в принципе за исключением выделения памяти, работы с потоками разница не большая. Просто, говоря за себя, сложно передавать указатель, там где нужно ссылку; использовать o/i stream, но не использовать контейнеров, алгоритмов, итераторов; ну и т.п.
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cctype>
 
//-----------------------------------------------------------------------------
size_t GetFileSize(std::ifstream* f)
{
   f->seekg(0, f->end);
   size_t length = f->tellg();
   f->seekg(0, f->beg);
 
   return length;
}
//-----------------------------------------------------------------------------
int GetWord(const char* text, const char** begin, const char** end)
{
   for (; *text && !isalpha(*text); ++text) { ; }
 
   *begin = text;
 
   for (; *text && isalpha(*text); ++text) { ; }
 
   *end = text;
 
   return (*begin < *end);
}
//-----------------------------------------------------------------------------
size_t CountAndPrintWord(const char* text)
{
   const char CChars[] = "aeiouy";
 
   size_t count = 0;
   const char* begin;
   const char* end;
 
   while (GetWord(text, &begin, &end))
   {
      size_t inc = 0;
      for (const char* it = begin; it < end; ++it)
      {
         if (strchr(CChars, tolower(*it)))
         {
            inc++;
         }
      }
 
      if (inc == 2)
      {
         std::cout << std::string(begin, end) << std::endl;
         count++;
      }
 
      text = end + 1;
   }
 
   return count;
}
//-----------------------------------------------------------------------------
 
int main(int argc, const char* argv[])
{
   if (argc != 2)
   {
      std::cerr << "Usage: program <FILE.txt>" << std::endl;
      std::system("pause");
      return EXIT_FAILURE;
   }
 
   std::ifstream f(argv[1], std::ifstream::binary);
 
   if (!f.is_open())
   {
      std::cerr << "file '" << argv[1] << "' is not open ..." << std::endl;
      return EXIT_FAILURE;
   }
 
   size_t size = GetFileSize(&f);
   char* buff = new char[size + 1];
   buff[size] = '\0';
 
   f.read(buff, size);
   f.close();
 
   CountAndPrintWord(buff);
 
   std::system("pause");
 
   delete[] buff;
 
   return EXIT_SUCCESS;
}
Достаточно перетащит текстовый файл на бинарник:

Дан текст.Найти количество слов,где две гласные буквы и вывести их на экран.


Бинарник + исходники (C, C++): program.7z

P.S.: в архиве лежит ещё *.cpp исходник: malloc/free заменены на new/delete; работа с потоками выполняется через std::stream.
0
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 53
12.04.2013, 21:22  [ТС] 3
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.04.2013, 21:22

Дан текстовый файл. Вывести на экран количество предложений в нём и количество слов в каждом предложении.
Помогите решить задачку пожалуйста. Дан текстовый файл. Вывести на экран...

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

Дан текстовый файл. Вывести на экран среднюю строку (две строки, если четное количество строк)
Дан текстовый файл. Вывести на экран среднюю строку (две строки, если четное...


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

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

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