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

Сосчитать Гласные и Согласные в словах - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Наследование от 2-х классов http://www.cyberforum.ru/cpp-beginners/thread7741.html
Возможна ли следующая структура: class A class B : class A class C : class A class D : class B : class C
C++ Присвоение значений многомерным массивам Одномерному массиву значения присваивать совсем просто: int A={0,1,2,3,4}; A=73;Двумерному уже сложнее: int B={ {0,1,2,3,4}, {5,6,7,8,9}, {10,11,12,13,14} }; b=74;А трехмерному совсем сложно: int B={ http://www.cyberforum.ru/cpp-beginners/thread7731.html
C++ непонятный код
Polynom del (Polynom p2,int oper) // delenie na 4islo { Polynom p0; Polynom p=*this,ret,x; //(1) int st=D; while ((st)&&(!p2.koef)); if (st<0) {cerr<<"Devision by zero!!!\n";return p0;} //(2) while (!(p<p2)){ int i=D; while ((i)&&(!p.koef));
Удаление непустого каталога C++
Написал функцию удаления непустого каталога deltree, компилируется нормально, да и с логикой ВРОДЕ все норм, т.к. блок-схему сперва составлял. В чем дело? #include <SYS\STAT.H> #include <IO.H> #include <stdio.h> #include <dir.h> #include <DOS.H> #define OSHYD { printf("Ошибка удаления\n");\ return 1; } #define ANYFILE FA_RDONLY|FA_HIDDEN|FA_SYSTEM|FA_LABEL|FA_DIREC|FA_ARCH|FA_NORMAL
C++ Какая буква соответствует дисководу? http://www.cyberforum.ru/cpp-beginners/thread7684.html
Как определить какие имена дисков в ОС соответствуют дискетам. По умолчанию это A и B, но ведь это можно менять. А мне в программе нужно, чтобы определенная функция выполнялась только для дискет. Консольное приложение. BC 3.1++. Желательно СИ
C++ Написать программу сложения двух матриц А и В размерами 4 на 5 уСЛОВИЕ: Написать программу сложения двух матриц А и В размерами 4 на 5. Найти суммы элементов получившейся матрицы по столбцам. И написать блок-схему к задачи Помогите плизз,а то язык программирования вообще не знаю Программу "забивать" в С++ Заранее спасибо кто поможет... подробнее

Показать сообщение отдельно
XXXAlex
0 / 0 / 0
Регистрация: 26.02.2008
Сообщений: 5

Сосчитать Гласные и Согласные в словах - C++

02.05.2008, 00:11. Просмотров 1157. Ответов 2
Метки (Все метки)

Some languages use many more vowels than others. For example, in Hawaiian “Puu Kaa Lani” has
6 vowels and 4 consonants.

Write a program that inputs a line of text, calculates the ratio of vowels to consonants and prints that line with the corresponding ratio. Numbers, spaces and punctuation do not count, for example May 26, 1999 has a ratio of 1 /2. The program should repeat the process until the user enters an empty line.
At the end, it should write the lines with the highest and lowest ratio. It should count only letters, disregarding any other character.
Note: A, a, E, e, I, I, O, o, U, u are vowels(гласные) and other letters are consonants(согласные).

Написал программу- Сосчитать Гласные и Согласные в словах
У меня считает только в последней введенной строчке(Kellogg Competition) а не в первой(Puu Kaa Lani) и поэтому я немогу сосчитать максимальный(highest ratio) и минимальный(lowest ratio) коэфицент между первой и второй строчкой.

Помогите чуть доделать программу

Вот так должно выглядеть:
Sample Input and Output:
Please enter any text> Puu Kaa Lani
Do you wish to continue? (Y/N)
Y
Please enter any text> Kellogg Competition
Do you wish to continue? (Y/N)
N

“Puu Kaa Lani” vowel to consonant ratio is: 6/4
“Kellogg Competition ” vowel to consonant ratio is: 7/11
The line with the lowest ratio is: “Kellogg Competition” ratio vowel to consonant is: 0.6

The line with the highest ratio is: “Puu Kaa Lani” vowel to consonant ratio: 1.5
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
#include "stdafx.h"
#include "conio.h"
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
char retry = 'y';
string s;
 
int vowels=0;
int consonant=0;
int lowest=0;
int highest=0;
 
while (retry == 'y' || retry == 'Y')
{
    cout <<"\nPlease enter text: ";
    cin >> s;
    
    cout << "\nDo you wish to continue? (Y/N)"<<endl;
    cin >> retry;
}
 
for (int i=0; i<int(s.size()); ++i)
{
if (s[i]=='a' || s[i]=='e' || s[i]=='i' || s[i]=='o' || s[i]=='u'
    || s[i]=='A' || s[i]=='E' || s[i]=='I' || s[i]=='O' || s[i]=='U')
++vowels;
else
++consonant;
}
 
cout << "\nTotal vowels are: "<<vowels << endl;
cout << "\nTotal Consonants are: "<< consonant << endl;
cout << "\nConsonant ratio are: "<< vowels << "/" << consonant << endl;
 
if ( vowels <= consonant )
 
cout << "\nThe line with the lowest ratio: " << lowest << endl;
 
cout << "\nThe line with the highest ratio is: "<< highest << endl;
 
_getch();
return 0;
}
Thanks

Добавлено через 18 часов 9 минут
help!!!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru