SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
ОСНОВЫ ПРОГРАММНОГО
  КОНСТРУИРОВАНИЯ
                  Лекция № 4
              12 марта 2013 г.
ДЕЙСТВИТЕЛЬНЫЕ ЧИСЛА
  Возможны ли точные вычисления с ними?
СПОСОБЫ
             ПРЕДСТАВЛЕНИЯ

• Рациональныедроби с числителем и знаменателем
 неограниченного размера.

 • 22/7   = 3,1428571428571428

 • 884279719003555 /
   281474976710656 = 3,1415926535897931
ПРЕДСТАВЛЕНИЕ С
ФИКСИРОВАННОЙ ТОЧКОЙ
0 0 0 0 0 0 0 1                 0 1 0 1 0 0 0 1

7   6   5   4   3   2   1   0   -1   -2   -3   -4   -5   -6   -7   -8




• 1.010100012= 20+2-2+2-4+2-8 = 1+1/4+1/16+1/256 =
 1.3164062510=337/256.
ФИКСИРОВАННАЯ ТОЧКА.
        ОСОБЕННОСТИ
•   Больше точность – меньше диапазон.
    Больше диапазон – меньше точность.

•   Округление при представлении чисел (отбрасывание дробной части).

•   Умножение и деление могут привести к потере точности.

•   Вычисления так же быстры, как вычисления с целыми числами.

    •   Sony Playstation, Nintendo Gameboy.

    •   Кодирование звука: GSM Full rate, Ogg Vorbis.
FIXED-POINT BCD


• $1   = 30,7576 руб. (курс ЦБ РФ с 12.03.2013).

• 30,7576  → 307576 → 30757616 → 76 75 30 00 (в памяти,
 little endian).

• Метод часто используется для хранения денежных
 величин (COBOL).
ПРЕДСТАВЛЕНИЕ С
       ПЛАВАЮЩЕЙ ТОЧКОЙ
•x   = m⋅be.                  • 3,1415
                                     = 0,31415⋅101.
                               400 = 4⋅102 = 0,4⋅103.
 •m    – мантисса (значащая
     часть, significand).      • Нормализация: |m|<1.

 •b    – основание степени
     (обычно 2 или 10).

 •e    – экспонента
     (порядок).
СТАНДАРТ IEEE 754
                       binary32
± (S) Экспонента (E)               Мантисса (M)
 1        8 бит                      23 бита



                       binary64
S     E                              M
1   11 бит                        52 бита
ВИДЫ ХРАНИМЫХ ЧИСЕЛ
         Тип              Экспонента    Мантисса

          ±0                  0            0

Денормализованные числа       0        0.mmmmmmm

Нормализованные числа 1…254 (1…2046) 1.mmmmmmm

         ±∞               255 (2047)       0

    Не-числа (NaN)        255 (2047)     любая
НОРМАЛИЗОВАННЫЕ
              ЧИСЛА
• Для   binary32:

 •F   = (−1)S⋅2E−127⋅1.mm…m.

   •1    ≤ M < 2.

 • |F|min = 21−127⋅1.00…0   = 2−126 ≈1,18⋅10−38.

 • |F|max = 2254−127⋅1.11…1   = 2127⋅(2−2−23) ≈3,4⋅1038.
ДЕНОРМАЛИЗОВАННЫЕ
          ЧИСЛА
• Для   binary32:

 •D     = (−1)S⋅2−126⋅0.mm…m.

 • |D|min = 2−126⋅0.00…01        = 2−126⋅2−23 = 2−149 ≈1,4⋅10−45.

 • |D|max = 2−126⋅0.11…11        = 2−126⋅(1−2−23) ≈1,18⋅10−38.

 • |D|max   + |D|min = |F|min.
ТОЧНОСТЬ


• Десятичных      знаков:

 • log10(223+1)   ≈ 7,225 (binary32).

 • log10(252+1)   ≈ 15,955 (binary64).
ПАРАМЕТРЫ BINARY64


• |D|min ≈   5⋅10−324.

• |D|max ≈    2,23⋅10−308.

• |F|min ≈   2,23⋅10−308.

• |F|max ≈   1,80⋅10308.
ПРОЧИЕ ЧИСЛА

•   ±∞                      • NaN   (Not a Number):

    •   Деление на 0.        • Корень   из −1.
    •   arctg(π/2).          •   ∞/∞, 0/0, 0⋅∞.

                             •   ∞-∞

                             •   func(NaN)

                             •   NaN ≠ NaN!
ПРИМЕР КОДИРОВАНИЯ

•   −118.625:

    •   Знак отрицательный: S = 1.

    •   Двоичная запись 118.625: 1110110.101

    •   Сдвиг влево: 1.110110101 × 26.

    •   Отбрасываем старшую 1; E = 127+6 = 133.

          S     E, 8 bits                M, 23 bits
          1 10000101 11011010100000000000000
ПРОБЛЕМЫ

• Округление: tg   π ≠ 0; tg(π/2) ≠ ∞.

• Накопление   ошибок: a⊕(b⊕с) ≠ (a⊕b)⊕с.

• a⊖bпри близких значениях a и b приводит к потере
 точности.

• Сравнение   чисел.
ПРОБЛЕМА СРАВНЕНИЯ


float x = 0.1f;
float y1 = x*x;
float y2 = 0.01f;

y1 == y2; // => 0
ПРОБЛЕМА СРАВНЕНИЯ


float x = 0.1f; // 0.100000001490
float y1 = x*x;
// 0.010000000708 = 0 01111000 01000111101011100001011
float y2 = 0.01f;
// 0.009999999776 = 0 01111000 01000111101011100001010

y1 == y2; // => 0

                                                 один бит
                                                отличается
ПРОБЛЕМА СРАВНЕНИЯ

  // float.h

  /* Difference between 1.0 and
     the minimum float greater than 1.0 */
  #define FLT_EPSILON 1.1920929e-07F

  /* Difference between 1.0 and
     the minimum double greater than 1.0 */
  #define DBL_EPSILON 2.2204460492503131e-16
ПРОБЛЕМА СРАВНЕНИЯ

 #include <float.h>
 #include <math.h>

 int almostEqual(float a, float b) {
     float A = fabs(a);
     float B = fabs(b);
     float largest = (B > A) ? B : A;

     return (fabs(A - B)/largest <= FLT_EPSILON);
 }

 almostEqual(y1, y2); // => 1
ВЫЧИСЛЕНИЕ π
                       π≈    6⋅2 i
                                i⋅t   при i→∞.


                      или

 i         1-я формула             2-я формула
 0   3.4641016151377543863   3.4641016151377543863
10   3.1415929278733740748   3.1415929273850979885
16   3.1415926717412858693   3.1415926536566394222
17   3.1415810075796233302   3.1415926536065061913
20   3.1405434924008406305   3.1415926535900560168
24   3.2245152435345525443   3.1415926535897968907
ПРИМИТИВНЫЕ ТИПЫ
          ДАННЫХ


• Числа   (целые, дробные).

• Символы    (строки?).

• Булевы   переменные (True / False, Истина / Ложь).
Данные предметной области

                                          Списки
    Сложные типы данных                  Деревья
                                       Хеш-таблицы

                                            Массивы
    Составные типы данных                    Записи
                                          (структуры)


   Примитивные типы данных

                     Числа, символы, перечисления


ПИРАМИДА ДАННЫХ
КОНЕЦ ЧЕТВЕРТОЙ ЛЕКЦИИ

Mais conteúdo relacionado

Mais procurados

системысчисления 2
системысчисления 2системысчисления 2
системысчисления 2
guchina
 
слайды
слайдыслайды
слайды
Dmitry
 
Использование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетовИспользование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетов
Транслируем.бел
 

Mais procurados (20)

системысчисления 2
системысчисления 2системысчисления 2
системысчисления 2
 
Графики и свойства тригонометрических функций синуса и косинуса
Графики и свойства тригонометрических функций  синуса и косинусаГрафики и свойства тригонометрических функций  синуса и косинуса
Графики и свойства тригонометрических функций синуса и косинуса
 
слайды
слайдыслайды
слайды
 
Использование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетовИспользование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетов
 
зависимость координат снимка и местности 1
зависимость координат снимка и местности  1зависимость координат снимка и местности  1
зависимость координат снимка и местности 1
 
Kratnye i dvojnye_integraly
Kratnye i dvojnye_integralyKratnye i dvojnye_integraly
Kratnye i dvojnye_integraly
 
Антон Ланцов. Язык J
Антон Ланцов. Язык JАнтон Ланцов. Язык J
Антон Ланцов. Язык J
 
презентация к уроку2
презентация к уроку2презентация к уроку2
презентация к уроку2
 
Метод искусственной пчелиной колонии, алгоритм пчёл
Метод искусственной пчелиной колонии, алгоритм пчёлМетод искусственной пчелиной колонии, алгоритм пчёл
Метод искусственной пчелиной колонии, алгоритм пчёл
 
Агоритм пчёл и его сравнение с ГА
Агоритм пчёл и его сравнение с ГААгоритм пчёл и его сравнение с ГА
Агоритм пчёл и его сравнение с ГА
 
Определенный интеграл
Определенный интегралОпределенный интеграл
Определенный интеграл
 
Metody resheniya kvadratnyh_uravnenij
Metody resheniya kvadratnyh_uravnenijMetody resheniya kvadratnyh_uravnenij
Metody resheniya kvadratnyh_uravnenij
 
Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...
Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...
Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...
 
системы счисления
системы счислениясистемы счисления
системы счисления
 
Kod chisl
Kod chislKod chisl
Kod chisl
 
задание 17 (c3) неравенства Vopvet
задание 17 (c3)   неравенства Vopvetзадание 17 (c3)   неравенства Vopvet
задание 17 (c3) неравенства Vopvet
 
Differencirovanie pokazatelnoj i_logarifmicheskoj_
Differencirovanie pokazatelnoj i_logarifmicheskoj_Differencirovanie pokazatelnoj i_logarifmicheskoj_
Differencirovanie pokazatelnoj i_logarifmicheskoj_
 
Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...
Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...
Урок математики в 7 классе "Применение формул сокращенного умножения для вычи...
 
Числовые ребусы с картинками. Буква Э
Числовые ребусы с картинками. Буква ЭЧисловые ребусы с картинками. Буква Э
Числовые ребусы с картинками. Буква Э
 
Отделение космического аппарата от орбитальной ступени
Отделение космического аппарата от орбитальной ступениОтделение космического аппарата от орбитальной ступени
Отделение космического аппарата от орбитальной ступени
 

Destaque

Destaque (6)

Scala for Jedi
Scala for JediScala for Jedi
Scala for Jedi
 
ОПК № 3 – Машинное представление целых чисел, символов, строк
ОПК № 3 – Машинное представление целых чисел, символов, строкОПК № 3 – Машинное представление целых чисел, символов, строк
ОПК № 3 – Машинное представление целых чисел, символов, строк
 
ОПК № 5 – Составные типы данных, списки
ОПК № 5 – Составные типы данных, спискиОПК № 5 – Составные типы данных, списки
ОПК № 5 – Составные типы данных, списки
 
A bit about Scala
A bit about ScalaA bit about Scala
A bit about Scala
 
ОПК № 2 – Алгоритмы и структуры данных, язык C
ОПК № 2 – Алгоритмы и структуры данных, язык CОПК № 2 – Алгоритмы и структуры данных, язык C
ОПК № 2 – Алгоритмы и структуры данных, язык C
 
ОПК № 1 – Вводная
ОПК № 1 – ВводнаяОПК № 1 – Вводная
ОПК № 1 – Вводная
 

Semelhante a ОПК № 4 – Представление действительных чисел

генераторы псевдослучайных последовательностей и шифрование методом гаммирования
генераторы псевдослучайных последовательностей и шифрование методом гаммированиягенераторы псевдослучайных последовательностей и шифрование методом гаммирования
генераторы псевдослучайных последовательностей и шифрование методом гаммирования
hmyrhik nikita
 
чернякова г.в.
чернякова г.в.чернякова г.в.
чернякова г.в.
sharikdp
 
Системи лінійних алгебраїчних рівнянь
Системи лінійних алгебраїчних рівняньСистеми лінійних алгебраїчних рівнянь
Системи лінійних алгебраїчних рівнянь
Oksana Bryk
 
DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...
DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...
DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...
it-people
 
метод замены множителей
метод замены множителейметод замены множителей
метод замены множителей
mitusova
 
0. основы r
0. основы r0. основы r
0. основы r
msuteam
 
Лекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмовЛекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмов
Mikhail Kurnosov
 
Определенные интеграллы
Определенные интеграллыОпределенные интеграллы
Определенные интеграллы
daryaartuh
 
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Nikolay Grebenshikov
 

Semelhante a ОПК № 4 – Представление действительных чисел (20)

Продолжаем говорить про арифметику
Продолжаем говорить про арифметикуПродолжаем говорить про арифметику
Продолжаем говорить про арифметику
 
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
 
Советский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияСоветский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисления
 
C language lect_03_preface
C language lect_03_prefaceC language lect_03_preface
C language lect_03_preface
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
 
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
Введение в машинное обучение. Кластеризация (Bitworks Software, Кирилл Жданов)
 
генераторы псевдослучайных последовательностей и шифрование методом гаммирования
генераторы псевдослучайных последовательностей и шифрование методом гаммированиягенераторы псевдослучайных последовательностей и шифрование методом гаммирования
генераторы псевдослучайных последовательностей и шифрование методом гаммирования
 
чернякова г.в.
чернякова г.в.чернякова г.в.
чернякова г.в.
 
Системи лінійних алгебраїчних рівнянь
Системи лінійних алгебраїчних рівняньСистеми лінійних алгебраїчних рівнянь
Системи лінійних алгебраїчних рівнянь
 
DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...
DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...
DUMP-2013 Наука и жизнь - Приближённый подсчёт количества уникальных элементо...
 
КР 1 с решением
КР 1 с решениемКР 1 с решением
КР 1 с решением
 
метод замены множителей
метод замены множителейметод замены множителей
метод замены множителей
 
0. основы r
0. основы r0. основы r
0. основы r
 
Мультиспектральное слияние изображений
Мультиспектральное слияние изображенийМультиспектральное слияние изображений
Мультиспектральное слияние изображений
 
Лекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмовЛекция 11: Методы разработки алгоритмов
Лекция 11: Методы разработки алгоритмов
 
Определенные интегралы
Определенные интегралыОпределенные интегралы
Определенные интегралы
 
Определенные интеграллы
Определенные интеграллыОпределенные интеграллы
Определенные интеграллы
 
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
Лекция №3. Анализ алгоритмов. Предмет "Структуры и алгоритмы обработки данных"
 
dvfu sns spline 2
dvfu sns spline 2dvfu sns spline 2
dvfu sns spline 2
 
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессияПрогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
Прогнозирование - Лекция 2. Корреляционный анализ и простая линейная регрессия
 

ОПК № 4 – Представление действительных чисел

  • 1. ОСНОВЫ ПРОГРАММНОГО КОНСТРУИРОВАНИЯ Лекция № 4 12 марта 2013 г.
  • 2. ДЕЙСТВИТЕЛЬНЫЕ ЧИСЛА Возможны ли точные вычисления с ними?
  • 3. СПОСОБЫ ПРЕДСТАВЛЕНИЯ • Рациональныедроби с числителем и знаменателем неограниченного размера. • 22/7 = 3,1428571428571428 • 884279719003555 / 281474976710656 = 3,1415926535897931
  • 4. ПРЕДСТАВЛЕНИЕ С ФИКСИРОВАННОЙ ТОЧКОЙ 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 1 7 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 -8 • 1.010100012= 20+2-2+2-4+2-8 = 1+1/4+1/16+1/256 = 1.3164062510=337/256.
  • 5. ФИКСИРОВАННАЯ ТОЧКА. ОСОБЕННОСТИ • Больше точность – меньше диапазон. Больше диапазон – меньше точность. • Округление при представлении чисел (отбрасывание дробной части). • Умножение и деление могут привести к потере точности. • Вычисления так же быстры, как вычисления с целыми числами. • Sony Playstation, Nintendo Gameboy. • Кодирование звука: GSM Full rate, Ogg Vorbis.
  • 6. FIXED-POINT BCD • $1 = 30,7576 руб. (курс ЦБ РФ с 12.03.2013). • 30,7576 → 307576 → 30757616 → 76 75 30 00 (в памяти, little endian). • Метод часто используется для хранения денежных величин (COBOL).
  • 7. ПРЕДСТАВЛЕНИЕ С ПЛАВАЮЩЕЙ ТОЧКОЙ •x = m⋅be. • 3,1415 = 0,31415⋅101. 400 = 4⋅102 = 0,4⋅103. •m – мантисса (значащая часть, significand). • Нормализация: |m|<1. •b – основание степени (обычно 2 или 10). •e – экспонента (порядок).
  • 8. СТАНДАРТ IEEE 754 binary32 ± (S) Экспонента (E) Мантисса (M) 1 8 бит 23 бита binary64 S E M 1 11 бит 52 бита
  • 9. ВИДЫ ХРАНИМЫХ ЧИСЕЛ Тип Экспонента Мантисса ±0 0 0 Денормализованные числа 0 0.mmmmmmm Нормализованные числа 1…254 (1…2046) 1.mmmmmmm ±∞ 255 (2047) 0 Не-числа (NaN) 255 (2047) любая
  • 10. НОРМАЛИЗОВАННЫЕ ЧИСЛА • Для binary32: •F = (−1)S⋅2E−127⋅1.mm…m. •1 ≤ M < 2. • |F|min = 21−127⋅1.00…0 = 2−126 ≈1,18⋅10−38. • |F|max = 2254−127⋅1.11…1 = 2127⋅(2−2−23) ≈3,4⋅1038.
  • 11. ДЕНОРМАЛИЗОВАННЫЕ ЧИСЛА • Для binary32: •D = (−1)S⋅2−126⋅0.mm…m. • |D|min = 2−126⋅0.00…01 = 2−126⋅2−23 = 2−149 ≈1,4⋅10−45. • |D|max = 2−126⋅0.11…11 = 2−126⋅(1−2−23) ≈1,18⋅10−38. • |D|max + |D|min = |F|min.
  • 12. ТОЧНОСТЬ • Десятичных знаков: • log10(223+1) ≈ 7,225 (binary32). • log10(252+1) ≈ 15,955 (binary64).
  • 13. ПАРАМЕТРЫ BINARY64 • |D|min ≈ 5⋅10−324. • |D|max ≈ 2,23⋅10−308. • |F|min ≈ 2,23⋅10−308. • |F|max ≈ 1,80⋅10308.
  • 14. ПРОЧИЕ ЧИСЛА • ±∞ • NaN (Not a Number): • Деление на 0. • Корень из −1. • arctg(π/2). • ∞/∞, 0/0, 0⋅∞. • ∞-∞ • func(NaN) • NaN ≠ NaN!
  • 15. ПРИМЕР КОДИРОВАНИЯ • −118.625: • Знак отрицательный: S = 1. • Двоичная запись 118.625: 1110110.101 • Сдвиг влево: 1.110110101 × 26. • Отбрасываем старшую 1; E = 127+6 = 133. S E, 8 bits M, 23 bits 1 10000101 11011010100000000000000
  • 16. ПРОБЛЕМЫ • Округление: tg π ≠ 0; tg(π/2) ≠ ∞. • Накопление ошибок: a⊕(b⊕с) ≠ (a⊕b)⊕с. • a⊖bпри близких значениях a и b приводит к потере точности. • Сравнение чисел.
  • 17. ПРОБЛЕМА СРАВНЕНИЯ float x = 0.1f; float y1 = x*x; float y2 = 0.01f; y1 == y2; // => 0
  • 18. ПРОБЛЕМА СРАВНЕНИЯ float x = 0.1f; // 0.100000001490 float y1 = x*x; // 0.010000000708 = 0 01111000 01000111101011100001011 float y2 = 0.01f; // 0.009999999776 = 0 01111000 01000111101011100001010 y1 == y2; // => 0 один бит отличается
  • 19. ПРОБЛЕМА СРАВНЕНИЯ // float.h /* Difference between 1.0 and the minimum float greater than 1.0 */ #define FLT_EPSILON 1.1920929e-07F /* Difference between 1.0 and the minimum double greater than 1.0 */ #define DBL_EPSILON 2.2204460492503131e-16
  • 20. ПРОБЛЕМА СРАВНЕНИЯ #include <float.h> #include <math.h> int almostEqual(float a, float b) { float A = fabs(a); float B = fabs(b); float largest = (B > A) ? B : A; return (fabs(A - B)/largest <= FLT_EPSILON); } almostEqual(y1, y2); // => 1
  • 21. ВЫЧИСЛЕНИЕ π π≈ 6⋅2 i i⋅t при i→∞. или i 1-я формула 2-я формула 0 3.4641016151377543863 3.4641016151377543863 10 3.1415929278733740748 3.1415929273850979885 16 3.1415926717412858693 3.1415926536566394222 17 3.1415810075796233302 3.1415926536065061913 20 3.1405434924008406305 3.1415926535900560168 24 3.2245152435345525443 3.1415926535897968907
  • 22. ПРИМИТИВНЫЕ ТИПЫ ДАННЫХ • Числа (целые, дробные). • Символы (строки?). • Булевы переменные (True / False, Истина / Ложь).
  • 23. Данные предметной области Списки Сложные типы данных Деревья Хеш-таблицы Массивы Составные типы данных Записи (структуры) Примитивные типы данных Числа, символы, перечисления ПИРАМИДА ДАННЫХ