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


         

В данной реализации все еще


    case 'i': case 'o': case 'u':

        ++vowe1Cnt;

        break;

}

В данной реализации все еще осталась одна проблема: как будут восприняты слова типа

UNIX

Наша программа не понимает заглавных букв, поэтому заглавные U и I не будут отнесены к гласным. Исправить ситуацию можно следующим образом:

switch ( ch ) {

    case 'a': case 'A':

        ++aCnt;

        break;

    case 'e': case 'E':

        ++eCnt;

        break;

    case 'i': case 'I':

        ++iCnt;

        break;

    case 'o': case 'O':

        ++oCnt;

        break;

    case 'u': case 'U':

        ++uCnt;

        break;

}

Метка default является аналогом части else инструкции if-else. Инструкции, соответствующие default, выполняются, если условие не отвечает ни одной из меток case. Например, добавим к нашей программе подсчет суммарного количества согласных:

#include <iostream>

#include <ctype.h>

int main()

{

    char ch;

    int aCnt=0, eCnt=0, iCnt=0, oCnt=0, uCnt=0,

        consonantCount=0;

    while ( cin >> ch )

        switch ( ch ) {

            case 'a': case 'A':

                ++aCnt;

                break;

            case 'e': case 'E':

                ++eCnt;

                break;

            case 'i': case 'I':

                ++iCnt;

                break;

            case 'o': case 'O':

                ++oCnt;

                break;

            case 'u': case 'U':

                ++uCnt;

                break;

            default:

                if ( isa1pha( ch ) )

                    ++consonantCnt;

                break;

        }

    cout << "Встретилась a: \t" << aCnt << '\n'

         << "Встретилась e: \t" << eCnt << '\n'

         << "Встретилась i: \t" << iCnt << '\n'

         << "Встретилась o: \t" << oCnt << '\n'

         << "Встретилась u: \t" << uCnt << '\n'


Содержание  Назад  Вперед