АвторСообщение
Автор




Пост N: 124
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 06.02.08 12:23. Заголовок: Вопросы по Учебнику.


С момента опубликования Учебника по программированию на MQL4 мне стали приходить письма от читателей с вопросами. Предлагаю всем заинтересованным начинающим программистам продолжить общение здесь. Я постараюсь ответить на ваши вопросы.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 61 , стр: 1 2 3 4 5 6 7 All [только новые]





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 07.02.08 17:34. Заголовок: Есть ли возможность ..


Есть ли возможность скачать учебник как файл, а не читать его на сайте ?

Спасибо: 0 
Цитата Ответить
Автор




Пост N: 125
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 07.02.08 17:48. Заголовок: Разработчики языка о..


Разработчики языка обещали выложить бесплатные pdf и chm файлы. Посмотрте сообщение Рената здесь.
Если очень не терпится, то поищите по сети. Недавно на каком-то форуме я встречал пиратскую копию (адрес не помню).

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 16.04.08
ссылка на сообщение  Отправлено: 16.04.08 12:36. Заголовок: Спасибо. Нашел. Есл..


Спасибо. Нашел. Если будут вопросы буду писать и суда. Только не судите строго.

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 128
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 16.04.08 13:27. Заголовок: Не знать в начале об..


Не знать в начале обучения вовсе не зазорно. Важно, чтобы потом не осталось пробелов в знаниях.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 28.08.08
ссылка на сообщение  Отправлено: 28.08.08 10:16. Заголовок: Спасибо за учебник. ..


Спасибо за учебник. Для таких новичков как я материал предоставлен в достаточно простой и доступной форме.
Вопрос заключается в следующем:
В задаче №16 остаток на 1 ферме вычисляется так:
One_Farm=One_Farm*(1-Perc_exit/100);// Остаток на 1 ферме
и при исполнении скрипта выводится результат равный 17 мес.
По логике вещей остаток на 1 ферме можно вычислить и таким способом:
One_Farm=One_Farm-Two_Farm;// Остаток на 1 ферме
но тогда при исполнении скрипта результат равен 18 мес.
Помогите разобраться в чем заключается разница.

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 202
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 28.08.08 13:15. Заголовок: Вообще-то, задача из..


Вообще-то, задача изначально была составлена про заработки на форексе.
1я ферма - это игровой счёт, на котором (условно говоря) ежедневно увеличивается количество средств на 1%.
2я ферма - это домашний карман трейдера.
После того, как на игровом счёте накапливается некоторая сумма, трейдер снимает излишки и складывает дома.
Вопрос в том, как скоро трейдер может накопить некоторую сумму дома (в задаче указана сумма 35 000).
(впоследствии было решено, что провоцировать трейдеров, как бы обещая 1% в день, некорректно, поэтому задача была переписана под "овечью" тему:)


Перечитайте условие Задачи 16, при этом замените слово "овца" на слово "доллар", а слово "ферма" на слово "счёт". И Вам всё будет понятно.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 1
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 22.05.09 15:03. Заголовок: Вопрос к SK. Скажите..


Вопрос к SK.
Скажите, есть ли способ из эксперта запросить значение ПОЛЬЗОВАТЕЛЬСКОГО индикатора?
Или надо код индикатора монтировать в советник?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 2
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 22.05.09 15:59. Заголовок: Удивительное дело. С..


Удивительное дело. Скачал учебник и сразу нашел ответ на свой вопрос. А в хелпе эдитора не сумел
Так что можно не отвечать.
Извините за беспокойство.

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 403
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 23.05.09 00:08. Заголовок: Ничего страшного. Дл..


Ничего страшного. Для того и создана тема. Будут вопросы - приходите.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 3
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 26.05.09 09:51. Заголовок: Не прошло и полгода ..


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

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 404
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 26.05.09 10:42. Заголовок: Задать размерность п..


Задать размерность при инициализации массива можно только целой константой.
Изменить количество элементов массива можно только в первом измерении. Смотрите ArrayResize() в справке МЕ.

Спасибо: 1 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 10.06.09 19:08. Заголовок: здравствуйте сергей ..


здравствуйте сергей наконец то нашел ваш форум о котором вы говорили я вам писал не давно в асю есть вопросы по програмированию на языке МКЛ4

Спасибо: 0 
Цитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 10.06.09 19:21. Заголовок: скорее всего не вопр..


скорее всего не вопросы а наверное просьба будет к вам если я вам скину на почту несколько экспертов сможете вы описать словами каждую строчку и функцию какая за что отвечает за что отвечает каждый блок и тд, учебник написан неплохо есть и разъяснения но когда пытаешся что то написать в голове получается каша начинаю искать в учебнике бывает нахожу что хочу бывает нет спросить не у кого а вопросов очень много и очень много уходит время

Спасибо: 0 
Цитата Ответить
Автор




Пост N: 406
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 10.06.09 20:46. Заголовок: Если у Вас есть вопр..


Если у Вас есть вопросы по учебнику, то выкладывайте их здесь. Я постараюсь ответить так, чтобы было понятно.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 14.06.09
ссылка на сообщение  Отправлено: 14.06.09 15:28. Заголовок: Вопрос по теме: Пере..


Вопрос по теме: Переменные GlobalVariables
строка кода:
string Quantity="GV_Quantity"; // Имя GV-переменной
то есть мы тут создаем гл. переменную я так понимаю. Только какое имя у этой переменной Quantity или GV_Quantity.
В дальнейшем в программе идет обращение к этой переменной как Quantity, то есть все таки имя у нее Quantity? А если нет, то допустим еще создать одну гл. переменную, то как к ней в дальнейшем обращаться? тоже Quantity? Почему у этой переменной тип string, там же вроде число должно быть.
Сергей, можете поподробнее прокомментировать значение этой строки кода?


Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 407
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 15.06.09 01:08. Заголовок: Для того, чтобы прав..


Для того, чтобы правильно понять сущность GV, я бы порекомендовал ещё раз неторопясь внимательно прочесть раздел Переменные GlobalVariables, http://book.mql4.com/ru/variables/globals

 цитата:
Вопрос по теме: Переменные GlobalVariables
строка кода:
string Quantity="GV_Quantity"; // Имя GV-переменной
то есть мы тут создаем гл. переменную я так понимаю.


Не правильно понимаете.Создание GV происходит в результате исполнения функции datetime GlobalVariableSet( string name, double value) Функции передаются два параметра - имя и значение GV.

 цитата:
Только какое имя у этой переменной Quantity или GV_Quantity.


Имя GV может обрабатываться программно (может быть подобрано в процессе исполнения программы; например, создаваемая GV может быть GGGV_Sell или GGGV_Buy в зависимости от того, какой ордер открылся). Это значит, что само имя переменной - это строка символов, т.е. строковое значение. Вот это строковое значение само может быть присвоено строковой переменной.
Здесь строковая переменная - string Quantity, а её значение - "GV_Quantity".
Всё это, вообще говоря, никак не относится к GV-переменной. Это - объявление строковой переменной и одновременно присвоение ей некоего значения.
В сложной программе может быть несколько подобных строк, например:
string Quantity="GV_Quantity"; // Имя GV-переменной
... вычисления ...
Quantity="ALPHA"; // Имя GV-переменной
... вычисления ...
Quantity="Betta"; // Имя GV-переменной
... вычисления ...
А позднее, по логике программы, объявляется собственно GV-переменная.
И на этот момент имя у неё будет такое, какое вычислено в предыдущем коде (в зависимости от чего-то там). Создание GV делается так:
GlobalVariableSet(Quantity, 3.14); // имя GV задано значением переменной
Здесь создана GV-переменная, которой присвоено значение 3.14.
А имя у неё будет таким, какое значение (вычисленное незадолго до создания GV) у переменной Quantity.

В простом случае можно явно назначить GV-переменной имя в виде строковой константы:
GlobalVariableSet("ALPHA", 3.14); // имя GV задано строковой константой

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 4
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 23.06.09 17:06. Заголовок: Здравствуйте, Сергей..


Здравствуйте, Сергей!
не нашел в учебнике, где-то написано, как работать с DLL ?
Не могли бы указать где, либо квалифицированно разъяснить не сходя с этого места.

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 409
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 23.06.09 18:23. Заголовок: В учебнике этот вопр..


В учебнике этот вопрос не рассматривается.
Описание можно посмотреть в Хелпе МЕ: Справочник MQL4 - Основы языка - Препроцессор - Импорт функций.

На моём сайте есть примеры использования ех4 (принцип тот же):
http://autograf.dp.ua/Pages/2/26/267/2672.htm
http://autograf.dp.ua/Pages/4/418.htm
http://autograf.dp.ua/Pages/4/415.htm
http://autograf.dp.ua/Pages/4/416.htm

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 29.09.09
ссылка на сообщение  Отправлено: 29.09.09 15:04. Заголовок: Здраствуйте. у меня ..


Здраствуйте. у меня следующий вопрос.
можно ли связать мататрейдер с каки либо другим языком програмирования?
Наример С#.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 7
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 29.09.09 18:31. Заголовок: Наверное, имеется в ..


Наверное, имеется в виду возможность написания блока стратегии на С++, а на MQL4 - только осуществление торговых операций.
Да, такое возможно и многими применяется. Блок стратегии пишется на C++, оформляется в виде dll и присоединяется к эксперту MQL4. Хотя никто не запрещает сделать полноценное приложение на C++, но связывать все равно придется через dll.

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

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 2
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 09:14. Заголовок: у меня вопросы по к..


у меня вопросы по каждому предложению, слову. например А=7 где А и 7 переменная и константа, как они могут быть равны? и вообще зачем они нужны?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 09:17. Заголовок: у меня вопросы по к..


у меня вопросы по каждому предложению, слову. например А=7 где А и 7 переменная и константа, как они могут быть равны? и вообще зачем они нужны?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 32
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 21.12.09 11:53. Заголовок: Представьте себе сит..


Представьте себе ситуацию, когда вам в коде нужно использовать некоторое значение, которое впоследствии возможно будет изменено. Причем это значение появляется в коде несколько десятков раз. В этом случае намного удобнее присвоить значение константе, а уже константу использовать в коде.

Хотя, конечно, можно использовать и просто входные параметры эксперта.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 5
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 12:05. Заголовок: Чесно говоря не могу..


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

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 536
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 21.12.09 14:35. Заголовок: Программиование нужн..


Программиование нужно начинать с освоения новых терминов.
В Учебнике по MQL 4 термины даются последовательно, методически правильно.
Терминов, освоенных в предыдущем изложении, всегда достаточно для понимания текущего раздела.
Нужно читать Учебник с начала, до того момента, когда возникнет непонимание.
Потом задать конкретный вопрос на форуме.

По переменным и константам перечитайте ещё раз соотв. раздел. Сами по себе Константа и Переменная не могут быть равны или не равны подобно тому, как не могут быть равны помидор и апельсин. Но они могут иметь одинаковые значения, подобно тому, как помидор и апельсин могут иметь одинковый вес.
Запись А = 7 не означает, что переменная равна константе и вообще не означает равенство. Эта запись читается так: присвоить переменной А значение 7.

Читайте Учебник с начала и внимательно, там всё это подробно описано.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 6
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 16:54. Заголовок: ­ Даже не знаю... Нед..


*PRIVAT*

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 8
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 19:29. Заголовок: Я начал читать опять..


Я начал читать опять, тоже самое непонятно: присвоить переменной А значение 7. в примере сказано что 7 константа и получается что присвоить переменной константу !? Тогда и переменная станет константой...


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 5
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 21.12.09 19:34. Заголовок: Не пойму, Мезон, ты ..


Не пойму, Мезон, ты удалил свой пост?
Ну да ладно.
Помню, когда-то было нечто подобное и со мной.
И я тебе скажу, что книжку читать надо, конечно. Но попробуй ее читать с прицелом. Представь, что пишешь программу, которая должна решать квадратное уравнение, например. Либо говорить, что действительных корней нет.
ax^2 + bx +c = 0
В MQL не вполне развиты средства интерфейса, потому сделай вначале программы
a = 10
b = 20
c = - 50
(тут до тебя дойдет, что когда ты захочешь решить другое уравнение, ты поменяешь только
3 числа, и тебе станет ясно, зачем введено понятие переменной)

И пиши дальше!! И помни, при написании программы ты даешь компу директивы, что, как, когда делать.
Мы общаемся посредством слов (в основном) друг с другом, а комп оперирует исключительно числами.
В том числе буквы и слова в компе выглядят как числа. Просто есть определенные соглашения, как и в каких случаях числа означают буквы.
Если то, что я написал, поможет - я буду рад

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 6
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 21.12.09 19:51. Заголовок: Mezon пишет: Я нача..


Mezon пишет:

 цитата:
Я начал читать опять, тоже самое непонятно: присвоить переменной А значение 7. в примере сказано что 7 константа и получается что присвоить переменной константу !? Тогда и переменная станет константой...



Не заморачивайся так сильно
Во время всего сеанса работы программы константа не может измениться (чтобы поменять значение константы придется перекомпилировать программу)
А переменная может сколько угодно (лишь бы присваиваемые значения соответствовали объявленному типу)
И опять настоятельно рекомендую написать простенькую программу и заставить ее работать правильно

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 9
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 20:42. Заголовок: Я не заморачиваюсь,..


Я не заморачиваюсь, просто не понимаю что написано, чем больше пытаюсь понять тем больше противоречий...

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 539
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 21.12.09 22:36. Заголовок: Mezon, я понимаю Ваш..


Mezon, я понимаю Ваши затруднения.
В данном случае Вы неправильно воспринимаете сущность понятий.
7 - это число, некоторое количество (яблок, например)
А - это переменная, т.е. некая сущность, которая может изменять своё значение по ходу исполнения программы. Например, количество людей в автобусе после каждой очередной остановки может изменяться.

Пример А = 7 воспринимается Вами неправильно просто потому, что Вы ещё не знаете (написано в учебнике позже) смысл знака =.
В данном случае эта запись (имеется ввиду запись в программе) не означает то же, чтов школьной тетрадке. Т.е. запись не означает: А равно семь, а означает буквально следующее: присвоить переменной А значение 7.

Различайте понятия. Переменная, Константа и Значение.

Константа это такой значёк (цифра), который прописывается в код программы. В данном случае это значок 7. Но есть ещё Значение 7, которое хранится в памяти компьютера. Переменной может быть присвоено Значение (но не Константа). В данном случае это Значение 7.

В другом случае Переменной А может быть присвоено Значение, получающееся в результате вычислений некоторого Выражения. Например, возможна запись А = В + С/2. Компьютер, увидев эту запись, сделает следующее:
1. Извлечёт из памяти Значение переменной С (например, оно равно 8).
2. Поделит С на 2 и этот промежуточный результат (4) запомнит.
3. Вычислит значение Выражения справа от знака равенства (например, если В равно 5) 5 + 4 (равно 9).
4. Присвоит полученное значение (9) переменной А.

В любой текущий момент любая переменная может иметь только одно значение. Но через некоторое время, после некоторых вычислений эта переменная может иметь другое значение.
Например, в 13:00 автобус вышел на маршрут. Обозначим количество пассажиров в автобусе переменной А.
В 13:05 зашло 2 человека. Переменная А имеет значение 2.
В 13:10 зашло ещё 3 человека. Переменная А имеет уже значение 5.
В 13:15 зашло 4 человека и 1 вышел. Переменная А имеет значение 8.
Если пассажирооборот описать в программе, и посмотреть что там случается с Переменной А, то легко обнаружится, что Переменная А всё время меняет своё значение.

Одновременно с этим, количество пассажиров, зашедших в автобус в 13:05, всё время (на протяжении всего времени исполнения программы) будет оставаться постоянным значением. В таких случаях обычно такие данные записывают в программу в виде Констант. В данном случае в виде Константы, имеющей Значение 2.

Простая программа для автобуса может выглядеть так:
А = 0;
А = А + 2;
А = А + 3;
А = А + 4 - 1;



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 10
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 21.12.09 23:15. Заголовок: Вот уже теплее (в см..


Вот уже теплее (в смысле начинаете понимать насколько мне непонятно) :" Константа это такой значёк (цифра), который прописывается в код программы. В данном случае это значок 7. Но есть ещё Значение 7, которое хранится в памяти компьютера. Переменной может быть присвоено Значение (но не Константа). В данном случае это Значение 7".
как их отличить друг от друга? Одну 7 от другой 7. По автобусу все равно "темно" . Если количество пассажиров А меняется от остановки к остановке - это переменная понятно. Но как количество пассажиров зашедших в 13:05 будет оставаться постоянным значением ? ведь в 13:15 мог выйти пассажир вошедший в 13:05... и А небудет = 2? Единственной константой в этом случае думаю будет водитель...(это величина постоянная не зависящая от количества пассажиров).

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 541
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 22.12.09 12:19. Заголовок: Как отличить значени..


Как отличить значение от константы.
Константа и Переменная - это программные термины, их можно видеть в тексте программы. А значение - это то, что хранится в памяти компьютера. Для константы значок 7 и значение 7 совпадают. А значение переменной может меняться.

Количество пассажиров, зашедших в 13:05 не изменяется. Вот, как зашли они один раз - два пассажира, так это уже раз и навсегда. Уже не будет больше момента 13:05 и в этот момент уже никто больше не зайдёт. Это уже история. Её изменить нельзя. С точки зрения программных терминов это константа.

Кто потом входит и выходит описывается другими константами. И в данном случае неважно кто именно (Вася или Коля). Последующие события влияют только на значение переменной А. В предыдущем примере программы значение переменной А постоянно меняется (от строки к строке сверху вниз) и соответствует текущему количеству пассажиров.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 12
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 22.12.09 16:06. Заголовок: Вы меня извините, н..


Вы меня извините, не "варится" у меня пример с автобусом. Может еще одну букву ввести скажем В . Получается что А и переменная и константа в разные моменты времени? И почему за константу взята 2 , если они вошли в пустой автобус надо взять за константу 0 и от него (к нему ) прибалять , удалять пассажиров. Можно другой пример ? (на картошке , на спичках)...

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 544
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 22.12.09 23:41. Заголовок: Элементарный пример ..


Элементарный пример константы - это число Пи, равное, как известно, 3.1415
Задача: составить программу вычисления длины окружности в зависимости от радиуса.

Решение задачи (программный код):
R = 10;
L = 2*3.1415*R;

Здесь условно полагается, что у пользователя есть возможность изменять (настраивать) значение радиуса окружности. Например, пользователь вводит значение радиуса, равное 10 - получает длину окружности, равную 62.830. Потом пользователь может ввести радиус 20 и получит длину окружности 125.66

В этой задаче радиус R и длина окружности L - переменные, а 3.1415 - константа. Обычно константа - это такое значение в задаче, которое никогда не меняется в принципе.

Пожалуйста, примите во внимание, что компьютерная программа - это не перечень неких утверждений (типа, Пи равно 3.1415), а перечень инструкций (приказов, указаний) компьютеру для исполнения конкретных действий.
В первой строке программа даёт компьютеру приказ: присвоить переменной R значение 10.
Во второй строке программа даёт компьютеру приказ: вычислить значение справа от знака равенства и результат присвоить переменной L.

Выполняя последовательно строки кода компьютер доходит до самого конца программы. На этом пути он может что-то вычислить (в данном примере длину окружности) что-то напечатать, что-то выдать на экран и т.д.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 13
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 23.12.09 08:55. Заголовок: Здесь вроде все в по..


Здесь вроде все в порядке, а в учебнике не понял . Поправьте меня если что то не так. Переменной может присваиваться любое значение даже константы. А константа "вешь" постоянная не зависящая ни от чего... которой мы тоже можем присвоить значение (наверно один раз). Возможно затруднение вызывает написание всего этого если буквой "А" обозначается переменная то константа должна обозначаться другой буквой? И гдето должно быть прописано что А В С переменные а Д Ж Е константы и значения вожможно будут у них одинаковые?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 36
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 23.12.09 09:43. Заголовок: Mezon пишет: Возмож..


Mezon пишет:

 цитата:
Возможно затруднение вызывает написание всего этого если буквой "А" обозначается переменная то константа должна обозначаться другой буквой? И гдето должно быть прописано что А В С переменные а Д Ж Е константы и значения вожможно будут у них одинаковые?


Константа может быть названа любой буквой, от этого суть совсем не меняется.

В MQL4 константы обозначают директивой #define, например:

#define A 145 - объявлена константа А со значением 145.
#define B "Hello" - объявлена строковая константа со значением Hello
#define Pi 3.14 - объявлена константа Pi со значением 3.14

Если же вы хотите объявить переменную, то есть впоследствии планируете изменять значение, то эти же конструкции нужно переписать так:

int A = 145 - объявили целочисленную переменную A и присвоили ей начальное значение 145
string B = "Hello" - объявили строковую переменную B и присвоили ей начальное значение Hello
double Pi = 3.14 - объявили вещественную переменную Pi и присвоили ей начальное значение 3.14


Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 545
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 23.12.09 11:42. Заголовок: Mezon пишет: Перем..


Mezon пишет:

 цитата:
Переменной может присваиваться любое значение даже константы.



Ещё раз обратите внимание на термины.
Константа и Значение - суть разные понятия.
Переменной присваивается Значение. Это значение сохраняется до тех пор, пока не будет изменено в процессе вычислений. В момент присвоения (чисто технически) Переменной присваивается то значение, которое содержится справа от знака равенства. Это может быть значение другой Переменной, значение константы (то, о чём Вы спрашиваете), значение выражения (каковое значение компьютер должен сначала вычислить), значение, возвращаемое функцией.

Значение же Константы в процессе вычислений никогда не изменяется.
Внешне в программе числовая константа (бывают и другие) может быть представлена в виде числа, непосредственно вбитого в код (3.1415 , 28 , 0.5 и пр), а может иметь название (А, В, Ku_Ku, Alpha и пр. ).

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 14
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 23.12.09 12:24. Заголовок: Спасибо. В том то и ..


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

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 15
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 23.12.09 12:26. Заголовок: Спасибо. Кое что уже..


Спасибо. Кое что уже становится на места. У меня еще один вопрос что такое "возвращает" ? Кто то у кого то брал взаймы?

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 547
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 23.12.09 14:05. Заголовок: Как угодно называть ..


Как угодно называть не нужно, иначе Вас не будут понимать. Используйте терминологию, принятую в учебнике.

Возвращает - это свойство функции. Если коротко, то в функцию передаются данные (возможно, несколько), а функция возвращает ответ (всегда один). Этот ответ и есть возвращаемое значение. Применительно к разговору о переменных, - значение, возвращаемое функцией, может быть присвоено переменной (каким способом получено значение не важно - то ли это значение константы, то ли выражения, то ли возвращаемое функцией; важно лишь, что это значение имеется).

Функциям посвящен специальный раздел в учебнике.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 16
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 24.12.09 08:10. Заголовок: Можно ли подразумев..


Можно ли подразумевать для себя что возвращает - вычисляет.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 38
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 24.12.09 09:03. Заголовок: В определенном смысл..


В определенном смысле вычисляет. Но здесь ключевое слово именно возвращает, то есть передает значение вызывающей функции. А уже вызывающая функция должна "решать", что делать с этим значением.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 17
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 24.12.09 10:42. Заголовок: Может быть тогда - и..


Может быть тогда - исполняет... Ни как не вяжется у меня " возвращает".

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 549
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 24.12.09 11:42. Заголовок: Mezon пишет: Может ..


Mezon пишет:

 цитата:
Может быть тогда - исполняет... Ни как не вяжется у меня " возвращает".


В соответствующем разделе учебника этот термин рассматривается подробно. Ещё раз настоятельно рекомендую читать последовательно, без забеганий вперёд.
Но коль зашёл разговор, то коротко скажу. В функцию передаются данные (например, маша - 3 яблочка, Вася - 2 ябл., Вова - 5 ябл., Сколько всего?) Функция делает вычисления (складывает эти значения) и результат .. возвращает. Типа, данные - туда, ответ - обратно. Этот ответ (возвращаемое значение) подставляется в то место, откуда активизируется функция, - это позволяет вычислить результирующее значение общего выражения, в котором указана функция с яблочками.

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 550
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 24.12.09 11:49. Заголовок: Сидит тётка в кассе,..


Сидит тётка в кассе, торгует авиабилетами.
Пассажир передаёт кассирше (функции) параметры:
- показывает паспорт
- показывает визу
- передаёт деньги
Тётка всё это берёт через окошко и некоторое время на всё это смотрит, проверяет банкноты, печати в паспорте и пр. - Вычисляет
Потом суёт пассажиру в окошко билет (значение) на самолёт - Возвращает ответ

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 20
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 24.12.09 13:41. Заголовок: Я не забегаю вперед...


Я не забегаю вперед. Просто это слово "возвращает" встретил в тексте впервые и не пойму что к чему. (Я ни когда не занимался программированием, и лет мне много).

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 41
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 24.12.09 19:38. Заголовок: Вам просто придется ..


Вам просто придется привыкнуть к этом термину. Он является устоявшимся. Тем более, что это самый близкий и точный перевод английского слова return, которое как раз и применяется при возвращении результата.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 22
Зарегистрирован: 19.12.09
ссылка на сообщение  Отправлено: 25.12.09 10:53. Заголовок: У меня еще одна про..


У меня еще одна проблемка я не знаю английского.(даже алфавита). Для меня важно понять что при этом происходит а как будет называться - придется привыкать. Спасибо что пытаетесь мне помочь, просьба очень просто объяснять. Я не начинающий программист а только пытаюсь начать стать начинающим...

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 25.03.10
ссылка на сообщение  Отправлено: 25.03.10 05:12. Заголовок: Скажите, пожалуйста,..


Скажите, пожалуйста, как из пользовательского индикатора изменить цвет бара?

Спасибо: 0 
ПрофильЦитата Ответить
Автор




Пост N: 622
Зарегистрирован: 21.05.06
Откуда: Украина, Днепропетровск
ссылка на сообщение  Отправлено: 25.03.10 11:08. Заголовок: Собственно бары можн..


Собственно бары можно раскрасить только через настройки терминала (F8), программным способом их перекрасить нельзя.
Но можно на каждый бар поставить графический объект (трендовую линию) соотв. ширины.
Пример см. здесь http://book.mql4.com/ru/functions/strings

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 7
Зарегистрирован: 22.05.09
Откуда: UA, Северодонецк
ссылка на сообщение  Отправлено: 14.04.10 15:34. Заголовок: Здравствуйте, Сергей..


Здравствуйте, Сергей!
У меня вопрос - описано ли где-то, какие функции при своем исполнении общаются с сервером (как OrderSend), а какие исполняются "не отходя от кассы". Например, MarketInfo( ), или функции, дающие информацию об открытых позициях. Мне кажется это необходимо знать при написании программ, чтобы излишне не грузить сервер, но и актуальность используемых данных не терять.

Надеюсь, смысл вопроса понятно изложил

А еще вопрос - Вы как человек "приближенный" - не знаете ли, когда будет "внедряться" в практику MT5 & MQL5.

А еще вопрос - пишется ли учебник по MQL5, и если ДА, то когда можно будет к нему "приобщиться"

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 64
Зарегистрирован: 03.09.09
ссылка на сообщение  Отправлено: 14.04.10 17:20. Заголовок: Здравствуйте. "..


Здравствуйте.

"Общение" с сервером в МТ4 разделяется на два потока. Один - торговый поток. Через него проводятся все торговые операции. В этом смысле обращение к серверу производят только торговые функции:
  • OrderSend
  • OrderModify
  • OrderClose
  • OrderDelete
    и только в случае прохождения проверки корректности параметров самим терминалом. Загрузить этот поток вы сможете слишком частым использованием перечисленных функций. Что такое "слишком часто" каждый ДЦ определяет для себя индивидуально. В настройках сервера для этого есть соответствующий параметр.

    Второй поток служит для обновления истории котировок терминала (в том числе и новых котировок). Его вы загрузить вряд ли сможете. Обращение к серверу через этот поток вы сможете инициировать в случае, если в текущей истории котировок не хватает нужных данных. Например, текущий график Н1, а вам потребовались данные с графика Н4, но они еще не загружены. В этом смысле обращение к серверу будут производить функции:
  • iLow
  • iHigh
  • iTime
  • iClose
  • iOpen
  • iVolume

    После того, как данные загружены, вторичное обращение к данному участку истории не будет вызывать обращений к серверу.

  • Спасибо: 1 
    ПрофильЦитата Ответить
    Автор




    Пост N: 631
    Зарегистрирован: 21.05.06
    Откуда: Украина, Днепропетровск
    ссылка на сообщение  Отправлено: 14.04.10 18:00. Заголовок: BorodaN пишет: Здра..


    BorodaN пишет:

     цитата:
    Здравствуйте, Сергей!
    У меня вопрос - описано ли где-то, какие функции при своем исполнении общаются с сервером (как OrderSend), а какие исполняются "не отходя от кассы". Например, MarketInfo( ), или функции, дающие информацию об открытых позициях. Мне кажется это необходимо знать при написании программ, чтобы излишне не грузить сервер, но и актуальность используемых данных не терять.

    Надеюсь, смысл вопроса понятно изложил

    А еще вопрос - Вы как человек "приближенный" - не знаете ли, когда будет "внедряться" в практику MT5 & MQL5.

    А еще вопрос - пишется ли учебник по MQL5, и если ДА, то когда можно будет к нему "приобщиться"



    1. Игорь правильно ответил на Ваш вопрос. Могу только добавить, что по ходу жизни технологии могут меняться. Например, если торговый приказ сформирован программой некорректно, он не уйдёт на сервер из терминала. Ошибка вернётся в программу терминалом. Раньше этого не было, теперь так. Т.е. на сервер уходят только корректные торговые приказы.

    2. Учебник пишется. Ожидается к концу лета. A МТ 5 разойдётся как разойдётся. Компания MetaQuotes не публикует список своих потребителей, поэтому точно сказать нелья, может какой-то ДЦ уже и даёт МТ 5.

    Спасибо: 1 
    ПрофильЦитата Ответить



    Не зарегистрирован
    Зарегистрирован: 21.10.10
    ссылка на сообщение  Отправлено: 21.10.10 09:29. Заголовок: Здравствуйте. Подска..


    Здравствуйте. Подскажите начинающему.
    В одном из разделов учебника говорится о том, что существую эксперты с контролем открытия баров, и тестировать их правильно методом - по ценам открытия. Такой алгоритм реализован например в стандартном советнике Moving Average. И там все понятно с кодом.
    Не могу разобраться с известным шаблоном Complex_Expert.mq4. http://www.megaupload.com/?d=T82URWPT<\/u><\/a>
    Там есть такой блок в функции start
    // - 2 - == Контроль открытия нового бара ==============================================
    if (LastBar == Time[0]) //Если время посчитанного бара равно времени текущего бара
    return(0); // то это означает, что новый бар еще не открылся
    Означает ли это тоже контроль открытия баров и тестировать его правильно по ценам открытия.
    p.s. возможно немного не в тему, но пытаюсь изучить сейчас mql по вашему учебнику и совсем запутался, как разобраться где есть явный контроль баров, а где нет, т.е. по тикам.
    с ув. алексей

    Спасибо: 0 
    ПрофильЦитата Ответить
    Автор




    Пост N: 754
    Зарегистрирован: 21.05.06
    Откуда: Украина, Днепропетровск
    ссылка на сообщение  Отправлено: 21.10.10 10:51. Заголовок: Контроль баров - это..


    Контроль баров - это очень просто.
    Каждый бар характеризуется временем открытия. Это - время первого тика в этом баре. В период развития бара (когда поступают новые тики) время открытия бара не изменяется. На этом и свойстве и строится алгоритм контроля факта образования нового бара.

    Вот простая функция:
    void Fun_New_Bar() // Ф-ия обнаружения ..
    { // .. нового бара
    static datetime New_Time=0; // Время текущего бара
    New_Bar=false; // Нового бара нет
    if(New_Time!=Time[0]) // Сравниваем время
    {
    New_Time=Time[0]; // Теперь время такое
    New_Bar=true; // Поймался новый бар
    }
    }

    Переменная New_Bar - должна быть объявлена в основной программе как глобальная. Она принимает одно из двух значений - Истина или Ложь. В момент образования нового бара время открытия бара Time[0] будет иным (например 12345058), не таким как в предыдущих вычислениях (например, 12345000). При исполнении функии в статической переменной New_Time запоминается это время (12345058) и переменная New_Bar получает значение Истина. В основной программе нужно обработать значение New_Bar: если оно истинно, то нужно сделать вычисления, поставленные в соответствие этому событию.

    В процессе развития бара поступают тики, каждый в своё время (12345062, 12345066 и т.д), при этом время открытия бара остаётся неизменным (12345058), а переменная New_Bar всё это время будет иметь значение Ложь (т.е. новый бар на этом тике не образовался). И лишь когда какой-то очередной тик будет принадлежать действительно новому бару, терминал подставит иное значение для Time[0] (например, уже 12345120). В результате в строке if(New_Time!=Time[0]) будет обнаружено несовпадение значений, что свидетельствует о факте образования нового бара. В переменную New_Time будет запомнено новое время образования нового бара (2345120), а переменная New_Bar обретёт значение Истина.

    И так далее, в течение всего периода исполнения программы. Нужно только функцию Fun_New_Bar() вызывать на каждом тике и тут же анализировать значение New_Bar, напимер так:
    Fun_New_Bar(); // Обращение к ф-ии
    if (New_Bar==false) // Если бар не новый..
    return; // ..то уходим
    ... // вычисления на новом баре

    Если в эксперте все вычиления делаются только на каждом новом баре (на первом тике нового бара), то тестировать его нужно по ценам открытия. Вообще говоря, не будет ошибки, если тестировать по всем тикам, но в этом нет смысла, т.к. на всег других тиках кроме барообразующих советник попросту будет сразу заканчивать вычисления и результат в целом будет тот же. Тестирование по ценам открытия позволит ускорить тестирование, т.к. в этом случае эксперт будет вызываться для работы в тестере только 1 раз на каждом баре (а не 4 раза - OHLC).

    Но если эксперт делает полезные вычисления на всех барах (например, торговые решения вычисляет только на новых барах, а в промежутке строит графику, вычисляет какие-то данные и пр.), то тестировать нужно по всем тикам.

    Спасибо: 0 
    ПрофильЦитата Ответить



    Пост N: 1
    Зарегистрирован: 21.10.10
    ссылка на сообщение  Отправлено: 21.10.10 20:20. Заголовок: Огромное спасибо!!! ..


    Огромное спасибо!!! Можно еще уточнить, после исполнения приведенной вами функции, далее я могу использовать любые вычисления или "вычисления, поставленные в соответствие этому событию" обязательно должны содержать массивы-таймсерии Open[1] или Close[1], или High[1], или Low[1]?
    Т.е. если в функции есть массив-таймсерия Time[0], то далее обязательно в вычислениях должен быть использован какой-то из вышеприведенных массивов-таймсерий?

    Спасибо: 0 
    ПрофильЦитата Ответить
    Автор




    Пост N: 756
    Зарегистрирован: 21.05.06
    Откуда: Украина, Днепропетровск
    ссылка на сообщение  Отправлено: 21.10.10 23:13. Заголовок: Мне кажется, Вы не п..


    Мне кажется, Вы не поняли суть.

    Легко понять, что характеристики баров формируются на основании цен и времён тиков.
    Предположим, что на минутном таймфрейме нулевой (самый правый бар) образовался на основе таких пяти тиков:
    1. Время - 13час 27мин 03сек, цена 1.2015
    2. Время - 13час 27мин 18сек, цена 1.2017
    3. Время - 13час 27мин 22сек, цена 1.2008
    4. Время - 13час 27мин 37сек, цена 1.2013
    5. Время - 13час 27мин 55сек, цена 1.2014

    Время первого тика (произошедшего в период с 13.27.00 по 13.27.59 включительно) - 13.27.03. Это - время образования бара. Последующие тики не могут изменить это время. Это - постоянная характеристика этого бара. Это время начала бара сохраняется за ним постоянно, и в период пока бар формируется, и в период следующих новых баров и потом, всегда. С точки зрения MQL время Time[0] будет неизменным в течение указанных пяти тиков.

    Любой тик, произошедший после 13.27.59 (например, в 13.28.01) означает, что этот бар закончился и образовался новый. Новым временем теперь уже нового нулевого бара является время 13.28.01. Бар, только что закончивший формироваться, полyчит индекс 1, а новый (развивающийся) бар имеет индекс 0. Это значит, что если запросить значение Time[0], то оно теперь же бyдет соответствовать времени 13.28.01.

    Для обнаржения факта образования нового бара в программе всегда анализирется значение Time[0]. Текyщее значение Time[0] сравнивается с тем, что было запомнено при последнем образовани нового бара. И если обнарyжена разница, то это свидетельствет об образовании нового бара.

    Это - просто механизм распознавания факта нового бара. Это механизм не имеет никакого отношения к "обязательствам" программиста - "то далее обязательно в вычислениях должен быть использован какой-то из вышеприведенных массивов-таймсерий". НЕТ. Не должен. Никто ничего никомy не должен. Просто в программировании прикладных программ должен присyтствовать здравый смысл.
    Например:

    1. Предположим, что торговля ведётся по некоторомy индикаторy, а yсловие формирования торгового сигнала звyчит так: "если индикаторная линия на только что сформировавшемся (теперь yже первом) баре ниже, чем на предыдyщем, то.." В этом слyчае вычисления, касающиеся торгового критерия, выполняются на том тике, который окрывает новый бар. При этом вычисляются показания индикатора на 1м и 2м барах. А на всех тиках нyлевого бара эти расчёты не нyжны, т.к. на них новый бар не образyется, а если бы эти расчёты на этих тиках выполнялись, то резyльтат был всякий раз одним и тем же, ведь обращение было бы к данным на 1 и 2 барах.

    2. То же самое происходит, если yсловием является расстояние в пyнктах от некой трендовой линии до текyщей цены. Например, "если расстояние на 1м баре больше расстояния на 2м баре ..", тоже нет смысла делать вычисления на каждом тике.

    То же касается и тестирования. Если торговый критерий (и следющий за ним торговый приказ) вычисляется только на новом баре, то нет необходимости проводить тестирование по всем тикам. А тестирование по ценам открытия позволит сэкономить время тестирования вчетверо в сравнении с тестрованием по всем тикам.
    Под фразой "вычисления, поставленные в соответствие этому событию" имелось ввидy вычисление торгового критерия и формирование торгового приказа (открытие, закрытие, модификация ордеров).

    Спасибо: 0 
    ПрофильЦитата Ответить



    Пост N: 2
    Зарегистрирован: 21.10.10
    ссылка на сообщение  Отправлено: 22.10.10 08:22. Заголовок: Все понятно, теперь ..


    Все понятно, теперь с вашей помощью разобрался [img src=/gif/smk/sm12.gif]
    Видимо с самого начала не правильно подошел к этому вопросу, рассматривая только однотипный пример стандартнго советника Moving Average, где:
    //---- go trading only for first tiks of new bar
    if(Volume[0]>1) return;
    ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
    if(Open[1]>ma && Close[1]<ma) ... и т.д.
    А все оказалось гораздо проще.

    Спасибо: 0 
    ПрофильЦитата Ответить



    Пост N: 1
    Зарегистрирован: 10.11.11
    ссылка на сообщение  Отправлено: 10.11.11 09:45. Заголовок: Уважаемый Сергей! у ..


    Уважаемый Сергей!
    у меня вопрос по функции Inform() (http://book.mql4.com/ru/build/info)
    решил ее протестить:
    int start() {
    i+=1;
    Inform(i); Sleep(20000);
    if (i>16) i=1;
    Inform(0);
    return(0);
    }
    работает отлично, но...
    весь журнал (вкладка Эксперты) забит
    2011.11.10 09:51:43 ProbaInfo GBPUSD,M1: object name passed to ObjectSet function cannot be an uninitialized or empty string
    - никак не пойму, в чем дело (((

    Спасибо: 0 
    ПрофильЦитата Ответить
    постоянный участник


    Пост N: 234
    Зарегистрирован: 03.09.09
    ссылка на сообщение  Отправлено: 10.11.11 21:31. Заголовок: Lisser пишет: 2011...


    Lisser пишет:

     цитата:
    2011.11.10 09:51:43 ProbaInfo GBPUSD,M1: object name passed to ObjectSet function cannot be an uninitialized or empty string



    В теле функции Inform используется не инициализированный массив имен объектов Name_Grf_Txt[30]. Если инициализировать его, то все будет нормально. Например, так:

     цитата:

    for (int k = 0; k < 30; k++)
    Name_Grf_Txt[k] = "name_grf_txt_"+k;



    Спасибо: 0 
    ПрофильЦитата Ответить
    Ответов - 61 , стр: 1 2 3 4 5 6 7 All [только новые]
    Ответ:
    1 2 3 4 5 6 7 8 9
    большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

    показывать это сообщение только модераторам
    не делать ссылки активными
    Имя, пароль:      зарегистрироваться    
    Тему читают:
    - участник сейчас на форуме
    - участник вне форума
    Все даты в формате GMT  3 час. Хитов сегодня: 0
    Права: смайлы да, картинки да, шрифты да, голосования нет
    аватары да, автозамена ссылок вкл, премодерация откл, правка нет