JOURFIXE

It is currently Thu Mar 28, 2024 11:50 am

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 56 posts ]  Go to page 1, 2, 3, 4, 5, 6  Next
Author Message
 Post subject: Need help! Ой как NEED HELP!
PostPosted: Sat Nov 10, 2018 1:08 pm 
Offline
User avatar

Joined: Thu Sep 06, 2007 12:20 am
Posts: 18469
Location: Шоам, Израиль
Гражданы программисты и примкнувшие!
Спаситя-помогитя-недайте помереть дурой!

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

И вот первый мой глюпый вопрос по теме.
Я вон там выделила жырненьким несколько четверок в тексте. Это всё одна и та же четверка. И как я есть получила программистское воспитание в программировании процедурами, а вовсе ни разу не классами - имею я сильное желание: определить где-нить глобальную константу int типа навроде

public const int ArrowXInit = 4;

Ну и, значить, пользоваться ей в отмеченных местах.
Можно так сделать? И где именно ее определять?


<script type="text/javascript">
document.styleSheets[0].insertRule('.formulas_number { display: none !important; }', 0);
</script>

grab vector
<p></p><p>&nbsp;
<jsxgraph width="600" height="400" box="box1">var brd = JXG.JSXGraph.initBoard('box1', {boundingbox:[-21,16,21,-16], axis:true,showCopyright:false,
showNavigation:false});

brd.options.point.showInfobox=true;

brd.options.point.snapToGrid=true;
var p1 = brd.create('point', [-18,0],{size:1,color:'red',name:' B', fixed: true});
var p2 = brd.create('point', [-18,4],{size:1,color:'red',name:'A', fixed: true});
var p3 = brd.create('point', [-4,0],{style:5,color:'red',name:' F', fixed: true});
var p4 = brd.create('point', [4,0],{style:5,color:'red',name:'F', fixed: true});
var p5 = brd.create('point', [-15,-5],{size:1,color:'blue',name:' '});
var p6 = brd.create('point', [-2,-5],{size:1,color:'blue',name:' '});

var li0 = brd.create('arrow',[p1,p2], {straightFirst:false, straightLast:false, strokeWidth:4,color:'red' });

var li1 = brd.create('line',[[0,7],[0,-7]], {straightFirst:false, firstArrow:true, straightLast:false, lastArrow:true, strokeWidth:8, fixed: true, color:'gray'});
var li2 = brd.create('line',[[-18,4],[0,4]], {straightFirst:false, firstArrow:false, straightLast:false, lastArrow:true, strokeWidth:2});
var li3 = brd.create('line',[p5,p6], {straightFirst:false, straightLast:false, lastArrow:true, color:'blue', strokeWidth:2, visible:true});
var li4 = brd.create('line',[[0,4],p4], {straightFirst:false, straightLast:true, lastArrow:true, color:'gray', strokeWidth:2, visible:false});

brd.create('text', [1,10, function()
{if(((li3.point1.X() == 0 &amp;&amp; li3.point1.Y() == 4 &amp;&amp; li3.point2.Y() &lt; 0 &amp;&amp;
(li3.point2.Y() - 4)/li3.point2.X() == li4.getSlope()
)))
{document.getElementsByClassName('formulas_number')[0].value = {res};return 'well done';}
else
{document.getElementsByClassName('formulas_number')[0].value = 0; return ' ';}}]);

</jsxgraph></p>


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sat Nov 10, 2018 2:07 pm 
Offline
User avatar

Joined: Sun Sep 09, 2007 11:53 pm
Posts: 18377
Location: St.-Petersburg, Russia
Как ты есть получила воспитание, Алена, то должна заметить - это javascript

Которого я не знаю, но догадываюсь, что можно сделать как-то так:

Code:
<script type="text/javascript">
document.styleSheets[0].insertRule('.formulas_number { display: none !important; }', 0);
</script>

grab vector
<p></p><p>&nbsp;
<jsxgraph width="600" height="400" box="box1">var brd = JXG.JSXGraph.initBoard('box1', {boundingbox:[-21,16,21,-16], axis:true,showCopyright:false,
showNavigation:false});

brd.options.point.showInfobox=true;

brd.options.point.snapToGrid=true;

var four_alena = 4

var p1 = brd.create('point', [-18,0],{size:1,color:'red',name:' B', fixed: true});
var p2 = brd.create('point', [-18,four_alena],{size:1,color:'red',name:'A', fixed: true});
var p3 = brd.create('point', [-4,0],{style:5,color:'red',name:' F', fixed: true});
var p4 = brd.create('point', [4,0],{style:5,color:'red',name:'F', fixed: true});
var p5 = brd.create('point', [-15,-5],{size:1,color:'blue',name:' '});
var p6 = brd.create('point', [-2,-5],{size:1,color:'blue',name:' '});

var li0 = brd.create('arrow',[p1,p2], {straightFirst:false, straightLast:false, strokeWidth:4,color:'red' });

var li1 = brd.create('line',[[0,7],[0,-7]], {straightFirst:false, firstArrow:true, straightLast:false, lastArrow:true, strokeWidth:8, fixed: true, color:'gray'});
var li2 = brd.create('line',[[-18,four_alena],[0,four_alena]], {straightFirst:false, firstArrow:false, straightLast:false, lastArrow:true, strokeWidth:2});


Поскольку скриптовый язык упрощен по сравнению со стандартом, то

1. константу нельзя объявить как константу - используй var
2. явное указание типа тоже запрещено - опять-таки используй var

https://learn.javascript.ru/variables

_________________
Кот домашний средней пушистости


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sat Nov 10, 2018 6:51 pm 
Offline
Квисац Хадерах
User avatar

Joined: Sat Sep 08, 2007 10:06 pm
Posts: 12456
С JSXGraph я не знаком, но примерно как Домнич описал должно получится. Если нет, то под первым тэгом <script>. Да и HTML это язык форматирования, а не программирования.

_________________
...и другим местом пум-па-па, пум-па-па... (c) хмельник
...а потом мы с ним обсуждали, кто тут козел. (c) Rembat


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sat Nov 10, 2018 10:39 pm 
Offline
User avatar

Joined: Sun Sep 16, 2007 1:38 am
Posts: 11291
Location: Israel, Netanya
https://www.w3schools.com/js/js_const.asp
Константы (оччень хитрые) есть в стандарте 2015 года.

_________________
- Яч смить бю?
- Фыва прол джэ, йцук енгш!


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sat Nov 10, 2018 11:33 pm 
Offline
User avatar

Joined: Sun Sep 09, 2007 11:53 pm
Posts: 18377
Location: St.-Petersburg, Russia
Alex wrote:
https://www.w3schools.com/js/js_const.asp
Константы (оччень хитрые) есть в стандарте 2015 года.

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

var four_alena = 4;

_________________
Кот домашний средней пушистости


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sun Nov 11, 2018 3:52 pm 
Offline
User avatar

Joined: Thu Sep 06, 2007 12:20 am
Posts: 18469
Location: Шоам, Израиль
Domnitch wrote:
Alex wrote:
https://www.w3schools.com/js/js_const.asp
Константы (оччень хитрые) есть в стандарте 2015 года.

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

var four_alena = 4;
Муад'Диб wrote:
С JSXGraph я не знаком, но примерно как Домнич описал должно получится. Если нет, то под первым тэгом <script>. Да и HTML это язык форматирования, а не программирования.


СПАСИБО!!!!!!!
Я знала, что вы мне поможете!

Никогда на скрипте ничего не писала , за и на джаве, да и на С++, если честно, недалеко ушла от "Хелло, ворлд!", и то триста лет назад.

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

Наша контора, года 4 использует эту бандуру (не свою, она все-израильская, и поддерживает ее институт Вайцмана). Простые "американские" тесты - это, конечно, совсем тупо, но в основном, дальше довольно примитивных простеньких расчетных задач никто не продвинулся.
Курс для девятых классов (это - пред-багрутный класс, там обязательной программы нет) - у нас весь заложен в .тую самую мудель. Примерно 12-13 тем, по каждой - презентация пауэр-пойнт (или две) и прочая, плюс домашнее задание в виде квиза - простых расчетных задач. В прошлом году мне было не до того - мне надо было слишком многое освоить разного. Так что я тупо брала готовые темы для своих девятых классов - когда было время и настроение, подшаманивала, или шла по готовому.

Но сейчас до меня дошло, что я хочу с этим делать - а хочу я много.
Задачи такого типа - это то, что у нас, в основном, умеют делать - пошли практически, как пирожки на конвейере. Фишка тут в том, что исходные данные каждые раз задаются рандомально, и тренироваться можно много раз. Кроме того, я так хитро строю последовательность задач, что они сами догоняют многие тонкости - и им это нравится!
Attachment:
Moodle1.png
Moodle1.png [ 45.23 KiB | Viewed 5848 times ]


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

Ну вотъ. Брагодаря вам, я за прошедший вечер и пару часов сегодня уже умею практически не хуже, а местами и лучше.
Вот - синий и зеленый вектор задаются рандомальными параметрами снаружи, а скрипт их отрисовывает и зает возможность перетащить красненький вектор, чтобы соединить их концы - разность векторов. И возвращает логическую переменную, правильный ли ответ.
Attachment:
Moodle2.png
Moodle2.png [ 11.25 KiB | Viewed 5838 times ]


А вот тут - два вектора, у которых координаты можно менять слайдером. Оно еще и внизу отрисовывает длины векторов и их углы, каждый своим цветом.
Attachment:
Moodle3.png
Moodle3.png [ 13.08 KiB | Viewed 5826 times ]


Дико жалею, что всё, что у меня в голове уже сложилось - еще писать и писать. Сотни мелких задач. Но дети в восторге. Даже то, что есть - про перемены забывают, не оттащишь.

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

Еще раз всем огромное спасибо!


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sun Nov 11, 2018 4:06 pm 
Offline
User avatar

Joined: Thu Sep 06, 2007 12:20 am
Posts: 18469
Location: Шоам, Израиль
ЗЫ. Зная меня, вы, конечно, можете не сомневаться, что я спрошу еще и не раз - и очередной вопрос прямо ща. Даже два.

1. Кто-нить знает, может ли этот JSXGraph отрисовать параболу? И где это посмотреть, если да. (В мануалах я ничё не понимаю - мне нужен образец кода, там я по интуиции часто догоняю).

2. Второй вопрос.
Слайдер, которым я хвасталась, я содрала в инете - вот такой код.
Code:
var b1 = JXG.JSXGraph.initBoard('box1', {boundingbox: [-7.5, 7.5, 12.5, -7.5], axis: true});
b1.suspendUpdate();

var a = b1.create('slider',[[-5,-2],[5,-2],[-5,1,5]],{name:'a'});
var b = b1.create('slider',[[-5,-3],[5,-3],[-5,0,5]],{name:'b'});
var c = b1.create('slider',[[-5,-4],[5,-4],[-5,0,5]],{name:'c'});
var d = b1.create('slider',[[-5,-5],[5,-5],[-5,1,5]],{name:'d'});

var v = b1.create('point',[2,2],{size:3,name:'v'});
var w = b1.create('point',[-2,1],{size:3,name:'w'});
var va = b1.create('line',[[0,0],v],{straightFirst:false, straightLast:false, lastArrow:true});
var wa = b1.create('line',[[0,0],w],{straightFirst:false, straightLast:false, lastArrow:true});
b1.unsuspendUpdate();

  var b2 = JXG.JSXGraph.initBoard('box2', {boundingbox: [-7.5, 7.5, 12.5, -7.5], axis: true});
  b1.addChild(b2);
  b2.suspendUpdate();

  var v2 = b2.create('point',[
       function() {return a.Value()*v.X()+b.Value()*v.Y();},
       function() {return c.Value()*v.X()+d.Value()*v.Y();}],{face:'[]',size:2,name:"v'"});
  var w2 = b2.create('point',[
       function() {return a.Value()*w.X()+b.Value()*w.Y();},
       function() {return c.Value()*w.X()+d.Value()*w.Y();}],{face:'[]',size:2,name:"w'"});
  var va2 = b2.create('line',[[0,0],v2],{straightFirst:false, straightLast:false, lastArrow:true});
  var wa2 = b2.create('line',[[0,0],w2],{straightFirst:false, straightLast:false, lastArrow:true});
  var t = b2.create('text',[-6,-2,function(){ return '|'+(a.Value()).toFixed(2)+' '+(b.Value()).toFixed(2)+'|'+'<br>'+'|'+(c.Value()).toFixed(2)+' '+(d.Value()).toFixed(2)+'|';}]);
  b2.unsuspendUpdate();


Там, по идее, как я понимаю, должно открываться второе дочернее окно b2, которое реагирует на игру со сладерами в родительском окне b1.
АВХ. Родительское окно само по себе заработало сразу, но без дочернего. Завожу дочернее - отрисовывает только сами окна, и еще оси - почему-то только в дочернем. И всё. Убираю дочернее - работает.

Что я делаю не так? Ес-сно, если кто знает ответы без долгих размышлений.

Ышшо раз спасибо! :rose:


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Sun Nov 11, 2018 4:19 pm 
Offline
User avatar

Joined: Thu Sep 06, 2007 12:20 am
Posts: 18469
Location: Шоам, Израиль
ЗЗЫ. Вопрос с параболой уже отпал, я нашла и научилась с полпинка. Ну, то исть, надо еще внести смысл в параметры - но это дело техники.

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


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Thu Oct 31, 2019 5:06 pm 
Offline
User avatar

Joined: Thu Sep 06, 2007 12:20 am
Posts: 18469
Location: Шоам, Израиль
Товарищи программисты, снова прошу помощи зала.

За истекший период мои усения в джаве сильно продвинулись, но одну весчь я никак до конца не вкурю.

Фукции в объектно-ориентированных языках как-то сильно отличаются от процедурно-ориентированных, а посему я до сих пор толком умею их плёхо-плёхо.

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

Дано.
1. Массив точек
target_points=[]

2. Я хочу посчитать сумму его х-координат.

Пишу функцию вроде как по образцу
https://www.codingame.com/playgrounds/8 ... -functions

function SumPointsX() {
var i;
var sum = 0;

for (i = 0; i &lt; arguments.length; i++) {
//sum = sum + points[i].X();
sum += 1.;
}
return sum;
}

и вызываю
var SumX = function SumPointsX(target_points);

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

Что я делаю не так?


Top
 Profile  
 
 Post subject: Re: Need help! Ой как NEED HELP!
PostPosted: Thu Oct 31, 2019 10:27 pm 
Offline

Joined: Fri Sep 07, 2007 11:39 am
Posts: 7076
Alona wrote:
Товарищи программисты, снова прошу помощи зала.

За истекший период мои усения в джаве сильно продвинулись, но одну весчь я никак до конца не вкурю.

Фукции в объектно-ориентированных языках как-то сильно отличаются от процедурно-ориентированных, а посему я до сих пор толком умею их плёхо-плёхо.

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

Дано.
1. Массив точек
target_points=[]

2. Я хочу посчитать сумму его х-координат.

Пишу функцию вроде как по образцу
https://www.codingame.com/playgrounds/8 ... -functions

function SumPointsX() {
var i;
var sum = 0;

for (i = 0; i &lt; arguments.length; i++) {
//sum = sum + points[i].X();
sum += 1.;
}
return sum;
}

и вызываю
var SumX = function SumPointsX(target_points);

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

Что я делаю не так?
У тебя в цикле переменная "arguments". Там, где "arguments.length". Откуда эта "arguments" взялась, ты точно её хотела туда поставить, а не что-нибудь другое?

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

_________________
Пух. Винни Пух.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 56 posts ]  Go to page 1, 2, 3, 4, 5, 6  Next

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group