--- title: "Основы программирования в R" author: "Алла Тамбовцева" output: pdf_document: latex_engine: xelatex mainfont: CMU Serif header-includes: - \usepackage[russian]{babel} - \usepackage{hyperref} - \hypersetup{colorlinks = true, urlcolor = blue, linkcolor=magenta} --- # Практикум 3: функции, условия, цикл for ### Задача 1 Напишите код, который запрашивает у пользователя его имя и фамилию и если оно совпадает Вашим, выводит на экран "Hello, [name][surname], welcome to R! I missed you", если не совпадает, то выводит на экран "Sorry, R is not available now". Подразумевается, что R знает Ваше имя (при желании можете написать функцию, которая вытаскивает Ваше имя пользователя на компьютере и сравнивает с ним). ### Задача 2 Напишите код, который сохраняет число, которое ввел пользователь с клавиатуры (предполагается, что пользователь вводит только числа, причем в правильном формате — в качестве разделителя использует точку), в переменную `x` и если `x` является целым числом, то выводит на экран сообщение "It is an integer.", а если `x` не является таковым, то выводит "It is not an integer". ### Задача 3 Напишите код, который запрашивает у пользователя число элементов вектора ("Enter number of elements: "), сохраняет его в переменную `n` и создает вектор заданной длины, состоящий из пропущенных значений. ### Задача 4 Напишите код, который запрашивает у пользователя число элементов вектора ("Enter number of elements: "), сохраняет его в переменную `n` и создает вектор заданной длины, состоящий из пропущенных значений. Дальше, если индекс элемента четный, то этот элемент заменяется на 1, если нечетный - на 0. ### Задача 5 Напишите код, который запрашивает у пользователя размерность матрицы (предполагается, что пользователь вводит число строк и столбцов через пробел), сохраняет их и создает единичную матрицу заданной размерности. Если невозможно создать единичную матрицу заданной размерности, на экран выводится сообщение "Impossible to create an identity matrix with such dimensions.". **Подсказка:** единичная матрица - квадратная матрица (число строк равно числу столбцов), на главной диагонали которой стоят 1, а все остальные элементы равны 0. Пример: ``` [1 0 0] [0 1 0] [0 0 1] ``` ### Задача 6 Напишите функцию, которая принимает на вход числовой вектор и возвращает вектор, состоящий из квадратов элементов вектора, поданного на вход. Можете для определенности назвать функцию `get_squares()`. ### Задача 7 Напишите функцию `smart_squares()`, которая принимает на вход вектор, и если он числовой, то возвращает вектор из квадратов его элементов, а если нет — возвращает вектор из пропущенных значений и выводит на экран сообщение "Your vector is not numeric."