Ниже четыре небольших примера на C# (с использованием топ-левел-выражений, чтобы код был максимально простым для быстрой проверки). Каждый пример соответствует заданию и использует указанные методы.
Задание 1. Получение расширения файла
- Используются: LastIndexOf, Substring, ToLower.
// Задание 1: Получение расширения файла
using System;
Console.Write("Введите имя файла: ");
string fileName = Console.ReadLine() ?? "";
int dotIndex = fileName.LastIndexOf('.');
string ext = (dotIndex >= 0 && dotIndex < fileName.Length - 1)
? fileName.Substring(dotIndex + 1).ToLower()
: "";
Console.WriteLine(ext);
Задание 2. Сокращение строки
- Используются: Length, Substring, конкатенацию строк.
// Задание 2: Сокращение строки
using System;
Console.Write("Введите строку: ");
string s = Console.ReadLine() ?? "";
Console.Write("Введите максимальную длину: ");
if (!int.TryParse(Console.ReadLine(), out int maxLen)) maxLen = s.Length;
string result;
if (s.Length <= maxLen)
{
result = s;
}
else
{
int cutLen = Math.Max(0, maxLen - 3);
result = s.Substring(0, cutLen) + "...";
}
Console.WriteLine(result);
Задание 3. Подсчёт вхождений символа
- Используется: цикл for, индексация строки, сравнение символов.
// Задание 3: Подсчёт вхождений символа
using System;
Console.Write("Введите строку: ");
string s = Console.ReadLine() ?? "";
Console.Write("Введите символ для подсчёта: ");
string chStr = Console.ReadLine() ?? "";
char ch = chStr.Length > 0 ? chStr[0] : '\0';
int count = 0;
for (int i = 0; i < s.Length; i++)
{
if (s[i] == ch) count++;
}
Console.WriteLine(count);
Задание 4. Capitalized Case
- Используются: ToLower, Split, ToUpper, цикл for/foreach, конкатенация строк.
// Задание 4: Capitalized Case
using System;
Console.Write("Введите предложение: ");
string input = Console.ReadLine() ?? "";
// Приводим к нижнему регистру, разбиваем на слова
string[] words = input.ToLower().Split(' ', StringSplitOptions.RemoveEmptyEntries);
for (int i = 0; i < words.Length; i++)
{
if (words[i].Length > 0)
{
char first = Char.ToUpper(words[i][0]);
string rest = words[i].Substring(1);
words[i] = first + rest;
}
}
// Соединяем слова обратно через пробел
string result = string.Join(" ", words);
Console.WriteLine(result);
Если нужно, могу адаптировать примеры под конкретную среду (например, консольное приложение с классом Program, или под .NET Framework).