
Задача
By: a guest on
Aug 1st, 2012 | syntax:
C++ | size: 1.99 KB | hits: 10 | expires: Never
/* Условия задачи: "Написать программу, которая считывает символы с клавиатуры.
Перед отображением результата преобразовать все строчные буквы в прописные,
а все прописные - в строчные. Другие символы не должны изменяться.
Завершить программу после ввода символа "точка".
Перед завершением отобразить количество выполненных преобразований (изменений регистра)."
Пробел почему-то программа не обрабатывает. Есть идеи?
Это задача № 11 3-го модуля Руководства для начинающих С++ Шилдта есличо
*/
#include <iostream>
using namespace std;
int main()
{
system("chcp 1251");
int counter = 0; // Счетчик выполненных преобразований
unsigned char i;
cout << "Введите символы: \n";
do
{
cin >> i;
if (i >= 65 && i <= 90) //Множество строчных английских букв
{
cout << (i += 32);
counter++;
}
else if (i >= 97 && i <= 122) //Множество прописных английских букв
{
cout << (i -= 32);
counter++;
}
/* else if (i == 32) //32 - ASCII код пробела
{
cout << " ";
}
*/
else
{
cout << i;
}
} while (i != '.');
cout << "\nВ данной строке количество измененных символов составляет " << counter << "\n";
counter = 0;
cout << "\nДавай, до свидания!\n";
}