#include main() { int c,i,flagrus=0; static char table1[32] { 0141,0142,0167,0147,0144,0145,0166,0172, 0151,0152,0153,0154,0155,0156,0157,0160, 0162,0163,0164,0165,0146,0150,0143,0176, 0173,0175,0177,0171,0170,0174,0140,0161}; static char table2[32] { 0101,0102,0127,0107,0104,0105,0126,0132, 0111,0112,0113,0114,0115,0116,0117,0120, 0122,0123,0124,0125,0106,0110,0103,0136, 0133,0135,0137,0131,0130,0134,0100,0121}; while((i=getchar())!=EOF) { c=i; if ((c>=128)&&(c<=160)) { c=table1[c-128]; if (flagrus==0) putchar(016); flagrus=1; } else { if ((c>=160)&&(c<=192)) { c=table2[c-160]; if (flagrus==0) putchar(016); flagrus=1; } else { if((c>=0100)&&(c<=0137)) { if ((c>=0101)&&(c<=0132)) c+=040; if(flagrus==1) putchar(017); flagrus=0; } } } putchar(c); } }