В этом уроке мы с вами постараемся изучить язык программирования Go или же Golang. Мы изучим все основные моменты этого языка и сделаем это в одном видео уроке и всего за 30 минут!
// Переменные
var age int = 12
var num = 2.3456
var str = "Hello World"
fmt.Println (age, num, str)
// Математические операции
var a = 10
var b = 5
var res int
res = a % b
fmt.Println ("Result is", res)
// Строки
var web string = "itProger"
fmt.Println(web + " is cool
website")
// Printf
var isDone bool = true
fmt.Printf("%t
", isDone)
// Условные операторы
var age = 20
if age < 5 {
fmt.Println("Вам пора в детский сад")
} else if age == 5 {
fmt.Println("Вам пора идти в прескул")
} else if (age > 5) && (age <= 18) {
var grade = age - 5
fmt.Println("Пора идти в", grade, "класс")
} else {
fmt.Println("Вам пора в университет")
}
// Switch case
var age = 10
switch age {
case 5: fmt.Println("Вам 5 лет")
case 15: fmt.Println("Вам 15 лет")
case 10: fmt.Println("Вам 10 лет")
default: fmt.Println("Вам неизвестно сколько лет")
}
// Цикл For
var i = 10
for i > 0 {
fmt.Println(i)
i--
}
for i := 0; i <= 5; i++ {
fmt.Println(i)
}
// Массивы
var arr[3] int
arr[0] = 45
arr[1] = 97
arr[2] = 76
fmt.Println(arr[1])
nums := [3]float64 {4.23, 5.23, 98.1}
for i, value := range nums {
fmt.Println(value, i)
}
// Maps
webSites := make(map[string]float64)
webSites["itProger"] = 0.8
webSites["yandex"] = 0.99
fmt.Println(webSites["itProger"])
// Замыкания
var num = 3
multiple := func() int {
num *= 2
return num
}
fmt.Println(multiple())
Функции и указатели
package main
import "fmt"
func main () {
var a = 3
var b = 2
a, b = summ (a, b)
fmt.Println(a, b)
var x = 0
pointer (&x)
fmt.Println(x)
}
func summ (num_1 int, num_2 int) (int, int) {
var res int
res = num_1 + num_2
return res, num_1 * num_2
}
func pointer (x *int) {
*x = 2
}
Структуры
package main
import "fmt"
func main () {
bob := Cats{"Bob", 7, 0.87}
fmt.Println("Bob function is", bob.test())
}
type Cats struct {
name string
age int
happiness float64
}
func (cat *Cats) test() float64 {
return float64(cat.age) * cat.happiness
}
Задание к уроку
Работа с функциями
Создайте функцию и передайте в нее массив значений. Верните только первый и последний элемент этого массива.
Посмотреть ответ
Решение задания:
package main
import "fmt"
func main() {
var nums = []int{3, 6, 2, 8, 0}
a, b := firstAndLast(nums)
fmt.Println("Первый и последний элемент:", a, "и", b)
}
func firstAndLast(numbers []int) (int, int) {
var first = numbers[0]
var last = numbers[1]
return first, last
}
Наибольший элемент
Найдите наибольший элемент в массиве чисел
Посмотреть ответ
Решени:
var nums = []int{3, 6, 2, 8, 0}
var max int = 0
for i := 0; i < len(nums); i++ {
if nums[i] > max {
max = nums[i]
}
}
fmt.Println("Максимальный элемент:", max)
Мы используем файлы cookie, чтобы улучшить работу и повысить эффективность сайта. Продолжая пользование данным сайтом, вы соглашаетесь с использованием файлов cookie.