Комп'ютерні професіонали
Тестова вибірка магістерської програми
Вам буде запропоновано виконати справжню перевірку як частину процесу подання заявки.
Мета цього короткого тесту - оцінити Вашу здатність вирішувати елементарні задачі програмування мовою за вашим вибором.
Напишіть свої рішення на Java, якщо ви знайомі з цією мовою; в іншому випадку використовуйте одну з таких мов: C, C ++ або C #. Для кожної з проблем, наведених нижче, напишіть найпростіший, ясний рішення, яке ви можете, у вигляді короткої програми.
ТЕСТ ПРОГРАМИ
- Масив з непарним числом елементів вважається центрованим, якщо всі елементи (крім середнього) суворо перевищують значення середнього елемента. Зауважимо, що тільки масиви з непарним числом елементів мають середній елемент. Напишіть функцію, яка приймає цілий масив і повертає 1, якщо він є центрованим масивом, інакше він повертає 0.
Приклади:
якщо вхідний масив | повертати |
{1, 2, 3, 4, 5} | 0 (середній елемент 3 не є строго меншим за всі інші елементи) |
{3, 2, 1, 4, 5} | 1 (середній елемент 1 строго менше, ніж всі інші елементи) |
{3, 2, 1, 4, 1} | 0 (середній елемент 1 не є строго меншим за всі інші елементи) |
{1, 2, 3, 4} | 0 (без середнього елемента) |
{} | 0 (без середнього елемента) |
10 {} | 1 (середній елемент 10 строго менше, ніж всі інші елементи) |
Дивіться правильні відповіді на приклади запитань.
- Напишіть функцію, яка приймає масив цілих чисел як аргумент, і повертає значення на основі суми парних і непарних чисел у масиві. Нехай X = сума непарних чисел в масиві і Y = сума парних чисел. Функція повинна повернути X - Y
Підпис функції:
int f (int [] a)
прикладів
якщо вхідний масив | повертати |
1 {} | 1 |
{1, 2} | -1 |
{1, 2, 3} | 2 |
{1, 2, 3, 4} | -2 |
{3, 3, 4, 4} | -2 |
{3, 2, 3, 4} | 0 |
{4, 1, 2, 3} | -2 |
{1, 1} | 2 |
{} | 0 |
Дивіться правильні відповіді на приклади запитань.
- Напишіть функцію, яка приймає масив символів, нульову початкову позицію і довжину. Він повинен повернути масив символів, що містить містить символів, починаючи з стартсимволу вхідного масиву. Функція повинна виконувати перевірку помилок на початкову позицію і довжину і повертати нуль, якщо будь-яке значення не є законним.
Підпис функції:
char [] f (char [] a, int початок, int len)
прикладів
якщо вхідні параметри | повертати |
{'a', 'b', 'c'}, 0, 4 | нулю |
{'a', 'b', 'c'}, 0, 3 | {'a', 'b', 'c'} |
{'a', 'b', 'c'}, 0, 2 | {'a', 'b'} |
{'a', 'b', 'c'}, 0, 1 | {'a'} |
{'a', 'b', 'c'}, 1, 3 | нулю |
{'a', 'b', 'c'}, 1, 2 | {'b', 'c'} |
{'a', 'b', 'c'}, 1, 1 | {'b'} |
{'a', 'b', 'c'}, 2, 2 | нулю |
{'a', 'b', 'c'}, 2, 1 | {'c'} |
{'a', 'b', 'c'}, 3, 1 | нулю |
{'a', 'b', 'c'}, 1, 0 | {} |
{'a', 'b', 'c'}, -1, 2 | нулю |
{'a', 'b', 'c'}, -1, -2 | нулю |
{}, 0, 1 | нулю |
Дивіться правильні відповіді на приклади запитань.
- Напишіть функцію зворотного цілого за допомогою числових операторів і без використання будь-яких масивів або інших структур даних.
Підпис функції:
int f (int n)
прикладів
якщо вхідне ціле число | повертати |
1234 | 4321 |
12005 | 50021 |
1 | 1 |
1000 | 1 |
0 | 0 |
-12345 | -54321 |
Дивіться правильні відповіді на приклади запитань.
- Напишіть функцію для повернення масиву, що містить всі елементи, загальні для двох заданих масивів, що містять різні позитивні числа. Не можна використовувати вбудовані методи. Вам дозволяється використовувати будь-яку кількість масивів.
Підпис функції:
int [] f (int [] спочатку, int [] другий)
прикладів
якщо вхідні параметри | повертати |
{1, 8, 3, 2}, {4, 2, 6, 1} | {1, 2} |
{1, 8, 3, 2, 6}, {2, 6, 1} | {2, 6, 1} |
{1, 3, 7, 9}, {7, 1, 9, 3} | {1, 3, 7, 9} |
{1, 2}, {3, 4} | {} |
{}, {1, 2, 3} | {} |
{1, 2}, {} | {} |
{1, 2}, null | нулю |
нуль, {} | нулю |
null, null | нулю |
Дивіться правильні відповіді на приклади запитань.
- Розглянемо масив A з n позитивних чисел. Ціле число idx називається POE (точка рівноваги) A, якщо A [0] + A [1] +… + A [idx - 1] дорівнює A [idx + 1] + A [idx + 2]) +… + A [n - 1]. Напишіть функцію, щоб повернути POE масиву, якщо він існує, і -1 інакше.
Підпис функції:
int f (int [] a)
прикладів
якщо є вхідні масиви | повертати |
{1, 8, 3, 7, 10, 2} | Причина 3: a [0] + a [1] + a [2] дорівнює [4] + a [5] |
{1, 5, 3, 1, 1, 1, 1, 1, 1} | Причина 2: a [0] + a [1] дорівнює [3] + a [4] + a [5] + a [6] + a [7] + a [8] |
{2, 1, 1, 1, 2, 1, 7} | Причина 5: a [0] + a [1] + a [2] + a [3] + a [4] дорівнює [6] |
{1, 2, 3} | -1 Причина: Ні POE. |
{3, 4, 5, 10} | -1 Причина: Ні POE. |
{1, 2, 10, 3, 4} | -1 Причина: Ні POE. |
Дивіться правильні відповіді на приклади запитань.
Примітка: Будь ласка, прочитайте Список загальних помилок програмування що студенти здійснили на нашому тесті.