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

Програма
static void Main(string[] args)
{
// Отримання вхідного рядка чисел від користувача
string s = Console.ReadLine();
// Розділення рядка на масив рядків (чисел) за пробілами
string[] sl = s.Split(' ');
// Оголошення змінних:
int i; // Лічильник циклу
int chislo; // Поточне число
int summa = 0; // Сума чисел (ініціалізована нулем)
int L = sl.Length; // Кількість чисел у масиві
// Обчислення суми всіх чисел
for (i = 0; i < L; i++)
{
// Конвертація рядка у число
chislo = Convert.ToInt32(sl[i]); // Виправлено помилку (s1 → sl)
// Додавання числа до загальної суми
summa = summa + chislo;
}
// Виведення суми чисел
Console.WriteLine(summa);
// Очікування натискання клавіші перед завершенням
Console.ReadKey();
}
Приклад 2
Сформувати рядок, який містить перші 10 простих чисел.
Результат роботи програми

Програма
static void Main(string[] args)
{
string st = ""; // Рядок для зберігання простих чисел
int k = 0; // Лічильник знайдених простих чисел
int n = 0; // Поточне число для перевірки
do
{
n++; // Перехід до наступного числа
int m = 0; // Лічильник дільників
// Перевірка чи є число простим
for (int i = 1; i <= n; i++)
{
if (n % i == 0) m++; // Якщо i є дільником n
}
// Якщо кількість дільників ≤ 2 (1 і саме число)
if (m <= 2)
{
st = st + Convert.ToString(n) + " "; // Додаємо число до рядка
k++; // Збільшуємо лічильник простих чисел
}
}
while (k < 10); // Повторюємо, поки не знайдемо 10 простих чисел
// Виведення результатів
Console.WriteLine(st); // Виводимо всі знайдені прості числа
// Очікування натискання клавіші
Console.ReadKey();
}
Варіанти задач
Варіант 1
- Дано рядок із цілими числами через пробіл. Знайти їхній добуток.
- Сформувати рядок, який містить перші 10 трицифрових чисел, що містять цифру 7 і кратні 7.
Варіант 2
- Дано рядок із цілими числами через пробіл. Знайти кількість парних чисел.
- Сформувати рядок, що містить перші 15 трицифрових чисел, середня цифра яких дорівнює сумі першої і останньої цифр.
Варіант 3
- Дано рядок із цілими числами через пробіл. Знайти суму чисел, кратних 5.
- Сформувати рядок, який містить перші 10 трицифрових чисел, сума цифр яких кратна 20.
Варіант 4
- Дано рядок із цілими числами через пробіл. Знайти мінімальне з них.
- Сформувати рядок, що містить перші 15 двоцифрових чисел, кратних сумі своїх цифр.
Варіант 5
- Дано рядок із цілими числами через пробіл. Виділити числа у масив і вивести масив у зворотному порядку.
- Сформувати рядок, який містить перші 10 чисел з інтервалу [1; 50], кратних 5 або 7.
Варіант 6
- Дано рядок із цілими числами через пробіл. Помножити всі числа на 3.
- Сформувати рядок, який містить перші 3 двоцифрові числа, для яких удвічі більша сума цифр дорівнює добутку цифр.
Варіант 7
- Дано рядок із цілими числами через пробіл. Чи всі вони додатні?
- Сформувати рядок, що містить перші 10 чисел з інтервалу [100; 150], у яких усі три цифри різні.
Варіант 8
- Дано рядок із цілими числами через пробіл. Чи є серед них кратні 3?
- Сформувати рядок, що містить перші 15 чисел з інтервалу [200; 400], у записі яких є цифра 5.
Варіант 9
- Дано рядок. Якщо це коректний запис цілого числа — перевірити, чи міститься в ньому цифра 5. Інакше повідомити, що це не число.
- Сформувати рядок, що містить перші 10 щасливих чотирицифрових чисел (сума перших двох цифр дорівнює сумі останніх двох; напр., 3241).
Варіант 10
- Дано рядок. Якщо це ціле число — знайти найменшу цифру. Інакше повідомити, що це не число.
- Сформувати рядок, який містить перші 15 чисел з інтервалу [200; 400], що мають рівно дві однакові цифри.
Варіант 11
- Дано рядок. Якщо це ціле число — перевірити, чи воно додатне. Інакше повідомити, що це не число.
- Сформувати рядок із 10 випадкових чисел з інтервалу [50; 150].
Варіант 12
- Дано рядок. Якщо це ціле число — перевірити, чи воно парне. Інакше повідомити, що це не число.
- Сформувати рядок із перших 20 непарних двоцифрових чисел, які починаються з парної цифри.
Варіант 13
- Дано рядок. Якщо це ціле число — перевірити, чи воно від’ємне. Інакше повідомити, що це не число.
- Дано рядок, що містить цифри і літери. Сформувати новий рядок, де цифри замінені словами. Наприклад: «У класі 15 комп’ютерів» → «У класі один п’ять комп’ютерів».
Варіант 14
- Дано рядок. Якщо це дійсне число — перевірити, чи належить воно інтервалу [0; 1]. Інакше повідомити, що це не дійсне число.
- Сформувати рядок із перших 20 чисел Фібоначчі.
Варіант 15
- Дано рядок. Повідомити: це ціле додатне число (23, +8…), ціле від’ємне число (-23, -8…), дійсне додатне число (23.5, +34.25), дійсне від’ємне число (-23.5), чи не число?
- Сформувати рядок із перших 30 шестизначних симетричних чисел (100100, 101101, …).
Варіант 16
- Дано рядок, що є алгебраїчною сумою однозначних чисел (напр., -5-3+8+4). Обчислити суму.
- Сформувати рядок із перших 30 чотирицифрових паліндромів (1001, 1111, 1221…).
Варіант 17
- Дано рядок, що є алгебраїчною сумою чисел довільної довжини (напр., -5-13+128-4153). Обчислити суму.
- Дано натуральне число. Якщо воно менше за 10000, сформувати рядок з його написанням українською мовою. Наприклад, 2345 → «дві тисячі триста сорок п’ять».
Назад
Вперед
Зміст