-
Esther Voigt authoredEsther Voigt authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
FirstSteps.jl 2.98 KiB
"""
Setting a working directory with abc
"""
cd("/home/Wherever/You/Want") # Linux
cd("C:\\Users\\Nickname\\Just\\put\\it\\there") # Windows
"""
Show the working directory
"""
pwd()
"""
Save your files with a .jl to make atom recognize that its Julia
and make the colour formatting appear
"""
"""
Documentation
Any string appearing at the top-level right before an object
is interpreted as documentation (Markdown)
"""
# This is a comment :)
"""
type ? in the REPL to switch to the help menu
type ; in the REPL to switch to the shell
type ] in the REPL to switch to the package management
]st # status of the packages
]update
]add "Plots"
or you can do it like this
"""
import Pkg
Pkg.add("StatsBase") # add the package
using StatsBase # load the package
Pkg.add("Distributions") # add the package
using Distributions # load the package
"""
The define operator is =
To use the unicode math symbols (e.g. Greek) type \alpha and press Tab
You cannot redefine a built-in constant or function
"""
pi
a,b,c = 1,2,3
x = 3
z = x + a
z1 = 2x^2 - 3x + 1
z2 = 2^2x
x += 1
d = rand() # choose a random number between 0 and 1
# randn(10) 10 random numbers- normal distributed
### "===" compare the number and the type of a variable
"""
Define an array
"""
a = [x,y,z] #Array
b = rand(1:10,6)
b = rand(2,2) #2×2 Array{Float64,2}
a = Array{Float64,1} # Array{T,N} N-dimensional dense array with elements of type T.
# N can be Any, Float64, Int64, String
# T can be 1 - Vector, 2 - Matrix, 3 - Array
c = Vector{Float64}(undef,6) # create a vector with random numbers (undefined, row, column)
c = fill!(c,3)
d = fill(rand(1:10), (5,5))
g = [1:10;] #create a vector
g[9] = -9 # change number at pos. 9
g[3:5] = fill!(g[3:5], -8)
print(g)
length(g)
size(b)
println("text"^2)
"""
Arithmetic Operators
(+) (-) (/) (*) (^) (%) (\)
For every binary operation there is a "dot"-operation that
automatically performs element-by-element on arrays
"""
x = 3
-x #mathematical inverse
+x
y % x # remainder
x += 3 # is like x = x + 3
+(1,2,3)
*(1,2,3,4)
a = [1,2,3]
b = a .+ 1
c = a .^2
"""
build-in mathematical functions
"""
Random.seed!(123) # Setting the seed; using Random, Distributions
d = Normal() #Normal distribution std=1
x = rand(d,2)
g = [1,2,3,4,5,6,7,8,9]
sum(g)
mean(g) # in the Pkg StatsBase
maximum(g)
extrema(g)
"""
- Numeric comparison
- (==) (!=) (<=) ...
"""
x = 3
x < 5 ? "yes" : "no"
x = 7
x < 5 ? "yes" : "no"
# Boolean operators
x > 5 && "Cool!"
x < 5 && "Cool!"
x > 5 || "Cool!"
x < 5 || "Cool!"
# Loop and if-else statments
for i in 1:length(g)
println("Hallo World ($i)"^2)
end
name = "Brinkley"
if name == "Jeeves"
println("Very Good Jeeves")
elseif name == "Brinkley"
println("Thank you, Brinkley")
println("and shut the door behind you")
else
println("Fine, just ignore me")
end
"""
functions in julia
"""
# one-line function
myfunc(value) = 20*value
myfunc(20)
# more complicated functions
function First(x, y)
x + y
end
First(3,4)
function Sec(x, y)
return x*y
x + y
end
Sec(3,4)