|
| 1 | +# Упражнения |
| 2 | + |
| 3 | +## Идентификаторы |
| 4 | + |
| 5 | +1. Объявите переменную и запишите в нее свое имя как литерал строки. |
| 6 | +2. Объявите константу и запишите в нее год своего рождения как литерал числа. |
| 7 | +3. Создайте функцию, которая печатает приветствие и имеет один аргумент: `name`. |
| 8 | +4. Вызовите эту функцию и передайте в нее имя как литерал строки. |
| 9 | +5. Теперь вызовите функцию, передавая в нее переменную. |
| 10 | +6. Вызовите функцию с константой в качестве аргумента. |
| 11 | + |
| 12 | +## Циклы |
| 13 | + |
| 14 | +1. Выведите все нечетные числа из диапазона [15, 30] включая крайние числа. |
| 15 | +2. Реализуйте функцию `range(start: number, end: number)` которая выполняет |
| 16 | +предыдущую задачу. |
| 17 | + |
| 18 | +## Функции |
| 19 | + |
| 20 | +1. Реализуйте функцию `average` с сигнатурой |
| 21 | +`average(a: number, b: number): number` calculating average (arithmetic mean). |
| 22 | +2. Реализуйте функцию `square` с сигнатурой |
| 23 | +`square(x: number): number` вычисляющую квадрат своего аргумента. |
| 24 | +3. Реализуйте функцию `cube` с сигнатурой |
| 25 | +`cube(x: number): number` вычисляющую куб своего аргумента. |
| 26 | +4. Вызовите функции `square` и `cube` в цикле, передавая результаты их исполнения |
| 27 | +в функцию `average`. Выведите результаты вызова `average`. |
| 28 | + |
| 29 | +## Объекты |
| 30 | + |
| 31 | +1. Создайте объект с одним полем `name` и присвойте его в константу. |
| 32 | +2. Создайте объект с одним полем `name` и присвойте его в переменную. |
| 33 | +3. Попробуйте поменять поле `name` у обоих объектов. |
| 34 | +4. Попробуйте присвоить другой объект в оба идентификатора. |
| 35 | +5. Объясните поведение кода. |
| 36 | +6. Реализуйте функцию `createUser` с сигнатурой |
| 37 | +`createUser(name: string, city: string): object`. Пример вызова: |
| 38 | +`createUser('Marcus Aurelius', 'Roma')` функция должна вернуть объект |
| 39 | +`{ name: 'Marcus Aurelius', city: 'Roma' }` |
| 40 | + |
| 41 | +## Массивы |
| 42 | + |
| 43 | +1. Объявите массив объектов с двумя полями: `name` и `phone` для хранения |
| 44 | +телефонной книги. Пример: `{ name: 'Marcus Aurelius', phone: '+380445554433' }` |
| 45 | +2. Реализуйте функцию `findPhoneByName` с сигнатурой |
| 46 | +`findPhoneByName(name: string): string`. Вызов функция должна находить объект, |
| 47 | +где поле `name` равно аргументу `name` и возвращать номер телефона из объекта. |
| 48 | + |
| 49 | +## Коллекции: хеш-таблицы |
| 50 | + |
| 51 | +1. Задайте хеш с ключами значениями поля `name` (из предыдущего примера) |
| 52 | +и значениями равными полю `phone`. |
| 53 | +2. Реализуйте функцию `findPhoneByName` с сигнатурой |
| 54 | +`findPhoneByName(name: string): string` которая находит телефон в хеше по имени |
| 55 | +и возвращает номер телефона. Используйте `hash[key]` для поиска телефона. |
0 commit comments