Вопрос школьника по предмету Информатика
Заданы 2 строки, состоящие из слов, разделенных пробелами. Определить местоположение
символа первой строки, который первым совпал с одним из символов второй. Вывести первую
строку, исключив из нее слово, в которое входит этот символ. Вторая строка пробелами не
разделена.(60 баллов) написать программу на с#
Ответ учителя по предмету Информатика
using System;
internal class Program
{
private static void Main()
{
Console.WriteLine(DoSomeThing(«Как тебе живется», «цчхб»));
Console.WriteLine(DoSomeThing(«Как тебе живется», «цчх»));
Console.WriteLine(DoSomeThing(«Как тебе живется», «цчхи»));
Console.WriteLine(DoSomeThing(«Как тебе живется», «цчахбаек»));
Console.WriteLine(«Программа оконченна»);
Console.ReadKey();
}
private static string DoSomeThing(string st1, string st2)
{
Console.WriteLine();
//Console.WriteLine($»{st1} — {st2}»);
var i = 0;
for (var j = 0; j < st1.Length; j++)
{
//Console.WriteLine($»st1[{j}] = {st1[j]} {!st2.Contains(st1[j].ToString())}»);
if (!st2.Contains(st1[j].ToString())) continue;
i = j;
break;
}
if (i == 0) return «Нет совпадений»;
var s = st1.LastIndexOf(» «, i, StringComparison.Ordinal) > 0
? st1.Substring(0, st1.LastIndexOf(» «, i, StringComparison.Ordinal))
: «»;
s = s +
(st1.IndexOf(» «, i, StringComparison.Ordinal) > 0
? st1.Substring(st1.IndexOf(» «, i, StringComparison.Ordinal))
: «»);
return «Искомый символ — » + st1[i] + «n» + s.Trim();
}
}
Похожие вопросы от пользователей
Переделайте предложение, но так чтобы смысл не поменялся