Назад
Вперед
Зміст
Задачі зі словами речення
У цьому розділі подано задачі на роботу зі словами в реченні.
Словом вважатимемо будь-яку послідовність символів. Між словами мають бути пробіли. У реченні може бути одне або кілька слів.
Усі вибрані з речення слова будемо розміщувати в одновимірному масиві для подальшої обробки за відомими алгоритмами (сортування, пошук, знаходження найбільшого тощо).
Для поділу речення на слова використовуватимемо метод Split, як роздільник — пробіл.
Перегляд слів у реченні
Приклад 1
Дано речення і літера. Вивести слова цього речення, які закінчуються на цю літеру.
Результат роботи програми

Програма
static void Main(string[] args)
{
// Отримання вхідного рядка та символу для перевірки
string s = Console.ReadLine(); // Вхідний рядок слів
char bukva = Convert.ToChar(Console.ReadLine()); // Символ для перевірки в кінці слів
char poslbukv; // Змінна для останнього символу слова
// Розділення рядка на масив слів
string[] sl = s.Split(' '); // Масив слів (розділених пробілами)
int i, Lsl, L = sl.Length; // i - лічильник, Lsl - довжина поточного слова, L - кількість слів
// Перебір усіх слів у масиві
for (i = 0; i < L; i++)
{
Lsl = sl[i].Length; // Визначення довжини поточного слова
poslbukv = sl[i][Lsl - 1]; // Отримання останнього символу слова
// Перевірка чи збігається останній символ із заданим
if (poslbukv == bukva)
Console.WriteLine(sl[i]); // Виведення слова, якщо умова виконується
}
// Очікування натискання клавіші перед завершенням
Console.ReadKey();
}
Із слів одного речення сформувати інше речення
Приклад 2
Дано речення. Із слів цього речення сформувати нове речення, що містить лише слова з парними номерами.
Результат роботи програми

Програма
static void Main(string[] args)
{
// Отримання вхідного рядка від користувача
string s = Console.ReadLine();
// Ініціалізація порожнього рядка для результату
string str = "";
// Розділення вхідного рядка на масив слів за пробілами
string[] sl = s.Split(' ');
// Отримання кількості слів у масиві
int i, L = sl.Length;
// Перебір усіх слів у масиві
for (i = 0; i < L; i++)
{
// Перевірка чи індекс слова парний (0, 2, 4...)
if (i % 2 == 0)
{
// Додавання слова до результуючого рядка з пробілом
str = str + sl[i] + " ";
}
}
// Виведення результату - слів з парними індексами
Console.WriteLine(str);
// Очікування натискання клавіші перед завершенням програми
Console.ReadKey();
}
Варіанти задач
Варіант 1
- Дано речення і літеру. Вивести слова, що починаються з цієї літери.
- Дано речення. Сформувати нове речення, у якому перше і останнє слова поміняні місцями.
Варіант 2
- Дано речення. Вивести лише слова з непарними номерами, вказуючи кількість літер у кожному слові.
- Дано речення. Сформувати нове речення, у якому перше і друге слова поміняні місцями.
Варіант 3
- Дано речення і слово. Вивести всі слова, окрім вказаного.
- Дано речення. Сформувати нове речення, у якому після слів з парними номерами вставити «!», після слів з непарними — «?». Пробіли зберегти.
Варіант 4
- Дано речення. Вивести лише ті слова, що закінчуються на літеру «а».
- Дано речення і число t. Сформувати нове речення, до якого увійдуть усі слова, крім слова з номером t.
Варіант 5
- Дано речення. Вивести лише ті слова, які не збігаються з останнім словом.
- Дано речення і літеру. Сформувати нове речення, виключивши слова, які починаються з цієї літери.
Варіант 6
- Дано речення і число. Вивести лише ті слова, у яких кількість літер менша за задане число.
- Дано речення. Якщо слово починається з голосної, після нього вставити «,», інакше — «!». Пробіли зберегти.
Варіант 7
- Дано речення. Вивести слова, які починаються і закінчуються на ту саму літеру.
- Сформувати два нових речення: одне зі слів з непарними номерами, друге — з парними.
Варіант 8
- Дано речення. Надрукувати слова, замінюючи закінчення «ing» на «ed».
- Сформувати нове речення лише з симетричних слів (наприклад, «шалаш»).
Варіант 9
- Дано речення. Надрукувати слова, замінивши першу літеру кожного слова на велику.
- Сформувати нове речення, переставивши слова попарно: 1 з 2, 3 з 4 тощо. Якщо кількість слів непарна — останнє не переставляти.
Варіант 10
- Дано речення. У кожному слові переставити першу літеру в кінець слова.
- Дано число k. Зсунути слова циклічно на k позицій. Наприклад, при k = 2 і 8 словах: 3 4 5 6 7 8 1 2.
Варіант 11
- Знайти найдовше слово в реченні. Якщо таких кілька — вибрати перше.
- Дано два речення. Сформувати третє: слова з непарними номерами з першого речення + парні з другого.
Варіант 12
- Надрукувати слова, в яких перша літера зустрічається більше одного разу.
- Сформувати нове речення: слова з непарними номерами виводити в зворотному порядку (наприклад, «мама» → «амам»), парні — не виводити.
Варіант 13
- Надрукувати слова парної довжини у зворотному порядку (наприклад, «мама» → «амам»).
- Сформувати нове речення з трьох найдовших слів.
Варіант 14
- Знайти слово з найбільшою кількістю голосних (латиниця).
- Сформувати нове речення з трьох найкоротших слів.
Варіант 15
- Надрукувати всі слова у порядку зростання їх довжини.
- Сформувати нове речення: слова в алфавітному порядку без повторів.
Варіант 16
- Надрукувати всі слова, в яких літери розташовані в алфавітному порядку.
- Сформувати речення з неповторюваних слів.
Варіант 17
- Надрукувати всі слова, в яких немає повторюваних літер.
- Дано два речення. Сформувати третє з усіх унікальних слів, які трапляються хоча б в одному реченні (повторювані — один раз).
Назад
Вперед
Зміст