У меня возникла проблема с реализацией функции, которая учитывает и отображает количество гласных из файла.C++ - подсчет количества гласных из файла
Вот код, который у меня есть.
#include <iostream>
#include <fstream>
#include <string>
#include <cassert>
#include <cstdio>
using namespace std;
int main(void)
{int i;
string inputFileName;
string s;
ifstream fileIn;
char ch;
cout<<"Enter name of file of characters :";
cin>>inputFileName;
fileIn.open(inputFileName.data());
assert(fileIn.is_open());
i=0;
while (!(fileIn.eof()))
{
????????????
}
cout<<s;
cout<<"The number of vowels in the string is "<<s.?()<<endl;
return 0;
}
Обратите внимание на вопросительные знаки в коде. Вопросы: Как мне подсчитать гласные? Нужно ли преобразовывать текст в нижний регистр и вызывать системные элементы управления (если возможно)? Кроме того, что касается печати количества гласных в конце, какую строчную переменную я должен использовать (см. S.?)?
Благодаря
Вы должны начать с строки выше: 'while (! (FileIn.eof()))'. Если вы планируете прочитать файл и просто считаете, что чтение преуспевает, и что содержимое - то, что вы ожидаете, вы должны пересмотреть это решение. Если вы не планируете это делать, то 'eof' является неправильным условием, если вы не будете игнорировать каждый недействительный ввод. – chris
Вам нужно научиться думать о решении проблем с компьютером. Итак, как бы вы посчитали количество гласных? Вам нужно знать, что такое гласный. Это функция библиотеки? Прочтите список функций библиотеки. Нет библиотечной функции? Сделайте себе список гласных и поместите их в свою программу. Теперь вам нужно перейти к каждому символу в вашей строке и проверить, является ли он гласным, ища его в списке гласных. Если он находится в списке, добавьте 1 к вашему количеству гласных. Посмотрите, как это может работать? –