Семинар 3: условные конструкции, циклы, функции

Задача 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.”