
Windows Form С# Написать программу, которая считывает английский текст из файла и выводит на
экран слова текста, начинающиеся и оканчивающиеся на гласные буквы.

Ответы на вопрос

// Поскольку указание расположения файла не требовалось, файл с текстом должен находиться в папке с .exe файлом и называться input.txt
namespace WinFormsApp2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void ParseFileBtn_Click(object sender, EventArgs e)
{
if (!TryReadTextFromFile(out string text))
{
MessageBox.Show("Failed to read file.");
return;
}
if (string.IsNullOrEmpty(text) || string.IsNullOrWhiteSpace(text))
{
MessageBox.Show("File is empty.");
return;
}
string vowelLetters = "aAeEiIoOuUyY";
string[] words = text
.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries)
.Where(t => vowelLetters.Contains(t.First()) && vowelLetters.Contains(t.Last()))
.ToArray();
InfoListBox.Items.Clear();
if (words.Length == 0)
{
MessageBox.Show("Nothing found.");
return;
}
foreach (var w in words)
InfoListBox.Items.Add(w);
}
private bool TryReadTextFromFile(out string text)
{
try
{
text = File.ReadAllText("input.txt");
return true;
}
catch
{
text = null;
return false;
}
}
}
}






Конечно! Вот пример программы на C#, которая считывает английский текст из файла и выводит на экран слова, начинающиеся и оканчивающиеся на гласные буквы:
csharpusing System;
using System.IO;
namespace VowelWords
{
class Program
{
static void Main(string[] args)
{
string filename = "text.txt"; // Имя файла с текстом
string[] words = ReadWordsFromFile(filename);
foreach (string word in words)
{
if (IsVowel(word[0]) && IsVowel(word[word.Length - 1]))
{
Console.WriteLine(word);
}
}
Console.ReadLine();
}
static string[] ReadWordsFromFile(string filename)
{
try
{
string text = File.ReadAllText(filename);
char[] separators = { ' ', '\r', '\n', '\t', '.', ',', ';', ':', '!', '?' };
string[] words = text.Split(separators, StringSplitOptions.RemoveEmptyEntries);
return words;
}
catch (Exception ex)
{
Console.WriteLine("Ошибка чтения файла: " + ex.Message);
return new string[0];
}
}
static bool IsVowel(char c)
{
char[] vowels = { 'a', 'e', 'i', 'o', 'u' };
return Array.IndexOf(vowels, char.ToLower(c)) >= 0;
}
}
}
В этом примере предполагается, что у вас есть текстовый файл "text.txt" в той же папке, где находится исполняемый файл программы. Вы можете заменить имя файла на нужное вам.
Программа считывает содержимое файла в переменную text
, разделяет его на слова с помощью разделителей, таких как пробелы и знаки пунктуации, и сохраняет каждое слово в массиве words
. Затем она проходит по каждому слову в массиве и проверяет, начинается ли оно и заканчивается ли на гласные буквы. Если условие выполняется, слово выводится на экран.
Обратите внимание, что программа просто выводит слова, удовлетворяющие условию, в консольное окно. Если вы хотите изменить вывод или сохранить результаты в файл, вы можете изменить эту часть кода по своему усмотрению.


Похожие вопросы








Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili