Слайд 1Инструкция switch c++
обеспечивает многонаправленное ветвление. Она позволяет делать выбор одной
из множества альтернатив.
switch(выражение) { case константа1:
последовательность инструкций
break;
case
константа2:
последовательность инструкци
break;
case константа3:
последовательность инструкций break;
.
.
. default:
последовательность инструкций
Слайд 2Важно!
инструкции switch должен при вычислении давать целочисленное или символьное значение.
Инструкция switch отличается от инструкции if тем, что switch-выражение можно
тестировать только с использованием условия равенства (т.е. на совпадение switch-выражения с заданными
case-константами), в то время как условное if-выражение может быть любого типа.
Слайд 3Инструкции default-ветви выполняются в том случае, если ни одна из
case констант не совпадет с результатом вычисления switch-выражения.
Слайд 4Вот один из вариантов выполнения этой программы.
Справка по темам:
1. for
2. if
3. switch
Введите номер темы (1-3) : 2
Слайд 7Модификаторы типов
Можно применять int:
signed
unsigned
long
short
Можно применять к
char:
signed
unsigned
Можно приенять с double:
long
Слайд 10Использование signed для целочисленных типов является избыточным (но допустимым), поскольку
объявление целочисленных типов по умолчанию предполагает знаковое число.
Различие между знаковыми
и беззнаковыми целочисленными типами заключается в способе интерпретации старшего бита. Если используется знаковый тип, то компилятор генерирует код, предполагающий, что старший бит используется как знак числа.
Ограничение длины машинного слова (16 или 32 битные), обусловленное конкретной аппаратной реализацией того или иного компьютера не препятствие для обработки ими весьма длинных в битах представлений целых чисел, достигаемое усложнением программных алгоритмов. Естественное ограничение — конечность ёмкости памяти и разумное время на исполнение.
Слайд 11Знаковые числа важны для многих алгоритмов, но они могут вмещать
только половину значений, которые могут содержать их беззнаковые «братья». Например,
32767 выглядит следующим образом:
01111111 11111111
Если старший бит установлен в 1, то число будет интерпретироваться как —1. Тем не менее, если объявить его как unsigned int, то, если старший бит установлен, число будет содержать 65535.
Слайд 12#include using namespace std;
/* Эта программа демонстрирует различие
между signed- и unsigned-значениями целочисленного типа.
*/
int main()
{
short int i;
// короткое int-значение со знаком
short unsigned int j; // короткое int-значение без знака
j = 60000;
i = j;
cout << i << " " << j;
return 0; }
При выполнении программа выведет два числа: -5536 60000
Слайд 13при объявлении int-значений достаточно использовать слова
unsigned,short и long, не указывая
тип int
unsigned х; unsigned int у;
Слайд 14 аналог для python
Словари
Структура данных, позволяющая идентифицировать ее элементы не по
числовому индексу, а по произвольному, называется словарем или ассоциативным массивом. Соответствующая структура данных
в языке Питон называется dict.
Каждый элемент словаря состоит из двух объектов: ключа и значения.
Слайд 15Пример (кусочек реализации Калькулятора)
Слайд 16Функции (Python)
Функции — это такие участки кода, которые изолированы от
остальный программы и выполняются только тогда, когда вызываются.
Если мы ошибёмся
один раз в начальном коде, то потом эта ошибка попадёт в код во все места, куда мы скопировали вычисление факториала. Да и вообще, код занимает больше места, чем мог бы. Чтобы избежать повторного написания одной и той же логики, в языках программирования существуют функции.
Слайд 17Пример реализации функции Факториал
1)код функции должен размещаться в начале программы,
вернее, до того места, где мы захотим воспользоваться функцией factorial()
2)
Первая строчка этого примера является описанием нашей функции
3) factorial — идентификатор, то есть имя нашей функции
4) После идентификатора в круглых скобках идет список параметров, которые получает наша функция
5) Список состоит из перечисленных через запятую идентификаторов параметров. В нашем случае список состоит из одной величины n.
6)В конце строки ставится двоеточие.
7) Далее идет тело функции, оформленное в виде блока, то есть с отступом.
8) Внутри функции вычисляется значение факториала числа n и оно сохраняется в переменной res.
9) Функция завершается инструкцией return res, которая завершает работу функции и возвращает значение переменной res.
Слайд 18Функции с++
Любая С++-программа составляется из "строительных блоков", именуемых функциями. Функция
— это подпрограмма, которая содержит одну или несколько С++-инструкий и
выполняет одну или несколько задач. Хороший стиль программирования на C++ предполагает, что каждая функция выполняет только одну задачу.
Каждая функция имеет имя, которое используется для ее вызова. Своим функциям программист может давать любые имена за исключением имени
main(), зарезервированного для функции, с которой начинается выполнение программы.
Слайд 19Пример
Прототип объявляет функцию до ее первого использования.
Так же допускается
использование параметров
Слайд 20Самостоятельная работа
Написать функцию поиска максимума
2) Составить программу, которая в
зависимости от порядкового номера месяца, выводит на экран время года.
3)
Написать приложение «Калькулятор». Предусмотреть отдельный ввод математической операции между вводом двух чисел. Программа должна включать обработку исключительной ситуации деления на ноль.
4) Написать программу, определяющую знак зодиака по введенной дате (число и месяц).
Слайд 21Контейнеры
С++:
Vector
String
Array
List
Map
Pair
Python:
Списки
Кортежи
Словари
Строки