45.40K
AI
Категория: ПрограммированиеПрограммирование

Go_Piscine_Slides (1)

1.

GO PISCINE
Подготовка к экзамену
60 минут: от синтаксиса до рекурсии, указателей и мини-экзамена.

2.

Алгоритм решения
Прочитай условие → разбей на шаги → напиши → проверь крайние случаи.

3.

Строки и руны
range проходит по рунам строки. _ означает, что индекс не используется.
package piscine
import "github.com/01-edu/z01"
func PrintStr(s string) {
for _, r := range s {
z01.PrintRune(r)
}
z01.PrintRune('\n')
}

4.

Переменные
int — целое; bool — true/false; string — текст; rune — символ.
:= объявляет; = присваивает новое значение.

5.

Условия
= — присваивание, == — сравнение.
n%2 == 0 означает, что число чётное.

6.

Цикл for
Проверь старт, условие продолжения и изменение счётчика.
package main
import "github.com/01-edu/z01"
func main() {
for n := '9'; n >= '0'; n-- {
z01.PrintRune(n)
}
z01.PrintRune('\n')
}

7.

Вложенные циклы
Внутренний цикл проходит диапазон для каждого значения внешнего. Добавляй уровни
постепенно.

8.

Функция и return
Функция принимает параметры и может вернуть результат.
package piscine
func StrLen(s string) int {
count := 0
for range s {
count++
}
return count
}

9.

Рекурсия — матрёшки
Базовый случай останавливает вызовы. Каждый вызов должен уменьшать задачу.
package piscine
func Factorial(n int) int {
if n < 0 {
return 0
}
if n <= 1 {
return 1
}
return n * Factorial(n-1)
}

10.

Указатель — адрес дома
&x получает адрес. *p обращается к значению по адресу.
package main
import "fmt"
func main() {
x := 7
p := &x
*p = 9
fmt.Println(x) // 9
}

11.

Срезы и сортировка
Проверь пустой срез, один элемент, отсортированный и обратный порядок.

12.

Аргументы и Atoi
Проверь len(os.Args), прежде чем читать os.Args[1]. Обрабатывай ошибки.

13.

Мини-экзамен
Цифры 9…0 • StrLen • = и == • базовый случай рекурсии • &x и *p • безопасное чтение
os.Args

14.

Let’s GO!
Понять → написать по памяти → проверить.
Idea by Daniella Flores for Pavlodar Tomorrow School
English     Русский Правила