Рассказы о математике с примерами на языках Python и C
Шрифт:
Это же можно сделать с помощью индексов (нумерация элементов массива начинается с 0):
Си: Динамические массивы поддерживаются только в C++, статические массивы создаются так:
При
Можно пользоваться динамическим распределением памяти, хотя это немного сложнее:
Важно заметить, что неинициализированные значения массива, например
Однако при его запуске выведется значение 4196608, или 0, или 32, результат непредсказуем. В большой программе такие ошибки может быть сложно найти, тем более что проявляться они могут не всегда.
Арифметические операции
Сложение, умножение,деление:
Возведение в степень:
Переменную также можно увеличить или уменьшить:
Остаток от деления:
Подсчитаем сумму элементов массива:
Для более сложных операций необходимо подключить модуль
Условия задаются отступами, аналогично циклам:
Python может делать вычисления с большими числами, что достаточно удобно:
Можно вывести даже факториал числа 1024, что не сделает ни один калькулятор:
В Си вычисление суммы элементов массива выглядит так:
Пожалуй, этого не хватит чтобы устроиться на работу программистом, но вполне достаточно для понимания большинства примеров в книге. Теперь вернемся к математике.
2. Математические фокусы
Для «разминки» рассмотрим несколько фокусов, имеющих отношение к числам. Никаких особых сложностей в них нет, но их знание поможет развеселить или удивить знакомых знанием математики.
Умножение в уме числа на 11
Рассмотрим простой пример: 26 * 11 = 286
Сделать это в уме просто, если взять сумму чисел и поместить в середину: 26 * 11 = 2 [2+6] 6
Аналогично 43 * 11 = 473, 71 * 11 = 781 и так далее.
Чуть длиннее расчет, если сумма чисел больше либо равна 10. Но и тогда все просто: в середину кладется младший разряд, а 1 уходит в старший разряд:
47 * 11 = [4] [4 + 7 = 11] [7] = [4 + 1] [1] [7] = 517
94 * 11 = [9] [9 + 4 = 13] [4] = [10] [3] [4] = 1034
Возведение в квадрат числа, оканчивающегося на 5
Подсчитать это тоже просто. Если число рассмотреть как пару NM, то первая часть результата — это число N, умноженное на (N + 1), вторая часть числа — всегда 25. 352 = [3 * 4] [25] = 12 25
Аналогично:
252 = [2 * 3] 25 = 625 852= [8*9] 25 = 7225 и так далее.
Отгадывание результата
Попросим человека загадать любое число. Например 73. Затем чтобы еще больше запутать отгадывающего, попросим сделать следующие действия:
– удвоим число (146)
– прибавляем 12 (158)
– разделим на 2 (79)
– вычтем из результата исходное число (79 - 73 = 6)
В конце мы отгадываем, что результат — 6. Суть в том, что число 6 появляется независимо от того, какое число загадал человек.
Математически, это доказывается очень просто: