# %% [markdown]
# # Creating NumPy Arrays

# %%
import numpy as np


# %% [markdown]
#
# Create the following NumPy arrays. Only use `np.array()` if you can find no
# other method to generate the array using methods discussed in the lecture:

# ```python
# array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
# ```

# %%


# %% [markdown]
# ```python
# array([0.  , 1.25, 2.5 , 3.75, 5.  ])
# ```

# %%

# %% [markdown]
# ```python
# array([ 1,  3, 12, 92])
# ```


# %%

# %% [markdown]
# ```python
# array([[1, 2, 3, 4],
#        [5, 6, 7, 8]])
# ```

# %%

# %% [markdown]
# ```python
# array([[[0, 2, 4, 6],
#         [1, 3, 5, 7]],
# 
#        [[1, 2, 3, 4],
#         [5, 6, 7, 8]],
# 
#        [[9, 8, 7, 6],
#         [5, 4, 3, 2]]])
# ```

# %%

# %% [markdown]
# A $2\times 8$ Array containing uniformly distributed random numbers in $[0, 1)$.

# %%

# %% [markdown]
# ```python
# array([[1., 0., 0.],
#        [0., 1., 0.],
#        [0., 0., 1.]])
# ```

# %%

# %% [markdown]
# A vector with 5 elements containing normally distributed random numbers.

# %%

# %% [markdown]
# A $3 \times 4$ array containing normally distributed numbers with mean $5$ and standard deviation $0.5$.

# %%

# %% [markdown]
# Create the following NumPy arrays:
# 
# ```python
# array([[ 0,  2,  4,  6],
#        [ 8, 10, 12, 14],
#        [16, 18, 20, 22],
#        [24, 26, 28, 30],
#        [32, 34, 36, 38]])
# ```

# %%

# %% [markdown]
# 
# ```python
# array([[10, 19, 28, 37, 46, 55],
#        [13, 22, 31, 40, 49, 58],
#        [16, 25, 34, 43, 52, 61]])
# ```

# %%

# %% [markdown]
# # Extrema
#
# Create a vector with 100 random elements, uniformly distributed in $[10, 20)$.
# 
# Compute the minimum and maximum value, as well as the indices of these values.

# %%

# %% [markdown]
# # Mean value
#
# Create a $6 \times 8$ array, containing normally distributed numbers with mean
# $2$ and standard deviation $1$.
# %%

# %% [markdown]
# Compute mean value and standard deviation of the complete array.

# %%

# %% [markdown]
# Compute the mean value and standard deviation for each row and column.

# %%

# %% [markdown]
# Compute the mean values of the whole array as well as of each row and column
# without using the method `mean()`. 
#
# (*Hint:* The mean value is the sum of all relevant values divided by the
# number of relevant elements.)

# %%
