Skip to main content
LibreTexts - Ukrayinska

2.1: Цифри

  • Page ID
    67086
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)

    Рішення наукових обчислювальних проблем зрештою зводиться до маніпулювання даними, а найголовніше - це рядки та числа. Почнемо з розуміння цих типів даних і того, як зберігати в них значення.

    Ми також показуємо деякі синтаксис julia, який виглядає як інші мови (наприклад, python). Сподіваємось, у вас є деякі базові знання з обчислень, але жодне припущення про якусь конкретну мову не потрібно.

    Цифри

    Не дивно, що найважливіший тип даних у наукових обчисленнях - принаймні на самому атомному рівні - це числа. Числа в обчисленні імітують математику з деякими важливими відмінностями. Джулія, як і більшість обчислювальних мов, мають два основних типи чисел, цілі числа і з плаваючою комою. Цілі числа Юлії і багато, як математичні цілі числа в тому, що вони зберігають числа, як\(0, 10, -400\). Числа з плаваючою комою, як правило, є наближеннями до дійсних або десяткових чисел, і докладніше буде розглянуто в розділі??.

    Джулія також має раціональний тип даних для чисел, як правило, хоча як дроби, як\(-\frac{2}{3}\) або\(\frac{22}{7}\). Нагадаємо, що зазвичай\(i\) являє собою\(\sqrt{-1}\) базове уявне число. Складні числа\(2+3i\), як, також є рідними для Джулії. Ми вивчимо як раціональні, так і комплексні числа більш глибоко в розділі??.

    Виписки присвоєння та змінні

    Все, що завгодно може бути збережено як змінна, використовуючи єдиний знак рівності, як

    x=6

    Це оператор присвоювання, який створює число 6 і зберігає його під ім'ям x.

    І тепер, коли змінна зберігається, ми можемо використовувати її в розрахунках. Наприклад

    x+3
    9

     

    Змінні в julia, як і інші мови, в першу чергу послідовності буквено-цифрових символів, а також підкреслення. Перш за все, змінна повинна починатися з алфавітного символу або після першого символу може містити цифри.

    Юлія також дозволяє багато символів Unicode в іменах змінних, однак не все. Наприклад, всі грецькі літери дозволені, тому\(\alpha=45\) є дійсним.

    Щоб отримати грецьку букву в Jupyter або REPL, введіть\ alpha, натисніть клавішу TAB, і вона буде перетворена на\(\alpha\).

    Зберігання змінних у віртуальній дошці

    Деталі зберігання змінних у комп'ютерному обладнанні не потрібні, однак мислення про зберігання як запис змінних та значень на дошці є корисною парадигмою. Уявіть собі дошку зі стовпцем імен змінних і стовпцем значень. Наприклад, якщо у нас є

    x=6
    y=-1
    z=8.5
    8.5

    тоді ви можете подумати про дошку, яка виглядає так:

    змінна значення
    х 6
    у -1
    z 8.5

     

    Якщо ми оцінюємо будь-який вираз, що містить будь-яку з цих змінних, то значення шукали підставили в вираз. Наприклад,

    2*y
    -2

    шукає значення y (що дорівнює -1) і підставляє це значення в і множить результат на 2. Як бачите результат -2.

    Якщо ми змінимо одне з значень, як

    y = y+5

    це означає, що права сторона оцінюється шляхом пошуку значення y, а результат дорівнює 4. Потім 4 поміщається в дошку, яка тепер буде виглядати так:

    змінна значення
    х 6
    у 4
    z 8.5

    Якщо ви думаєте про те, як працює шматок коду, часто вам потрібно буде дістатися до точки запису версії дошки.

    Струни

    У багатьох галузях наукових обчислень, таких як наука про дані, рядки виникають часто, і важливо зрозуміти деякі основи їх. У Julia рядок - це послідовність символів, оточена «» (подвійні лапки). Наприклад:

    str ="This is a string"

    і якщо ви введете

    typeof(str)
     

    який показує, що це рядок. Розділ 1.2 буде докладніше про типи даних в Julia. Окремі частини рядка називаються символами, які мають тип Char і за замовчуванням є символами Unicode (які, як ми побачимо, є надзвичайно корисними). Кілька інших корисних речей про рядки

    • Довжину рядка можна знайти за допомогою команди length. довжина (str) повертає 16.

    • Щоб отримати доступ до першого елементу рядка, введіть first (str), останній знайдений за допомогою last (str), а 3-й символ, наприклад, str [3]. У julia індексація рядків починається з 1

    • Щоб перетворити інші типи даних у рядок, використовуйте функцію string. Наприклад

      string(3.0)
      "3.0"

      і знову зверніть увагу, що подвійні лапки вказують на те, що це рядок.

    Рядкові операції

    Звичайною строковою операцією є конкатенація, або об'єднання двох рядків. Розглянемо

    str1 = "The tide is high "
    str2 = "and I'm having fun."

    Ми можемо об'єднати двома способами, за допомогою символу оператора * або строкової функції. Обидва

    str1 * str2
    string(str1,str2)
    "The tide is high and I'm having fun."

    повертає ту саму конкатенацію рядків. Я вважаю, що другий варіант зрозумілішим тим, що * є непарним вибором для конкатенації рядків. Багато мов, включаючи java та ecmascript (javascript), використовують + замість об'єднання рядків, що, на мою думку, інтуїтивно має більше сенсу.

    Ще одна мила операція для струн - операція каретки. Це може бути корисним, однак не дуже корисним прикладом є

    "Hip, hip, hooray! "^3
    "Hip, hip, hooray! Hip, hip, hooray! Hip, hip, hooray! "

    конкатенацію рядка тричі. Інші важливі функції, пов'язані з рядками, можна знайти в JULIA ДОКУМЕНТАЦІЯ НА РЯДКИ

    Інтерполяція рядків

    Змішування рядків та інших змінних часто потрібно, і ми можемо використовувати методи конкатенації, як зазначено вище. Однак є і кращий спосіб. Давайте використаємо значення х, яке ми зберегли вище, і вставимо його в кінці «Значення х є". Це зробить наступне

    result = "The value of x is $x"
     

    Існує насправді інший спосіб зробити конкатенацію рядків, якщо ви використовуєте цей метод. Використовуючи змінні, збережені в str1 і str2, потім

    "$str1$str2"
     

    також об'єднає рядки.

    Ми також можемо вийти за рамки просто шукаючи рядки в тому, що ми можемо виконати код, а також. Припустимо, що у нас є змінна

    n=6

    Якщо ми хочемо рядок з його квадратом, ми можемо ввести:

    "The square of $n is $(n^2)."
    "The square of 6 is 36."

    де ви повинні помітити, що код n^2 виконується, оскільки цей код знаходиться в межах $ ().

    Вправа

    Використовуйте об'єм сфери\(\frac{4}{3}\pi r^3\), щоб обчислити об'єм і зробити струну. Наприклад, збережіть r=3, а потім поверніть результат

    «Обсяг сфери радіусом 3 становить 113.0973355292»

    де 3 і том генерується з інтерполяцією рядків.

     
     

     

    Вирази

    Вираз - це комбінація змінних, елементів даних (таких як числа та рядки), операцій (наприклад + або *) та функцій (наприклад). Ми бачили ряд виразів протягом цієї глави до цих пір, як

    x=6
    x+3
    str1 * str2
    length(str)
     

    Коротше кажучи, написання речей в julia буде складатися з написання виразів (і трохи більш складних структур).

    Пріоритет оператора

    Коли ми набираємо вираз типу 11+2* (4+3) ^3, важливо розуміти порядок, в якому виконуються оператори. Для математики пнемоніка PEMDAS корисно пам'ятати, що порядок:

    • Дужки: Вираз всередині () виконується першим. Для наведеного вище прикладу 4+3 є першою виконаною операцією.

    • Експоненціальні числа: ^ робиться далі. Підніміть 7 зверху на силу 3 в результаті вийде 343.

    • Множення та ділення: У цьому прикладі 2* (343) робиться наступним

    • Додавання та віднімання: Нарешті додайте 11 до результату, і результат - 697.

    У будь-якій обчислювальній мові, є й інші оператори, і є порядок, що пріоритет, тому ми побачимо, що є й інші речі, про які слід подумати. Наприклад, оператор присвоєння, має найнижчий пріоритет. Тобто при присвоєнні чогось змінної всі розрахунки робляться з правого боку від = перед присвоєнням.

    Подробиці про все це можна дізнатися на JULIA ДОКУМЕНТАЦІЯ НА ПРІОРИТЕТ ОПЕРАТОРА

    Коментарі

    Коментар в комп'ютерному коді - це послідовності символів, які ігноруються. Мета коментаря - попередити людину про те, що відбувається. Можливо, вам сказали писати коментарі, щоб хтось інший, хто читає ваш код, розумів, що ви робите. Однак я виявив, що людина в основному любить читати ваш код, це ви пізніше. Ви повинні додати коментарі для себе.

    У Джулії коментар - це що-небудь праворуч від знака фунта або хеш-тега. Наприклад:

    ## This calculates the area of a circle
    r=3
    pi*r^2 # this is the actual formula for the area

    Обидва рядки 1 і 3 мають коментарі. У рядку 1 весь рядок ігнорується, оскільки рядок починається з #. На рядку 3 все після 2 (харчування) ігнорується. Крім того, зверніть увагу, що є два хеш-теги на рядку 1 і 1 на рядку 3. Це просто інший стиль. Оскільки все після синглу є коментарем, все після першого ігнорується.