Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Мегатрон
нубик программист)
96 / 10 / 0
Регистрация: 04.06.2008
Сообщений: 348
1

немагу разобратся ввод слова

23.04.2009, 08:29. Просмотров 910. Ответов 10
Метки нет (Все метки)

привет бъюсь 3й день немагу тллком решить задачку
я не учусь в вузе и не работают программером я просто нубик самоучка

дано такое задание
напишите программу которая читает по одному слову за раз,пака не будет введено отдельная буква "q"
после этого прога должна сообщить кол-во слов начинающихся с гласных, коль-во слов начинающихся с согласных и также коль-во не попадающие под эти два значения
вроде у меня пачти выходит да тока чето не хватает (решаю по книге С Прата С++ 1200стр глава 6 упраж 7)
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
 
int main()
{
char ch;
int gls=0;
int sog=0;
int ost=0;
while(cin.get(ch))
{
if(isalpha(ch))
{ 
if(ch=='q')
break;
else
{
switch(ch)
{
case'a':++gls;
case'e':++gls;
case'u':++gls;
case'i':++gls;
casr'o':++gls;
default:++sog;
}
} 
}
 
else
++ost;
cin.get(ch);
}
cout<<gls<<sog<<ost<<endl;
return 0;
}
пример толжен быть таким
Вводите слова (q-для выхода)
The 12 awesome oxen ambled
quietly across 15 meters of lawn. q
5 слов с гласных
4 с согласных
2 остальных
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2009, 08:29
Ответы с готовыми решениями:

немагу найти ошибки
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int main() { ...

немагу найти ошибку
#include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt;...

Структуры.Не разбираюсь в структурах!!!Немагу сделать програмку!(((
Известны данные о 20 сотрудников фирмы (фамилия, пол, зарплата и должность)....

Ввод строки до определенного слова
Нужно организовать ввод строки, пока не будет введено ключевое слово &quot;stop&quot;....

Ввод слова и вывод его в обратном порядке
символьные массивы

10
jds_07
28 / 27 / 11
Регистрация: 12.03.2009
Сообщений: 85
23.04.2009, 09:34 2
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
const int MAX_LENGTH_LIST = 1000;
const int MAX_LENGTH_WORD = 255;
 
char** list = new char**[MAX_LENGTH_LIST];
char* buffer = new char*[MAX_LENGTH_WORD];
int i = 0, k = 0;
int gls, sog;
int is_q = 0;
gls = sog = 0;
buffer[0] = '\0';
while (std::cin.get(ch)) {
    if (ch == 'q') {
      is_q = 1;  
    }
    switch (ch) {
      case 'a': gls++; break;
      case 'e': gls++; break;
      case 'u': gls++; break;
      case 'i': gls++; break;
      case 'o': gls++; break;
      default:  if (is_q == 0) sog++;
    }
    if (ch != ' ') {
        buffer[i] = ch;
        i++;
    } else {
        buffer[i] = '\0';
        list[k] = new char*[MAX_LENGTH_WORD];
        int j = 0;
        for (j = 0; j < strlen(buffer); j++) {
            list[k][j] = buffer[j];
        }
        list[k][j] = '\0';
        buffer[0] = '\0';
        i = 0;
        k++;        
        if (is_q == 1) break;
    }
}
0
Мегатрон
нубик программист)
96 / 10 / 0
Регистрация: 04.06.2008
Сообщений: 348
23.04.2009, 14:46  [ТС] 3
ого кодик а что без массивов некак непалучится
0
Tiami
Яростный кот
43 / 1 / 0
Регистрация: 10.03.2009
Сообщений: 220
23.04.2009, 15:24 4
Ну так введи все гласные в switch(ch) в английском алфавите,а другие буквы через
if(ch!="*/гласные все напиши через запятую*/"&&ch!='e'&&ch!='a'......)
{
*/согласные прибавляй*/
}
что то типа такого
0
Мегатрон
нубик программист)
96 / 10 / 0
Регистрация: 04.06.2008
Сообщений: 348
23.04.2009, 15:35  [ТС] 5
а пачему бы не задейсвовать
C++
1
isalpha()
для индефикации что ch это буква
0
accept
4833 / 3255 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
23.04.2009, 16:08 6
подсчитывает всё, неспеша
0
Вложения
Тип файла: zip prata_words.zip (1.0 Кб, 18 просмотров)
Мегатрон
нубик программист)
96 / 10 / 0
Регистрация: 04.06.2008
Сообщений: 348
23.04.2009, 16:20  [ТС] 7
Цитата Сообщение от accept Посмотреть сообщение
подсчитывает всё, неспеша
хз чето у тебя стока всего
у меня вабще 6 глава там про логические операторы=)
при чем тут массивы
0
accept
4833 / 3255 / 454
Регистрация: 10.12.2008
Сообщений: 10,569
24.04.2009, 07:43 8
Цитата Сообщение от Мегатрон
напишите программу которая читает по одному слову за раз
слово - это массив символов (букв)
0
Мегатрон
нубик программист)
96 / 10 / 0
Регистрация: 04.06.2008
Сообщений: 348
24.04.2009, 07:47  [ТС] 9
лана седня вечерком покубатурю с этим упражнением
0
Somebody
2799 / 1610 / 251
Регистрация: 03.12.2007
Сообщений: 4,213
Завершенные тесты: 3
24.04.2009, 23:37 10
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
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    const string vowels("AEIOUaeiouАЕЁИОУЫЭЮЯаеёиоуыэюя");
    const string consonants("BCDFGHJKLMNPQRSTVWXYZbcdfghjklmnpqrstvwxyz"
        "БВГДЖЗЙКЛМНПРСТФХЦЧШЩбвгджзйклмнпрстфхцчшщ");
    const string blank(" \t\n");
 
    cout << "Всякие слова:\n";
    int nv = 0;
    int nc = 0;
    int no = 0;
    for (char c = cin.get(); ; )
    {
        if (c == 'q' && blank.find(cin.peek()) != string::npos)
            break;
        if (vowels.find(c) != string::npos)
            nv++;
        else if (consonants.find(c) != string::npos)
            nc++;
        else
            no++;
        while (blank.find(c = cin.get()) == string::npos);
        while (blank.find(c = cin.get()) != string::npos);
    }
    cout << nv << " с гласной, " << nc << " с согласной, " << no << " с прочей фигни";
    cin.ignore(numeric_limits<streamsize>::max(), '\n');
    cin.peek();
}
0
Мегатрон
нубик программист)
96 / 10 / 0
Регистрация: 04.06.2008
Сообщений: 348
26.04.2009, 09:20  [ТС] 11
чет ребята как бы идею уловил но чето плохо доходит

C++
1
2
3
4
5
 
char** list = new char**[MAX_LENGTH_LIST];
peek()
find
ignore(numeric_limits<streamsize>::max(),
вот такие я еще не проходил)
я тока с 1 по 6 главу тока прочитал( С++ Прата)
0
26.04.2009, 09:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2009, 09:20

Файловый ввод и поиск самого длинного слова в тексте
Здравствуйте. Нужно написать программу, которая вводит текст, состоящий из...

Строковый ввод-вывод и считывание последнего слова в строке
Добрый вечер. Возник вопрос по следующей задаче: &quot;1) Скопировать из файла F1...

Как считывать слова/цифры пока не закончился ввод пользователем
Как считывать слова/цифры пока не закончился ввод пользователем


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

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

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