Определить, сколько слов в последовательности А оканчивается на букву N - C#
Формулировка задачи:
Определить, сколько слов в последовательности А оканчивается на букву N и сколько слов в последовательности В оканчивается на букву Y.
Для подсчета в произвольной последовательности числа слов, оканчивающихся на заданный символ, разработать процедуру.
Написал программу в которой сам назначаю какую букву на конце надо искать, но проблема в том, что бы распознать где стоит эта буква, дополнительно ввожу пробел т.е: "n "
И тут возникла проблема, он видит букву и пробел раздельно а не слитно т.е. он считает все буквы n да еще и пробелы.
Как решить эту проблему?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
class Program
{
public static int func(string symb)
{
int counterN = 0;
string str1;
str1 = Console.ReadLine();
string[] words = str1.Split(new[]{'.',',','!',' '});
for (int i = 0; i < str1.Length; i++)
{
if (str1[i] == symb[0]) counterN++;
}
return counterN;
}
static void Main(string[] args)
{
string symA;
symA = Console.ReadLine();
Console.WriteLine("Символ " + symA + "на конце встретился " + func(symA) + " раз ");
string symB;
symB = Console.ReadLine();
Console.WriteLine("Символ " + symB + "на конце встретился " + func(symB) + " раз ");
Console.ReadKey();
}
}
}Решение задачи: «Определить, сколько слов в последовательности А оканчивается на букву N»
textual
Листинг программы
string[] words = str1.Split(new[] { '.', ',', '!', ' ' });
foreach (var word in words)
{
if (word[word.Length-1] == symb[0]) counterN++;
}