Table/ru: Difference between revisions

From KolibriOS wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
[[File:Table.PNG|thumb|right]]
[[File:Table.PNG|thumb|right]]
Табличный редактор Table v. 0.96 с поддержкой формата CSV. Интерфейс программы типичен для редакторов электронных таблиц, в частности MS Excel и OpenOffice Calc.
Табличный редактор Table v. 0.96 с поддержкой формата CSV. Интерфейс программы типичен для редакторов электронных таблиц, в частности MS Excel и OpenOffice Calc.<br>
Язык разработки: C (точнее, C++ без классов).<br>
Среда разработки: MS Visual C++ 6.0.


==Возможности==
==Возможности==
Line 13: Line 15:
* Для изменения ячейки нажмите Enter
* Для изменения ячейки нажмите Enter
* Чтобы указать, что в ячейке записана формула, а не текст, первым символом следует указать "=": в этом случае вместо введенного текста будет отображаться результат вычисления
* Чтобы указать, что в ячейке записана формула, а не текст, первым символом следует указать "=": в этом случае вместо введенного текста будет отображаться результат вычисления
* Под именем переменной понимается имя ячейки, состоящее из имени столбца и имени строки, например: B5, AA17
* Ячейка выделяется красным, если формула в ней записана неверно или же она содержит ссылки на пустые ячейки
* Ячейка выделяется красным, если формула в ней записана неверно или же она содержит ссылки на пустые ячейки
* Для переключения режима отображения <формулы/значения> нажмите CTRL-F
* Для переключения режима отображения <формулы/значения> нажмите CTRL-F
Line 25: Line 28:
==Функции==
==Функции==
Все функции чувствительны к регистру(!)
Все функции чувствительны к регистру(!)
* Фиксированные. pi() возвращает значение числа пи. eps() возвращает
* Фиксированные: pi() возвращает значение числа пи. eps() возвращает текущее значение эпсилон
текущее значение эпсилон.
* Округление: ceil, floor и round (последний округляет 2.5 к 3)
* Округление. ceil, floor и round (последний округляет 2.5 к 3).
* Логика: and, or, xor (очевидно)
* Логика. and, or, xor (очевидно).
* Тригонометрия: sin, cos, tg, ctg, arcsin, arccos
* Тригонометрия. sin, cos, tg, ctg, arcsin, arccos.
* Экспонента и логарифм: exp, log
* Экспонента и логарифм. exp, log.
* Степень: pow(x,y) = x^y. Также sqrt(x) = x^0.5
Степень pow(x,y) = x^y.  
* Проверка. isnull(имя_переменной) возвращает 1.0, если переменной нет, и 0.0, если она есть и определена. Если указать не имя переменной, вернет, как правило, 1.0.
Также sqrt(x) = x^0.5.
* Статистика: sum, min, max, avg. Принимают любое количество аргументов.
* Проверка. isnull(имя_переменной) возвращает 1.0, если переменной нет, и
* Проверка условия: if(условие, значение_если_истина, значение_если_ложь). Вычисляет условие. Если оно равно 0.0, возвращает значение_если_ложь, иначе возвращает значение_если_истина. И case(значение, количество_вариантов, вариант1, вариант2, ..., вариантN, значение1, значение2, ..., значение_N [, значение_по_умолчанию]). Если среди вариантов 1..N встретится значение, то возвращается значение с соответствующим индексом. Иначе - значение_по_умолчанию (необязательный параметр, но если он понадобится, а не указан, то будет ошибка).
0.0, если она есть и определена. Если указать не имя переменной, вернет, как
* Хаос: rand(макс_значение) - генератор вещественных случайных чисел от 0 до макс_значения. Пересчет происходит при изменениях любых ячеек.
правило, 1.0.
В Table под именем переменной понимается имя ячейки, состоящее из имени
столбца и имени строки, например: B5, AA17. Перед именем столбца или строки
может стоять знак $ (в текущей реализации ни на что не влияет).
* Статистика. sum, min, max, avg. Принимают любое количество аргументов.
* Проверка условия. if(условие, значение_если_истина, значение_если_ложь).
Вычисляет условие. Если оно равно 0.0, возвращает значение_если_ложь, иначе
возвращает значение_если_истина.
И case(значение, количество_вариантов, вариант1, вариант2, ..., вариантN,
значение1, значение2, ..., значение_N [, значение_по_умолчанию]).  
Если среди вариантов 1..N встретится значение, то возвращается значение с
соответствующим индексом. Иначе - значение_по_умолчанию (необязательный
параметр, но если он понадобится, а не указан, то будет ошибка).
* Хаос. rand(макс_значение) - генератор вещественных случайных чисел от 0
до макс_значения. Пересчет происходит при изменениях любых ячеек.


==Примеры корректных выражений==
==Примеры корректных выражений==

Revision as of 21:17, 8 September 2018

Table.PNG

Табличный редактор Table v. 0.96 с поддержкой формата CSV. Интерфейс программы типичен для редакторов электронных таблиц, в частности MS Excel и OpenOffice Calc.
Язык разработки: C (точнее, C++ без классов).
Среда разработки: MS Visual C++ 6.0.

Возможности

  •  редактирование таблицы, в каждой ячейке которой записана строка
  •  изменение размеров столбцов и строк
  •  сохранение и загрузка таблиц
  •  обработка математических выражений
  •  чтение и загрузка файлов CSV (при этом формулы затираются!!!)

Руководство пользователя

  • Для выбора ячейки используйте клавиши со стрелками на клавиатуре
  • Для изменения ячейки нажмите Enter
  • Чтобы указать, что в ячейке записана формула, а не текст, первым символом следует указать "=": в этом случае вместо введенного текста будет отображаться результат вычисления
  • Под именем переменной понимается имя ячейки, состоящее из имени столбца и имени строки, например: B5, AA17
  • Ячейка выделяется красным, если формула в ней записана неверно или же она содержит ссылки на пустые ячейки
  • Для переключения режима отображения <формулы/значения> нажмите CTRL-F
  • Чтобы открыть или сохранить файл, введите в строку адреса полный путь к файлу и его имя. После этого нажмите "Save" (Сохранить) или "Load" (Открыть)

Операции

Все числа одного типа - double. Истине соответствует 1.0 (или любое значение, не равное 0.0), лжи - 0.0. Сравнение производится с учетом эпсилон (сейчас 1e-6).

  • Арифметика: +, -, *, /, ^ (степень), % (остаток от деления), унарные + и -
  •  Сравнения (результат - логический): =, !=, # (тоже "не равно", но в стиле Оберона), <, <=, >, >=
  • Логика: унарное отрицание !. Логические значения можно умножать (операция "И") или складывать (операция "ИЛИ")

Функции

Все функции чувствительны к регистру(!)

  •  Фиксированные: pi() возвращает значение числа пи. eps() возвращает текущее значение эпсилон
  •  Округление: ceil, floor и round (последний округляет 2.5 к 3)
  •  Логика: and, or, xor (очевидно)
  •  Тригонометрия: sin, cos, tg, ctg, arcsin, arccos
  •  Экспонента и логарифм: exp, log
  • Степень: pow(x,y) = x^y. Также sqrt(x) = x^0.5
  •  Проверка. isnull(имя_переменной) возвращает 1.0, если переменной нет, и 0.0, если она есть и определена. Если указать не имя переменной, вернет, как правило, 1.0.
  •  Статистика: sum, min, max, avg. Принимают любое количество аргументов.
  •  Проверка условия: if(условие, значение_если_истина, значение_если_ложь). Вычисляет условие. Если оно равно 0.0, возвращает значение_если_ложь, иначе возвращает значение_если_истина. И case(значение, количество_вариантов, вариант1, вариант2, ..., вариантN, значение1, значение2, ..., значение_N [, значение_по_умолчанию]). Если среди вариантов 1..N встретится значение, то возвращается значение с соответствующим индексом. Иначе - значение_по_умолчанию (необязательный параметр, но если он понадобится, а не указан, то будет ошибка).
  •  Хаос: rand(макс_значение) - генератор вещественных случайных чисел от 0 до макс_значения. Пересчет происходит при изменениях любых ячеек.

Примеры корректных выражений

=A1*sin(B5)
=1
=sin(pi()) +    exp(1)
=ceil($AA$34)
=if(A4>A5,A4,A5)
=max(A4,A5,A6,A7)
=if(isnull(B5),0,B5)
=if(or(isnull(D9),isnull(D2)),0,D9*D2)
=case(B4,4,1,2,3,4,B5,B6,B7,B8,-1)

Автор

barsuk