Построение из двух строк третьей строки по определенному принципу - C (СИ)
Формулировка задачи:
На вход программе дается 2 строки, состоящие из букв английского алфавита. По следющим правилам строится третья строка, которая и будет результатом работы программы:
1)Берется первая строка, начинается прохождение строки с первого символа. Если буква согласная, то она просто переносится в строку результата, если же гласная, то тогда смотрится, сколько раз эта буква встречается в 1 и 2 строке. Если количество встреч данного символа меньше во второй строке, то в строку результата просто записывается эта буква, иначе она дважды записывается в строку результата.
2) Затем к строке результата приписывается вторая строка задом наперед.
3) Теперь берем вторую строку и работаем по похожему принципу, что и в первом пункте. Но гласные теперь просто переносятся в результат, а согласные, которые во второй строке встречаются реже - удалятся, иначе просто переносятся в единичном экземпляре.
Пример работы программы:
ТЕТРИС
ТЕОРЕМА
Результат: ТЕЕТРИСАМЕОЕ
P.S. Понимаю, что запутанное условие, но уже неделю не могу разобраться с этой штукой. Очень нужна помощь!Заранее спасибо.
Решение задачи: «Построение из двух строк третьей строки по определенному принципу»
textual
Листинг программы
#include "stdafx.h" #include <stdio.h> #include <string.h> #include <locale.h> int main() { int i = 0, j = 0,k = 0, l = 0, k1 = 0, k2 = 0, len1 = 0, len2 = 0, p1 = 0, p2 = 0, sim = 0; char glas[] = "eyuioaqwrtpsdfghjklzxcvbnm"; //char sogl[] = "qwrtpsdfghjklzxcvbnm"; char str1[80] = { "\0" }; char str2[80] = { "\0" }; char str[80] = { "\0" }; int leng = strlen(glas), len = 0; printf("Vvedite 2 stroki \n"); gets_s(str1); gets_s(str2); len1 = strlen(str1); len2 = strlen(str2); for (i = 0; i < len1; i++) { for (j = 0; j < leng; j++) if (str1[i] == glas[j] && j < 6) { sim = glas[j]; for (k = 0; k < len1; k++) if (str1[k] == sim) k1++; for (l = 0; l < len2; l++) if (str2[l] == sim) k2++; if (k1 > k2) str[i] = sim; else str[i] = sim; str[i + 1] == sim; } } puts(str); return(0); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д