Строка: Почему else неправильно работает? - C (СИ)
Формулировка задачи:
Почему else неправильно работает? Выдаёт закарючку
X=strlen(x)-1;
Y=strlen(y)-1;
k = X+Y;
if (k<=26) {
printf("%c\n",r[k]+1);}
else {
k = k % 26 ;
printf("%c\n",r[k]+1);}Решение задачи: «Строка: Почему else неправильно работает?»
textual
Листинг программы
char r[] ="abcdefghijklmnopqrstuvwxyz";
X=strlen(x)-1;
Y=strlen(y)-1;
k = X+Y;
if (k<=26) {
printf("%c\n",r[k]+1);}
if (k>26) {
k=k%26;
printf("%c\n",r[k]+1);}
Объяснение кода листинга программы
- Объявлена строка
r[]равнаяabcdefghijklmnopqrstuvwxyz. - В переменной
Xхранится длина строкиx, в переменнойYдлина строкиy. - В переменной
kхранится суммаXиY. - Если
kменьше или равно 26, то выводитсяr[k]+1. - Если
kбольше 26, тоkберется по модулю 26 и выводитсяr[k]+1.