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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
molny
0 / 0 / 0
Регистрация: 20.05.2010
Сообщений: 6
#1

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

24.06.2010, 07:45. Просмотров 359. Ответов 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++: Даны натуральное число n, символы s1 ...,sn.. Группы символов, разделенные пробелами (одним или несколькими) и не...

Работа с текстом - C++
Помогите, пожалуйста, исправить программу... Задание такое: Задан текст. По правилам пунктуации пробел может стоять после, а не перед...

С++ работа с текстом из файла - C++
Народ помогите плиз !!! Надо прочитать текст из файла , для дальнейшей работы с ним (текстом) , т.е. надо записать весь текст в массив , у...

С++ работа с файлами и текстом - C++
Задана последовательность идентификаторов, разделенных сериями пробелов. Последовательность задана строкой символов (string) заканчивается...

Файлы, работа с текстом - C++
Огромная просьба помочь!! Мне очень нужно написать программу, которая будет считывать текст из файла и копировать все слова длиной от l1 до...

Работа с текстом (цвет) - C++
Всем привет! Подскажите пожалуйста как поменять цвет фона в консоли, чтобы вместо чорного экрана сделать что-то повеселее?

Работа с русским текстом в linux - C++
Пишу консольное приложение в Code::Blocks на Ubuntu 15.04. Выводит он русский текст и без всяких функций, а вот с чтением проблема,...

Файлы, меню, работа с текстом - C++
Добрый вечер, помогите пожалуйста найти ошибку в алгоритме, написал программу в которой задан текст, и нужно напечатать все слова отличные...

Работа с текстом без String - C++
Слова текста из малых латинских букв записаны не менее чем через один пробел; текст заканчивается точкой. БЕЗ ИСПОЛЬЗОВАНИЯ конструкции...

Работа с текстом, найти среднее арифметическое - C++
Как, например, в с++ взять инфу такого типа из файла: m 985 f 2865 m 555 f 122 И если переменная равна f, программа должна...

Работа с текстом без использования string - C++
Нужно взять како-то небольшой текст и напечатать все слова, которые начинаются с буквы, отличную от буквы, с которой начинается первое...

Работа с текстом, функции fopen и fclose - C++
Друзья, помогите! Не могу понять в чём тут дело. я убрал поток и начал использовать функции fopen и fclose. Но при компиляции программа...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
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++;
        }
 
    }
Ответ Создать тему
Опции темы

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