-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathintervalles.html
148 lines (141 loc) · 4.83 KB
/
intervalles.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>intervalles</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" />
<script src="http://cdnjs.cloudflare.com/ajax/libs/coffee-script/1.4.0/coffee-script.min.js"></script>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script src="http://code.jquery.com/ui/1.8.21/jquery-ui.min.js"></script>
<script src="https://raw.github.com/furf/jquery-ui-touch-punch/master/jquery.ui.touch-punch.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css"/>
<style>
#interv1 .ui-slider-range.ui-widget-header {background: lightblue; }
#interv2 .ui-slider-range.ui-widget-header {background: lightgreen; }
#interv3 .ui-slider-range.ui-widget-header {background: darkred; }
</style>
</head>
<body>
<script type="text/coffeescript">
intersection = (I,J) ->
[Math.max(I[0],J[0]), Math.min I[1],J[1] ]
$ ->
a=-20
b=50
c=20
d=80
I=[a,b]
J=[c,d]
K=[c,b]
$( ".curseur" ).width 400
$( ".curseur" ).height 10
####################Tout ce qui se passe quand on actionne le curseur pour I
$( "#interv1" ).slider
orientation: "horizontal"
range: true
min: -200
max: 200
values: [-20,50]
slide: (event,ui) ->
I=ui.values
$( "#affiche1" ).text I
J=$( "#affiche2" ).text().split ","
K=intersection I,J
if K[0]>K[1]
K=""
$("#vide").html "I ∩ J = ∅ : On dit que I et J sont disjoints"
else
$("#vide").html ""
$( "#afficheI" ).text K
$( "#interv3" ).slider "values",K
if J[0]<=I[0] and I[1]<=J[1]
$( "#IdansJ").html "Tiens, I∩J=I: On dit que I est inclus dans J et on note I⊂J"
else
$( "#IdansJ").html ""
if J[0]>=I[0] and I[1]>=J[1]
$( "#JdansI").html "Tiens, I∩J=J: On dit que J est inclus dans I et on note J⊂I"
else
$( "#JdansI").html ""
if J[0]<=I[0] and I[1]<=J[1] and J[0]>=I[0] and I[1]>=J[1]
$( "#IegalJ").html "Tiens, I⊂J et J⊂I: On a donc I=J"
else
$("#IegalJ").html ""
if I[1]>=J[0] and J[1]>=I[0]
a=Math.min I[0], J[0]
b=Math.max I[1], J[1]
$("#unionJack").html "I∪J est l'intervalle [#{a};#{b}]"
else
$("#unionJack").html "On constate que la réunion de deux intervalles n'est pas forcément un intervalle; par contre l'intersection de deux intervalles est toujours un intervalle, éventuellement vide..."
####################Tout ce qui se passe quand on actionne le curseur pour J
$( "#interv2" ).slider
orientation: "horizontal"
range: true
min: -200
max: 200
values: [20,80]
slide: (event,ui) ->
J=ui.values
$( "#affiche2" ).text J
I=$( "#affiche1" ).text().split ","
K=intersection I,J
if K[0]>K[1]
K=""
$("#vide").html "I ∩ J = ∅ : On dit que I et J sont disjoints"
else
$("#vide").html ""
$( "#afficheI" ).text K
$( "#interv3" ).slider "values",K
if J[0]<=I[0] and I[1]<=J[1]
$( "#IdansJ").html "Tiens, I∩J=I: On dit que I est inclus dans J et on note I⊂J"
else
$( "#IdansJ").html ""
if J[0]>=I[0] and I[1]>=J[1]
$( "#JdansI").html "Tiens, I∩J=J: On dit que J est inclus dans I et on note J⊂I"
else
$( "#JdansI").html ""
if J[0]<=I[0] and I[1]<=J[1] and J[0]>=I[0] and I[1]>=J[1]
$( "#IegalJ").html "Tiens, I⊂J et J⊂I: On a donc I=J"
else
$("#IegalJ").html ""
if I[1]>=J[0] and J[1]>=I[0]
a=Math.min I[0], J[0]
b=Math.max I[1], J[1]
$("#unionJack").html "I∪J est l'intervalle [#{a};#{b}]"
else
$("#unionJack").html "On constate que la réunion de deux intervalles n'est pas forcément un intervalle; par contre l'intersection de deux intervalles est toujours un intervalle, éventuellement vide..."
####################gestion du curseur rouge qui ne doit pas être actionné
$( "#interv3" ).slider
orientation: "horizontal"
range: true
min: -200
max: 200
values: [20,80]
slide: (event,ui) ->
K=ui.values
$( "#interv3" ).slider "disable"
$( "#plusloin" ).accordion collapsible: true
</script>
<h2>Intervalles de réels</h2>
<div id="interv1" class="curseur"></div>
I=[<span id="affiche1">-20,50</span>]
et J=[<span id="affiche2">20,80</span>]
<div id="interv2" class="curseur"></div>
<div id="plusloin">
<h3>Intersection</h3>
<div>I ∩ J = [<span id="afficheI">20,50</span>] (en rouge, tout ce qui est
à la fois bleu et vert)
<div id="interv3" class="curseur"></div>
<p id="vide"></p>
</div>
<h3><a>Réunion</a></h3>
<div><p id="unionJack"></p></div>
<h3><a>Inclusion</a></h3>
<div><ul>
<li id="IdansJ"></li>
<li id="JdansI"></li>
<li id="IegalJ"></li>
</ul></div>
</div>
</body>
</html>