Все эксперименты будем производить в Python, запущенном в интерактивном режиме.
Сложение.
Складывать можно непосредственно сами числа…
>>> 3+2
5
либо переменные, но они должны предварительно быть проинициализированы.
>>> a = 3
>>> b = 2
>>> a + b
5
Результат операции сложения можно присвоить другой переменной…
>>> a = 3
>>> b = 2
>>> c = a + b
>>> print(c)
5
либо ей же самой, в таком случае можно использовать полную или сокращенную запись, полная выглядит так
>>> a = 3
>>> b = 2
>>> a = a + b
>>> print(a)
5
сокращенная так
>>> a = 3
>>> b = 2
>>> a += b
>>> print(a)
5
Все перечисленные выше варианты использования операции сложения могут быть применены для всех нижеследующих операций.
Вычитание.
>>> 4-2
2
>>> a = 5
>>> b = 7
>>> a - b
-2
Умножение.
>>> 5 * 8
40
>>> a = 4
>>> a *= 10
>>> print(a)
40
Деление.
>>> 9 / 3
3.0
>>> a = 7
>>> b = 4
>>> a / b
1.75
Получение целой части от деления.
>>> 9 // 3
3
>>> a = 7
>>> b = 4
>>> a // b
1
Получение остатка от деления.
>>> 9 % 5
4
>>> a = 7
>>> b = 4
>>> a % b
3
Возведение в степень.
>>> 5 ** 4
625
>>> a = 4
>>> b = 3
>>> a ** b
64
Работа с комплексными числами
Для создания комплексного числа можно использовать функцию complex(a, b), в которую, в качестве первого аргумента, передается действительная часть, в качестве второго – мнимая. Либо записать число в виде a + bj.
Рассмотрим несколько примеров.
Создание комплексного числа.
>>> z = 1 + 2j
>>> print(z)
(1+2j)
>>> x = complex(3, 2)
>>> print(x)
(3+2j)
Комплексные числа можно складывать, вычитать, умножать, делить и возводить в степень.
>>> x + z
(4+4j)
>>> x - z
(2+0j)
>>> x * z
(-1+8j)
>>> x / z
(1.4-0.8j)
>>> x ** z
(-1.1122722036363393-0.012635185355335208j)
>>> x ** 3
(-9+46j)
У комплексного числа можно извлечь действительную и мнимую части.
>>> x = 3 + 2j
>>> x.real
3.0
>>> x.imag
2.0
Для получения комплексносопряженного число необходимо использовать метод conjugate().
>>> x.conjugate()
(3-2j)
Битовые операции
В Python доступны битовые операции, их можно производить над целыми числами.
Побитовое И (AND).
>>> p = 9
>>> q = 3
>>> p & q
1
Побитовое ИЛИ (OR).
>>> p | q
11
Побитовое Исключающее ИЛИ (XOR).
>>> p ^ q
10
Инверсия.
>>> ~p
-10
Сдвиг вправо и влево.
>>> p << 1
18
>>> p >> 1
4
Представление чисел в других системах счисления
В своей повседневной жизни мы используем десятичную систему исчисления, но при программирования, очень часто, приходится работать с шестнадцатеричной, двоичной и восьмеричной.
Представление числа в шестнадцатеричной системе
>>> m = 124504
>>> hex(m)
'0x1e658'
Представление числа в восьмеричной системе
>>> oct(m)
'0o363130'
Представление числа в двоичной системе
>>> bin(m)
'0b11110011001011000'
Библиотека (модуль) math
В стандартную поставку Python входит библиотека math, в которой содержится большое количество часто используемых математических функций.
Для работы с данным модулем его предварительно нужно импортировать.
>>> import math
Рассмотрим наиболее часто используемые функции.
math.ceil(x)
Возвращает ближайшее целое число большее, чем x.
>>> math.ceil(3.2)
4
math.fabs(x)
Возвращает абсолютное значение числа.
>>> math.fabs(-7)
7.0
math.factorial(x)
Вычисляет факториал x.
>>> math.factorial(5)
120
math.floor(x)
Возвращает ближайшее целое число меньшее, чем x.
>>> math.floor(3.2)
3
math.exp(x)
Вычисляет e**x.
>>> math.exp(3)
20.085536923187668
math.log2(x)
Логарифм по основанию 2.
math.log10(x)
Логарифм по основанию 10.
math.log(x[, base])
По умолчанию вычисляет логарифм по основанию e, дополнительно можно указать основание логарифма.
>>> math.log2(8)
3.0
>>> math.log10(1000)
3.0
>>> math.log(5)
1.6094379124341003
>>> math.log(4, 8)
0.6666666666666667
math.pow(x, y)
Вычисляет значение x в степени y.
>>> math.pow(3, 4)
81.0
math.sqrt(x)
Корень квадратный от x.
>>> math.sqrt(25)
5.0
Тригонометрические функции, их мы оставим без примера.
Значит так: мы создаем массив избыточной длины, куда потом будем записывать рандомные числа. Так же мы создаем массив-счетчик b (у него индексами являются сами числа, а элементами - количество этого числа в массиве А), куда будет присваиваться, сколько раз нам встречается то или иное число (перед этим мы массив обязательно обнулим). В конце мы смотрим максимальное число из массива-счетчика. Вуаля!
Вот пример программы на паскале ABC:
var a:array [1..1000000] of integer; b:array [1..10] of longint; c:integer; i,max,n:longint; begin write('Введите число элементов массива: '); readln(n); max:=0; for i:=1 to 10 do b[i]:=0; for i:=1 to n do begin a[i]:=random(10)+1; write(a[i],' '); b[a[i]]:=b[a[i]]+1 end; for i:=1 to 10 do if b[i]>max then begin c:=i; max:=b[i] end; writeln; writeln('Чаще всего в массиве встречается число ',c) end.
Все эксперименты будем производить в Python, запущенном в интерактивном режиме.
Сложение.
Складывать можно непосредственно сами числа…
>>> 3+2
5
либо переменные, но они должны предварительно быть проинициализированы.
>>> a = 3
>>> b = 2
>>> a + b
5
Результат операции сложения можно присвоить другой переменной…
>>> a = 3
>>> b = 2
>>> c = a + b
>>> print(c)
5
либо ей же самой, в таком случае можно использовать полную или сокращенную запись, полная выглядит так
>>> a = 3
>>> b = 2
>>> a = a + b
>>> print(a)
5
сокращенная так
>>> a = 3
>>> b = 2
>>> a += b
>>> print(a)
5
Все перечисленные выше варианты использования операции сложения могут быть применены для всех нижеследующих операций.
Вычитание.
>>> 4-2
2
>>> a = 5
>>> b = 7
>>> a - b
-2
Умножение.
>>> 5 * 8
40
>>> a = 4
>>> a *= 10
>>> print(a)
40
Деление.
>>> 9 / 3
3.0
>>> a = 7
>>> b = 4
>>> a / b
1.75
Получение целой части от деления.
>>> 9 // 3
3
>>> a = 7
>>> b = 4
>>> a // b
1
Получение остатка от деления.
>>> 9 % 5
4
>>> a = 7
>>> b = 4
>>> a % b
3
Возведение в степень.
>>> 5 ** 4
625
>>> a = 4
>>> b = 3
>>> a ** b
64
Работа с комплексными числами
Для создания комплексного числа можно использовать функцию complex(a, b), в которую, в качестве первого аргумента, передается действительная часть, в качестве второго – мнимая. Либо записать число в виде a + bj.
Рассмотрим несколько примеров.
Создание комплексного числа.
>>> z = 1 + 2j
>>> print(z)
(1+2j)
>>> x = complex(3, 2)
>>> print(x)
(3+2j)
Комплексные числа можно складывать, вычитать, умножать, делить и возводить в степень.
>>> x + z
(4+4j)
>>> x - z
(2+0j)
>>> x * z
(-1+8j)
>>> x / z
(1.4-0.8j)
>>> x ** z
(-1.1122722036363393-0.012635185355335208j)
>>> x ** 3
(-9+46j)
У комплексного числа можно извлечь действительную и мнимую части.
>>> x = 3 + 2j
>>> x.real
3.0
>>> x.imag
2.0
Для получения комплексносопряженного число необходимо использовать метод conjugate().
>>> x.conjugate()
(3-2j)
Битовые операции
В Python доступны битовые операции, их можно производить над целыми числами.
Побитовое И (AND).
>>> p = 9
>>> q = 3
>>> p & q
1
Побитовое ИЛИ (OR).
>>> p | q
11
Побитовое Исключающее ИЛИ (XOR).
>>> p ^ q
10
Инверсия.
>>> ~p
-10
Сдвиг вправо и влево.
>>> p << 1
18
>>> p >> 1
4
Представление чисел в других системах счисления
В своей повседневной жизни мы используем десятичную систему исчисления, но при программирования, очень часто, приходится работать с шестнадцатеричной, двоичной и восьмеричной.
Представление числа в шестнадцатеричной системе
>>> m = 124504
>>> hex(m)
'0x1e658'
Представление числа в восьмеричной системе
>>> oct(m)
'0o363130'
Представление числа в двоичной системе
>>> bin(m)
'0b11110011001011000'
Библиотека (модуль) math
В стандартную поставку Python входит библиотека math, в которой содержится большое количество часто используемых математических функций.
Для работы с данным модулем его предварительно нужно импортировать.
>>> import math
Рассмотрим наиболее часто используемые функции.
math.ceil(x)
Возвращает ближайшее целое число большее, чем x.
>>> math.ceil(3.2)
4
math.fabs(x)
Возвращает абсолютное значение числа.
>>> math.fabs(-7)
7.0
math.factorial(x)
Вычисляет факториал x.
>>> math.factorial(5)
120
math.floor(x)
Возвращает ближайшее целое число меньшее, чем x.
>>> math.floor(3.2)
3
math.exp(x)
Вычисляет e**x.
>>> math.exp(3)
20.085536923187668
math.log2(x)
Логарифм по основанию 2.
math.log10(x)
Логарифм по основанию 10.
math.log(x[, base])
По умолчанию вычисляет логарифм по основанию e, дополнительно можно указать основание логарифма.
>>> math.log2(8)
3.0
>>> math.log10(1000)
3.0
>>> math.log(5)
1.6094379124341003
>>> math.log(4, 8)
0.6666666666666667
math.pow(x, y)
Вычисляет значение x в степени y.
>>> math.pow(3, 4)
81.0
math.sqrt(x)
Корень квадратный от x.
>>> math.sqrt(25)
5.0
Тригонометрические функции, их мы оставим без примера.
math.cos(x)
math.sin(x)
math.tan(x)
math.acos(x)
math.asin(x)
math.atan(x)
И напоследок пару констант.
math.pi
Число пи.
math.e
Число е.
Объяснение:
Вот пример программы на паскале ABC:
var a:array [1..1000000] of integer;
b:array [1..10] of longint;
c:integer;
i,max,n:longint;
begin
write('Введите число элементов массива: ');
readln(n);
max:=0;
for i:=1 to 10 do
b[i]:=0;
for i:=1 to n do begin
a[i]:=random(10)+1;
write(a[i],' ');
b[a[i]]:=b[a[i]]+1
end;
for i:=1 to 10 do if b[i]>max then
begin
c:=i;
max:=b[i]
end;
writeln;
writeln('Чаще всего в массиве встречается число ',c)
end.