#Problem 1:

x <- 1.1
a <- 2.2
b <- 3.3

#a
z <- x^(a^(b))
print(z)
## [1] 3.61714
#b
z <- (x^a)^b
print(z)
## [1] 1.997611
#c
z <- ((3*(x^3)) + (2*(x^2)) + 1)
print(z)
## [1] 7.413
#d
floor(z%%2)
## [1] 1
#Problem 2

#a
c(rep(1:8),rep(7:1))
##  [1] 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1
#b
rep(1:5, times=1:5)
##  [1] 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
#c
rep(5:1, times=5:1)
##  [1] 5 5 5 5 5 4 4 4 4 3 3 3 2 2 1
#Problem 3
z <- runif(2)
print(z)
## [1] 0.3050075 0.4918339
x <- z[1]
y <- z[2]

r <- sqrt((x^2) + (y^2))

print(r)
## [1] 0.5787315
theta <-atan((y/x))
print(theta)
## [1] 1.015697
coordinates <- c(r,theta)

print(coordinates)
## [1] 0.5787315 1.0156971
#Problem 4
queue <- c("sheep", "fox", "owl", "ant")

#a
queue <- append(queue,"serpent", after =length(queue))
print (queue)
## [1] "sheep"   "fox"     "owl"     "ant"     "serpent"
#b
queue <- queue[-1]
print(queue)
## [1] "fox"     "owl"     "ant"     "serpent"
#c
queue <- append(queue, "donkey",1)
print(queue)
## [1] "fox"     "donkey"  "owl"     "ant"     "serpent"
queue <- c("donkey", "fox", "owl", "ant", "serpent")

#d
queue <- queue[-5]
queue
## [1] "donkey" "fox"    "owl"    "ant"
#e
queue <- queue[-3]
queue
## [1] "donkey" "fox"    "ant"
#f
queue <- append(queue, "aphid",2)
queue
## [1] "donkey" "fox"    "aphid"  "ant"
#g
which(queue == "aphid")
## [1] 3
#Problem 5
v1 <- 1:100
v1[rowSums(outer(v1, c(2, 3, 7), "%%") == 0) == 0]
##  [1]  1  5 11 13 17 19 23 25 29 31 37 41 43 47 53 55 59 61 65 67 71 73 79
## [24] 83 85 89 95 97
#Problem 6
z <- runif(1000)
head(z)
## [1] 0.8113173 0.7457743 0.8686164 0.6536593 0.8380037 0.4204672
#a
vector1 <- c(mean(z < .10), mean(z > 0.90), mean(z > 0.45 & z < 0.55))
print(vector1)
## [1] 0.104 0.082 0.111
#b
logz<- log10(z)
vector2 <- c(mean(logz < .10), mean(logz > 0.90), mean(logz > 0.45 & logz < 0.55))
print(vector2)
## [1] 1 0 0
z2 <- z^2
vector3 <- c(mean(z2 < .10), mean(z2 > 0.90), mean(z2 > 0.45 & z2 < 0.55))
print(vector3)
## [1] 0.326 0.050 0.077
sqrtz <- sqrt(z)
vector4 <- c(mean(sqrtz < .10), mean(sqrtz > 0.90), mean(sqrtz > 0.45 & sqrtz < 0.55))
print(vector4)
## [1] 0.015 0.173 0.105
#c
print(vector1)
## [1] 0.104 0.082 0.111
print(vector2)
## [1] 1 0 0
print(vector3)
## [1] 0.326 0.050 0.077
print(vector4)
## [1] 0.015 0.173 0.105