Сравните объём данного изображения со страницей текста (на 1странице 32 строки по 64 символа в строке, 1символ равен 8 бит). Сколько страниц текста надо набрать на компьютере, чтобы соответствовать данному изображению?
На вывод работало с 866, а на ввод с 1251 (SetConsoleCP();). В массив пишет каракули. Функции setlocale(LC_CTYPE, "Russian"); setlocale(LC_ALL, "Russian"); тоже не Отлично работают с ОТОБРАЖЕНИЕМ текста в консоли, но с чтение из ее это ужас. В С++ всегда с этим проблема была, с обработкой вводимой кириллицы с консоли. Это те еще танцы с бубнами. Учитывая еще то, что многие функции писались исключительно под XP а про поддержку в версиях выше речи не было вообще. Есть выходы конечно, но у меня не получилось отобразить кириллицу, считать с консоли, и вывести обратно. Что-то одно всегда не работало.Либо выводило правильно, а записывало каракули, либо каракули выводит а записывает правильно. Если убрать все заморочки с кодировками, то вот код:
Исходник на С#, переделать на другой любой будет не сложно - тут 5 вложенных циклов, для прокрутки буквы от первой до последней и свитчи на каждую букву для записи в комбинацию. Напоминает счетчик обычный. В консоль не влезло (там 1200+ записей), по этому поводу не стал морочиться и записал потоком вместо консоли в блокнот. Результат работы программы прикреплен.
В массив пишет каракули.
Функции setlocale(LC_CTYPE, "Russian"); setlocale(LC_ALL, "Russian"); тоже не Отлично работают с ОТОБРАЖЕНИЕМ текста в консоли, но с чтение из ее это ужас.
В С++ всегда с этим проблема была, с обработкой вводимой кириллицы с консоли.
Это те еще танцы с бубнами. Учитывая еще то, что многие функции писались исключительно под XP а про поддержку в версиях выше речи не было вообще.
Есть выходы конечно, но у меня не получилось отобразить кириллицу, считать с консоли, и вывести обратно. Что-то одно всегда не работало.Либо выводило правильно, а записывало каракули, либо каракули выводит а записывает правильно.
Если убрать все заморочки с кодировками, то вот код:
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_CTYPE, "Russian");
char *str=new char[];
cout<<"Введите слово: "; cin>>str;
for (int i = 0; i < strlen(str); i++)
{
if(str[i]!='я'&&i%2!=0){cout<<str[i];}
}
system("PAUSE");
}
2) K
3) P
4) Y
5) АААKА
6) АААKK
7) АААKP
8) АААKY
9) АААPА
10) АААPK
11) АААPP
12) АААPY
13) АААYА
14) АААYK
15) АААYP
16) АААYY
767) PYYYP
768) P
769) Y
770) YАААK
771) YАААP
772) YАААY
773) YААKА
774) YААKK
775) YААKP
776) YААKY
777) YААPА
778) YААPK
779) YААPP
780) YААPY
781) YААYА
782) YААYK
Исходник на С#, переделать на другой любой будет не сложно - тут 5 вложенных циклов, для прокрутки буквы от первой до последней и свитчи на каждую букву для записи в комбинацию.
Напоминает счетчик обычный.
В консоль не влезло (там 1200+ записей), по этому поводу не стал морочиться и записал потоком вместо консоли в блокнот.
Результат работы программы прикреплен.