Рассказы о математике с примерами на языках Python и C (fb2)

- Рассказы о математике с примерами на языках Python и C 2.7 Мб, 64с. (скачать fb2) - Д. Елисеев

Настройки текста:




Елисеев Д.


Рассказы о математике с примерами на языках Python и C



Версия текста 1.3. (с) 2017


Введение

Как сказал еще Галилей, “Книга природы написана на языке математики”, и с этим сложно не согласиться. Математика это универсальный язык науки, это базовые принципы, на которых построена вся Вселенная. 2+2=4 независимо от того, верим мы в это или нет, знаем мы это или нет, существуем мы вообще или нет, и это будет верно не только для нас, но и для жителя Альфы Центавра.


Из этого следует важное правило: математические законы нельзя придумать, их можно только открыть. Треугольник подчинялся теореме Пифагора еще до того, как Пифагор открыл и сформулировал известную теорему. Число Пи было вычислено в древнем Китае, но его значение было таким всегда - еще до того как появился не только Китай, но и наша планета Земля.


Именно поэтому я надеюсь, что кто-то из читателей с помощью этой книги откроет для себя в математике что-то новое. Увы, в представлении большинства, математика - это достаточно скучная наука, вероятно так ее преподают в школе. Если кто-то с помощью этой книги найдет для себя что-то новое, можно считать что время было потрачено не зря.


Эта книга не задачник, а скорее сборник рассказов о тех или иных математических вопросах. Т.к. математические примеры без цифр бессмысленны, “практическая” часть дается на языках программирования Python и Си.


Номер версии в заголовке указан неслучайно. Эта книга не закончена, и по мере появления каких-то новых интересных вопросов она будет дополняться. Желающие также могут присылать свои истории или задачи по адресу dmitryelj@gmail.com, наиболее интересные из них будут включены в текст. Обо найденных неточностях также просьба писать на этот адрес.


Книга распространяется бесплатно в электронном виде, в различных форматах (PDF, FB2) ее можно скачать по ссылке https://cloud.mail.ru/public/4SGE/oE2EGEWnp. Там же доступен и архив с примерами программ.


Приятного чтения.


Елисеев Дмитрий


История версий текста:

04.2017 - 1.0

09.2017 - 1.1, 1.2 - добавлены главы 19 и 20 про нейронные сети

11.2017 - 1.3, добавлена глава 21 про фракталы

1. Основы языков Python и Си

Математика немыслима без расчетов и примеров вычислений. Примеры в данной книге иллюстрируются фрагментами кода на языке Python. Этот язык удобен тем, что он очень прост и подходит для начинающих, поэтому кратко рассмотрим как им пользоваться.


Для использования языка Python нужно установить интерпретатор языка с сайта https://www.python.org/downloads/ или воспользоваться онлайн-версией, например на странице https://repl.it/languages/python3. Все примеры из книги тестировались на Python версии 2.7.


Для запуска Python-программы необходимо:

Сохранить файл в Блокноте с любым именем и расширением .py, например test1.py (удобно также создать папку в корне диска C, например C:\PythonApps).

Открыть консоль (нажать Win+R и набрать cmd), в консоли набрать команду (без кавычек) “python путь_к_файлу.py”, например “python C:\PythonApps\test1.py”.

Как более удобный вариант, можно скачать бесплатную среду разработки PyСharm community edition, и редактировать и запускать файлы в ней. Скачать PyСharm можно со страницы https://www.jetbrains.com/pycharm/download/.


Кстати, чтобы запустить короткую программу на Python, ее необязательно сохранять в файл, код можно ввести непосредственно в интерпретатор. Для этого достаточно запустить (Win+R) программу python.exe и просто ввести подряд соответствующие строки:


Для запуска программы на языке Си, ее сначала надо сохранить файле с расширением .c, и выполнить команду “gcc имя_файла.c”. Будет создан exe-файл, который можно запустить. Бесплатный компилятор С/C++ можно установить с помощью утилиты mingw-get, скачать которую можно на странице https://sourceforge.net/projects/mingw/files/. Также можно воспользоваться и любой онлайн-версией c++ компилятора, например этой.


Минимальная программа на Си выглядит так:

#include <stdio.h>


int main()

{

printf("Hello world\n");

return 0;

}


Рассмотрим простые примеры использования.


Объявление и вывод переменных

Python: достаточно ввести имя и значение.

x = 3

y = 10

print("x=", x)

print(x+y)


В отличие от языка С++, тип переменной будет определен автоматически, указывать его не нужно. Его можно при необходимости узнать, введя print (type(x)).


Cи: необходимо явно указать тип и значение переменной.

int x = 3;

int y = 10;

printf("x=%d\n", x);

printf("%d\n", x+y);


Циклы

В отличие от того же С++ или Java, циклы в Python задаются отступами, что после других языков программирования может быть непривычным. Часть кода, находящаяся внутри цикла, будет выполнена заданное количество раз.


Python

Вывод чисел от 1 до 9:

for p in range(1,10):

print (p)


Для сравнения, вот такой код без отступов работать не будет, и это важно помнить, например при копировании кода из этой книги:

for p in range(1,10):

print (p)

Вывод чисел от 1 до 9 с шагом 2:

for p in range(1,10,2):

print (p)


Си

Вывод чисел от 1 до 9:

      for(int i=1; i<10; i++) {

       printf("%d\n", i);

      }


Вывод чисел от 1 до 9 с шагом 2:

      for(int i=1; i<10; i+=2) {

       printf("%d\n",