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

Массив. Работа с текстом. - C++

Восстановить пароль Регистрация
 
molny
 Аватар для molny
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 6
24.06.2010, 07:45     Массив. Работа с текстом. #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
#include <iostream>
#include <string>
#include <clocale>
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int p=0,a=0,kol=0;
    char* fio=new char[40];
    ins:
    cout<<"Введите Ф.И.О (латиницей): ";
    gets(fio);
    if(strlen(fio)==0)
    {
                     cout<<"Вы ничего не ввели! Повторите ввод!"<<endl;
                     goto ins;
    }
    for(int i=0; i<strlen(fio); i++)
    {
            if(fio[i]==' ') p++;
            if((fio[i]=='a')||(fio[i]=='A')) a++;
    }
    kol=strlen(fio)-p;
    if(kol==0)
    {
            cout<<"Вы не ввели ни одной буквы! Повторите ввод!"<<endl;
            goto ins;
    }
    else cout<<"Общее количество введенных символов: "<<kol<<endl;
    if(a==0)
    {
            cout<<"Не найдено ни одной буквы А! =(";
    }
    else cout<<"Количество букв А: "<<a<<endl;
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.06.2010, 07:45     Массив. Работа с текстом.
Посмотрите здесь:

C++ работа с текстом
C++ работа с текстом
C++ Работа с текстом
работа с текстом C++
работа с текстом C++
Работа с текстом C++
C++ работа с текстом с++
C++ Работа с текстом.

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IchMors
96 / 92 / 4
Регистрация: 16.05.2010
Сообщений: 307
24.06.2010, 09:32     Массив. Работа с текстом. #2
Вот один из вариантов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int family=0, sw=0;
    for(int i=0; i<(strlen(fio)+1);i++)
    {
        if((fio[i]!=' ')&&(fio[i]!='\0'))family++;
        else
        {           
            switch(sw)
            {
            case 0: cout<<"Фамилия состоит из "<<family <<" букв\n"; break;
            case 1: cout<<"Имя состоит из "<<family <<" букв\n"; break;
            case 2: cout<<"Отчество состоит из "<<family <<" букв\n"; break;
            default: cout <<"Error\n";
            }
            family=0;
            sw++;
        }
 
    }
Yandex
Объявления
24.06.2010, 09:32     Массив. Работа с текстом.
Ответ Создать тему
Опции темы

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