Содержание

Слайд 2

Татьяна Антоновна Синёва [email protected] @tsineva Деканат: каб. 2346 Режим работы: 9:00 – 16:00 (понедельник –

Татьяна Антоновна Синёва t.sineva@g.nsu.ru @tsineva Деканат: каб. 2346 Режим работы: 9:00 –
пятница, обед: 13:00 – 14:00) Выдача справок: Людмила Валентиновна Каменских [email protected]

Слайд 3

КАК ВЫЖИТЬ В ЭТОМ СЕМЕСТРЕ?!

I семестр:
1-я контрольная неделя - с 10 по 15 октября 2022

КАК ВЫЖИТЬ В ЭТОМ СЕМЕСТРЕ?! I семестр: 1-я контрольная неделя - с
г.
2-я контрольная неделя - с 14 по 19 ноября 2022 г.
II семестр:
1-я контрольная неделя - с 13 по 18 марта 2023 г.
2-я контрольная неделя - с 17 по 22 апреля 2023 г.

Слайд 4

КАК ВЫЖИТЬ В ЭТОМ СЕМЕСТРЕ?!

I семестр:
Контрольная работа
2 месячных набора задач
II семестр:
Проектная

КАК ВЫЖИТЬ В ЭТОМ СЕМЕСТРЕ?! I семестр: Контрольная работа 2 месячных набора
деятельность с защитой проектов
в период с 27 по 30 марта (возможность получить 5 за семестр)

Слайд 5

А ОТДЫХАТЬ КОГДА?!

УЧИМСЯ!!!

А ОТДЫХАТЬ КОГДА?! УЧИМСЯ!!!

Слайд 6

А ОТДЫХАТЬ КОГДА?!

https://www.nsu.ru/n/sveden/education/

НГУ
Сведения об образовательной организации
Образование
Высший колледж информатики
Бакалавриат
Календарный учебный график 2022

Зачётная

А ОТДЫХАТЬ КОГДА?! https://www.nsu.ru/n/sveden/education/ НГУ Сведения об образовательной организации Образование Высший колледж
неделя: 22.12.2022 – 31.12.2022
Сессия: 09.01.2023 – 25.01.2023
Пересдачи: 26.01.2023 – 10.02.2023
Каникулы: 26.01.2023 – 01.02.2023

Слайд 7

Haskell

Язык Haskell — чистый функциональный язык программирования с «ленивой» семантикой исполнения и

Haskell Язык Haskell — чистый функциональный язык программирования с «ленивой» семантикой исполнения
полиморфной статической типизацией. Язык назван в честь американского логика и математика Хаскелла Брукса Карри.
Справку по функциям стандартной библиотеки (и не только) можно получить с помощью онлайн системы Hoogle.

Слайд 8

Что значит функциональный?

Все функции в Haskell следуют трём правилам, которые заставляют
их вести

Что значит функциональный? Все функции в Haskell следуют трём правилам, которые заставляют
себя как функции в математике:
все функции должны принимать аргумент;
все функции должны возвращать значение;
функция возвращает одно и то же значение для одного аргумента.

Слайд 9

GHCi

> ghci
Prelude>

Prelude — стандартная библиотека полезных функций

GHCi > ghci Prelude> Prelude — стандартная библиотека полезных функций

Слайд 10

Команды

:q выйти из GHCi
:? список доступных команд и их краткое описание :l

Команды :q выйти из GHCi :? список доступных команд и их краткое
<имя программы> загрузка программы с
указанным именем :r перегрузка текущего модуля :t <имя функции> печать типа выражения
:i <имя функции> печать сигнатуры функции

Слайд 11

Отрицательные числа

Вычислите:
2 * (-5)
2 * -5
2*-5

Отрицательные числа Вычислите: 2 * (-5) 2 * -5 2*-5

Слайд 12

Функция logBase

Функции logBase, требуется передать основание логарифма и аргумент, на котором логарифм

Функция logBase Функции logBase, требуется передать основание логарифма и аргумент, на котором
будет вычислен.
Какие из следующих вызовов обеспечат вычисление логарифма
по основанию 2 от 8?

logBase (2, 8)
(logBase, 2, 8)
logBase 2 8
(logBase 2) 8
logBase (2 8)

Слайд 13

Возведение в степень

Вычислите:
100^10
2^0
2**1
5^(-1)
5**(-1)

Возведение в степень Вычислите: 100^10 2^0 2**1 5^(-1) 5**(-1)

Слайд 14

Сравнение

2 == 5
2 == True
‘a’ /= ‘A’

Сравнение 2 == 5 2 == True ‘a’ /= ‘A’

Слайд 15

Функции

div
mod
min
max
sqrt
succ
quot
log
logBase

Функции div mod min max sqrt succ quot log logBase

Слайд 16

Префиксная форма записи

(+) 2 3
(^) 6 8 (**) 4 (-1)

Префиксная форма записи (+) 2 3 (^) 6 8 (**) 4 (-1)

Слайд 17

Инфиксная форма записи

123 `mod` 10
(-123) `div` 10 123 `quot` 10

Инфиксная форма записи 123 `mod` 10 (-123) `div` 10 123 `quot` 10

Слайд 18

Остаток от деления. Всё ли так?

Вычислите:
mod 23 10
23 `mod` 10
23

Остаток от деления. Всё ли так? Вычислите: mod 23 10 23 `mod`
`rem` 10
(-23) `rem` 10
(-23) `mod` 10
-23 `mod` 10

Слайд 19

Пользовательские функции

Запустите Ваш текстовый редактор и создайте файл Hello.hs, содержащий следующую строку кода:
main

Пользовательские функции Запустите Ваш текстовый редактор и создайте файл Hello.hs, содержащий следующую
= putStrLn "Hello, world!"
Вызовите интерпретатор GHCi c параметром — именем файла исходного кода:
>ghci Hello.hs
(Файл должен располагаться в том же каталоге, откуда происходит вызов интерпретатора.) Проверьте, что загрузка модуля прошла успешно, вызвав в интерпретаторе определенную вами функцию main:
GHCi> main
Hello, world!

Слайд 20

Пользовательские функции

Пользовательские функции

Слайд 21

Объявление функции

exponentiation :: Int -> Int
exponentiation b = b * b

Объявление функции exponentiation :: Int -> Int exponentiation b = b * b

Слайд 22

Упражнение

Определите функцию, вычисляющую следующее выражение:
y = log2log3log4x

Упражнение Определите функцию, вычисляющую следующее выражение: y = log2log3log4x

Слайд 23

Упражнение

Реализуйте функцию трех аргументов lenVec3, которая вычисляет длину трехмерного вектора. Аргументы функции

Упражнение Реализуйте функцию трех аргументов lenVec3, которая вычисляет длину трехмерного вектора. Аргументы
задают декартовы координаты конца вектора, его начало подразумевается находящимся в начале координат.
Для извлечения квадратного корня воспользуйтесь функцией sqrt, определенной в стандартной библиотеке.
GHCi> lenVec3 2 3 6
7.0
Имя файла: Haskell_1.pptx
Количество просмотров: 27
Количество скачиваний: 0