-
Notifications
You must be signed in to change notification settings - Fork 0
/
juliatut1.txt
145 lines (117 loc) · 3.16 KB
/
juliatut1.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
julia tutorial by Mike Sosa
*Thanks to youtube user codebasics whose videos I derived these notes from
For another large amount of tutorials look at
https://www.youtube.com/playlist?list=PLsu0TcgLDUiIznEhN165XmykqyLgzwY0Y
Part 1: Basic commands and syntax
use "#" to begin a comment
addition is +
subraction is -
division is /
multiplication is *
power is x^y (ie x to the y power)
Has type inference which means you can define variables without their types
ie. x = 5 (x is an int)
can get the typeof x with the command typeof(x)
bits(x)
- returns the bit represnetation of a number
x & y
bitwise and
x | y
bitwise or
x $ 4
bitwise xor
x >> y
x << y
bitwise shift
typemax(int64)
typemin(int64)
returns the min number that can be returned
can write expressions
2x^2 - 3x + 1
can do imaginary numbers
x = 3 + 4im
can get the real part with
real(x)
and imag part with
imag(x)
angle of imaginary numbers in complex plane
angle(x)
absolute value of complex number
abs(x)
go to docs.julialang.org for all functions
can also do
2(3+4im)
(3+4im) + (4+ 5im)
(1+2im)*(3+4im)
(1+2im)/(3+4im)
(2+6im)^2
want to create a complex number
a = 4
b = 5
complex(a,b)
Rational numbers
written as x//y
typeof(y) = Rational{int64}
can get numerator with num(x)
can get denominator with den(x)
will auto simplify
ex. 2//3 == 4//6 returns true
even typing 4//6 in the julia console will auto simplify
convert from rational to float
float(x//y)
Strings
'A' is a char
You can also enter unicode charicters by \+'name of code'
ex "\ + sigma" -> σ
ex. "\ + u0958" -> becomes a hindi char if you have the unicode support
ex. "\ + heartsuit" -> ♡
each char has a specific ASCII number
ex. Int('A') -> 65
ex. Char(65) -> 'A'
can also do comparisons 'A' <'B' -> true and the opposite 'A'>'B' -> false
strings are stored as a sequence of chars
text="ice cream"
text[1]
NOTE STRING INDEXES IN JULIA START FROM 1 NOT 0
you can also do
text[end] which returns the last element
ex. text[end-1] = 'a'
substrings
specify beginning and end
text[1:3] returns elements 1 through 3 which is "ice"
ex. text[4:end] = " cream"
concatinating
If you want to concatinate strings
string("First", "Second") -> "FirstSecond"
if A and B are strings, A+B will NOT work unlike in python
ex. x = "hello"
y = "world"
string(string(x," "),y)
evaluates to "hello world"
*Julia supports perl style interpolation into string literals if you know what
that is
ex. a = "hey"
b = "you!"
c = "$a $b"
c evalauates to "Hey you!"
ex2. d = 5
c = "$a $d"
c evaluates to "Hey 5"
you can also do this with Arrays!
ex 3. e = [1,2,3] * so e is an array containing 1, 2, and 3
c = "$a $e"
c evaluates to "Hey [1,2,3]"
Searching within strings
search ("AB...Z", 'C') -> 3 since 'C' is the third char in the string
can also search for substrings
ex. search("love", "ve")
-> 3:4
ex2. search("love", 'k')
- > 0 since it doesn't contain k
contains
can see if contains a string,
function is contains(string x, string y)
and returns if x contains y
ex. contains("hi", 'l') WILL NOT work because 'l' is a char
contains("hi", "l") does work because "l" is a string (returns true)
ex2. contain("I love dogs", "dogs") returns true