Проверить, содержится ли строка S0 в строке S. Не использовать стандартные средства для поиска подстрок - C#
Формулировка задачи:
1)Дан целочисленный массив A размера N. Назовем серией группу подряд идущих одинаковых элементов, а длиной серии — количество этих элементов (длина серии может быть равна 1). Сформировать два новых целочисленных массива B и C одинакового размера, записав в массив B длины всех серий исходного массива, а в массив C — значения элементов, образующих эти серии.
2)Даны строки S и S0. Проверить, содержится ли строка S0 в строке S. Не использовать стандартные средства для поиска подстрок.
3)Дана целочисленная матрица размера M х N. Найти номер первого из ее столбцов, содержащих максимальное количество одинаковых элементов.
Помогите пожалуйста.
Решение задачи: «Проверить, содержится ли строка S0 в строке S. Не использовать стандартные средства для поиска подстрок»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace _6_4_1 { class SplitTest { static void Main() { Console.WriteLine("Введите строку S\n"); string s = Convert.ToString(Console.ReadLine()); Console.WriteLine("\nВведите подстроку S0\n"); string s0 = Convert.ToString(Console.ReadLine()); string[] split = s.Split(new Char[] { ' ', ',', '.', ':', '\t' }); string[] split1 = s0.Split(new Char[] { ' ', ',', '.', ':', '\t' }); /*foreach (string razp in split) { if (razp.Trim() != "") Console.WriteLine(razp); } foreach (string razv in split1) { if (razv.Trim() != "") Console.WriteLine(razv); } */ bool tf = false; for (int i = 0; i <= split.Length - split1.Length; i++) { for (int j = 0; j < split1.Length; j++) { if (split1[j] == split[i + j]) { tf = true; } else { tf = false; } } if (tf) break; } if (tf) { Console.WriteLine("\nСтрока S0 содержиться в строке S"); } else { Console.WriteLine("\nСтрока S0 не содержиться в строке S"); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д