пятница, 11 февраля 2011 г.

Small Basic API - Desktop

Desktop он и есть десктоп. Можно получить разрешение экрана для своим смутных целей.

x=Desktop.Height
y=Desktop.Width
TextWindow.WriteLine(x)
TextWindow.WriteLine(y)

четверг, 10 февраля 2011 г.

dokuwiki - discussion

Ставил на сайт на dokuwiki модуль discussion и avatar. Все встало легко, единственное, не понял как сделать перевод кнопок на русский язык. Да я пока и в шаблоне этого не понял, как все эти "Admin","Login","Edit this page" на русский перевести.
На главной запретил обсуждение, для этого в странице добавил   
~~DISCUSSION:off~~
Аватарки тоже легко. Ставишь модуль. На gravatar.com создаешь аккаунт с картинками. Если e-mail на doku совпадает e-mail на gravatar, в обсуждениях появится аватарка.  

среда, 9 февраля 2011 г.

Small basic - массив

Для меня образ массива это excel табличка.
Например Лист1[A][1]=500 
Лист1 - название массива
[А][1] - индексы по вертикали и горизонтали
500- значение ячейки
В Small Basic задается так же 
имя массива [i] = N
Значения заносятся через циклы, как я понимаю. 


Небольшой пример. Мне нужна была программа, создающая массив биржевых цен (открытие, максимум, минимум, закрытие) и вычисляющее максимум и минимум массива. 


LJW288 - код для импорта



'ввод начальных условий
TextWindow.WriteLine("Сколько периодов нужно рассчитать?")
x=TextWindow.Read()
TextWindow.WriteLine("Начальная цена?")
open[0]=TextWindow.Read()
TextWindow.WriteLine("Введите волатильность(изменчивость) цен?")
vol=TextWindow.Read()
vol2=vol 'нужно для того, чтобы цены не ушли в отрицательную область
max=open[0]'нужен для вычисления максимума
min=open[0]'нужен для вычисления минимума
'создание массива
For i = 1 To X
  open[i] = open[i-1]-Math.GetRandomNumber(vol)+Math.GetRandomNumber(vol2)
  close[i] = open[i]-Math.GetRandomNumber(vol)+Math.GetRandomNumber(vol2)
  If (close[i]>open[i]) Then
    high[i] = close[i] + Math.GetRandomNumber(vol)
    low[i] =open[i] - Math.GetRandomNumber(vol)
  Else
    high[i] = open[i] + Math.GetRandomNumber(vol)
    low[i] =close[i] - Math.GetRandomNumber(vol)
  Endif
  If (open[i]>(open[0]/4)) Then 'нужно для того, чтобы цены не ушли в отрицательную область
    vol2=vol
  Else
    vol2=vol*2
  EndIf
  If (high[i]>max) Then 'вычисление максимума
    max=high[i]
  EndIf
  If (low[i]<min) Then ' вычисление минимума
    min=low[i]
  Endif
EndFor
'сейчас будет условие видимости для массива
TextWindow.WriteLine("Вывести массив? (1-если да)")
massivvisible=TextWindow.Read()
If (massivvisible=1) Then
  For i = 1 To X  
    TextWindow.Write(open[i] + "  ")
    TextWindow.Write(high[i] + "  ")
    TextWindow.Write(low[i] + "  ")
    TextWindow.WriteLine(close[i] + "  ")
  EndFor
EndIf
TextWindow.Write("минимум цены " + min + " ")
TextWindow.WriteLine("максимум цены " + max + "  ")

воскресенье, 6 февраля 2011 г.

Сайт на Dokuwiki

     Давно уже присматриваюсь к этому вики движку. Главное, у него нет базы, что позволяет проще перетаскивать его между хостингами. Да и без базы оно как то понадежнее и менее требовательно к ресурсам. 
iwiki.laserufa.ru
     Установка с полпинка. Заливаем архив на хостинг, вводим в адресной строке install.php, забиваем свои данные и удаляем его потом. Все, установка завершена. Пробовал переносить с денвера на хостинг простым копированием - все работает! (Единственное, может я пока не использовал "чистые ссылки", а то бы может и не все так гладко было).
     Главный косяк, с которым пока столкнулся, это особенности разметки. Текст пишешь, и все отступы и переносы ставятся только разметкой. Неудобно пока.