BaselScript


× SPRACHE NACHRICHTEN BESCHREIBUNG BEISPIELFILME INSTALLATION BEISPIELE -------------
   
Beispiele
   
             
   

12_3_test_compute

   
scene=1 name="test compute" colorscheme=__bluegray
// file example_compute(#p1,#o1,#p2,#o2,#p3,#r)
// example of file record: 5+6/28 <=> 5+6/2=8
// 5 -> first operand
// + -> first operation
// 6 -> 2th operand
// / -> 2th operation
// 2 -> 3th operand
// 8 -> result
// state for test ---> 5 ? 6 ? 2=8
// The test objective is to select the operation signs as fast as possible so that the whole expression is true
// this group is called automatically after the script starts
section init
     if #_orientation == portrait
          #form=port
     else
          #form=land
     endif
     file name=example_compute record=(#p1,#o1,#p2,#o2,#p3,#r) directory= #_directory_files_examples
     // define timer with signal every 1 sec
     timer number=1 interval=1000 section= on_timer
     //read file with examples into memory
     read file=example_compute
     // set initial values for statistic
     #total_time =0
     #current_tries =1
     #total_tries=10
     
     #total_time_text=$concat(@|_time_of_solution,": ",#total_time)
     #counter_text=$concat(@|_number_of_tries+": "+#current_tries+"/"+ #total_tries)
     
     #mes=@|_signs
     set visible=0 name=test_or_continue form=#form
     #mode="test"
     // start timer for compute result
     start timer=1
     // select random next task from arrays
     call section=select_next_task
end section

---------------------------------------------------
section select_next_task
     // select random index for arrays
     #i=$math.random(0,#_counter_of_records)
     // 0 <= #i < #_counter_of_records
     // set current values for index
     #operand1=#p1_array[#i]
     #operand2=#p2_array[#i]
     #operand3=#p3_array[#i]
     #oper1 =#o1_array[#i]
     #oper2 =#o2_array[#i]
     #result =#r_array[#i]
     //set first and 2th operation as unknow
     #operation1= "?"
     #operation2="?"
     
     draw form=#form
end section

---------------------------------------------------------------------------------------------------------
form port
     tile=property w=760 h=140 x= 20 color=600 weight=bold
     tile=text name= counter_tries y= 30 text= #counter_text
     tile=text name= total_time_text y= 100 text= #total_time_text
     tile=text name= message y= 280 text=#mes color=900
     // create 2 places for operand1 and operation1 - as buttons without actions
     tile=property w=100 s=45
     tile=button x=0 y=400 text=#operand1 bgcolor=800 color=100
     tile=button x=110 y=400 text=#operation1 bgcolor=400 color=100
     // create 4 buttons for operations1
     tile=property bgcolor=400 color=100 section=select_operation1 x=110 w=100 s=40
     tile=button name=button_1 y=520 text="+"
     tile=button name=button_2 y=630 text="/"
     tile=button name=button_3 y=740 text="*"
     tile=button name=button_4 y=850 text="-"
     // create 2 places for operand2 and operation2 - as buttons without actions
     tile=button x=220 y=400 text=#operand2 bgcolor=800 color=100
     tile=button x=330 y=400 text=#operation2 bgcolor=800 color=100
     // create 4 buttons for operations2
     tile=property bgcolor=400 color=100 section=select_operation2 x= 330 w=100 s=40
     tile=button name=button_5 y=520 text="+"
     tile=button name=button_6 y=630 text="/"
     tile=button name=button_7 y=740 text="*"
     tile=button name=button_8 y=850 text="-"
     
     // create 3 places - for operand3, "=" and result - as buttons without actions
     tile=property bgcolor=800 color=100 y=400 w=100 s=40
     tile=button x= 440 text=#operand3
     tile=button x= 660 text=#result
     tile=button x= 550 text="=" bgcolor=400 color=100
     
     // create 2 buttons with actions
     tile=property bgcolor=900 color=100 s=40 x= 500 w=260
     tile=button name=test_or_continue y=630 text=@_#mode section=test_or_continue
     tile=button name=exit y=980 text=@_back section=back bg=transparent color=900
end form

-----------------------------------------------------------------------
form land
     // title and statistic
     tile=property x= 20 weight=bold color=600 w=1280
     tile=text name= counter_tries y= 30 text= #counter_text
     tile=text name= total_time_text y= 30 text= #total_time_text x=640
     tile=text name= message y= 110 text=#mes color=900
     // create 2 places for operand1 and operation1 - as buttons without actions
     tile=property w=100 s=40
     tile=button x=0+20 y=220 text=#operand1 bgcolor=800 color=100
     tile=button x=110+20 y=220 text=#operation1 bgcolor=400 color=100
     // create 4 buttons for operations1
     tile=property bgcolor=400 color=100 section=select_operation1 x=110+20 w=100 s=40
     tile=button name=button_1 y=350 text="+"
     tile=button name=button_2 y=440 text="/"
     tile=button name=button_3 y=530 text="*"
     tile=button name=button_4 y=620 text="-"
     // create 2 places for operand2 and operation2 - as buttons without actions
     tile=button x=220+20 y=220 text=#operand2 bgcolor=800 color=100
     tile=button x=330+20 y=220 text=#operation2 bgcolor=400 color=100
     // create 4 buttons for operations2
     tile=property bgcolor=400 color=100 section=select_operation2 x= 330+20 w=100 s=40
     tile=button name=button_5 y=350 text="+"
     tile=button name=button_6 y=440 text="/"
     tile=button name=button_7 y=530 text="*"
     tile=button name=button_8 y=620 text="-"
     
     // create 3 places - for operand3, "=" and result - as buttons without actions
     tile=property bgcolor=800 color=100 y=220 w=100 s=40
     tile=button x= 440+20 text=#operand3
     tile=button x= 660+20 text=#result
     
     // result =
     tile=button x= 550+20 text="=" bgcolor=400 color=100
     
     // create 2 buttons with actions
     tile=property bgcolor=900 color=100
     tile=button name=test_or_continue x= 800 y=430 w=360 text=#mode section=test_or_continue
     tile=button name=exit x= 800 y=620 w=360 text=@back section=back bg=transparent color=900
end form

-------------------------------------------------------------
// if one of 4 buttons (button_1 - button_4) was pressed
// #selected_button is name of pressed button
-------------------------------------------------------------
section select_operation1
     if #mode <> "test"
          return
     endif
     // select text (first operation) from pressed button "+ - / *"
     #operation1=#_selected_button_text
     // if the second operation is also selected?
     if #operation2 != "?"
          // make button TEST as visible
          set visible=1 name=test_or_continue form=#form
     endif
     draw form=#form
end section

-------------------------------------------------------------
// if one of 4 buttons (button_5 - button_8) was pressed
// #selected_button is name of pressed button
--------------------------------------------------------------
section select_operation2
     if #mode <> "test"
          return
     endif
     // select text (second operation) from pressed button "+ - / *"
     #operation2=#_selected_button_text
     // if the first operation is also selected?
     if #operation1 != "?"
          // make button TEST as visible
          set visible=1 name=test_or_continue form=#form
     endif
     #total_time_text=$concat(@_total_time+": "+#total_time)
     draw form=#form
end section

--------------------------------------------
section test_or_continue
     call section=test
     if #mode == "test" & #right == 1
          #mode="continue"
          #mes=@|_solution_right
          #total_time_text=$concat(@_total_time+": "+#total_time)
          draw form =#form
          return
     endif
     if #mode == "test" & #right == 0
          #mode="continue"
          #mes=@|_wrong_solution
          #total_time_text=$concat(@_total_time+": "+#total_time)
          draw form=#form
          return
     endif
     if #mode == "continue"
          // test - end of test?
          if #current_tries == #total_tries
               #result=#total_time
               // call scene for save result
               call scene= 2
          endif
          // continue of test
          #mode="test"
          #mes=@|_signs
          set visible=0 name=test_or_continue form=#form
          call section=select_next_task
          
          #current_tries=#current_tries +1
          #total_time_text=$concat(@_total_time+": "+#total_time)
          #counter_text=$concat(@|_number_of_tries,": ",#current_tries,"/", #total_tries)
          draw form =#form
          return
     endif
end section

section back
     call script=12_0_reactiontest
end section

---------------------------------------
section test
     #right=1
     //message $concat(#oper1,"=",#operation1," ",#oper2,"=",#operation2)
     if #oper1 != #operation1 || #oper2 != #operation2
          #right=0
     endif
end section

--------------------------------------
section on_timer
     #total_time=#total_time + 1
     #total_time_text=$concat(@_total_time+": "+#total_time)
     draw form=#form
end section

end scene 1

------------------------------------------------------
scene=2 name="save result" colorscheme=_white
section init
     file name=result_compute record=(#name,#result)
     call dialog= dia
end section

dialog dia
     tile=title text=@|_enter_name
     tile=input name=#name
     tile=button text=save section=save
end dialog

section save
     write_record file=result_compute fields=(#name,#result)
     call scene= 3
end section

section back
     call scene =1
end section

end scene 2

---------------------------------------------------------
scene=3 name=" show results" colorscheme=_white
section init
     if #_orientation == portrait
          #form2=port
     else
          #form2=land
     endif
     const #sort1=result_compute order by (#result) DESC
     file result_compute(#name,#result)
     read file=result_compute sort=#sort1
     #col1=""
     #col2=""
     #col3=""
     #records=$math.min(#_counter_of_records, 10)
     
     for #index= 0 step=1 to=#records section=make_column
     draw form=#form2
     
end section

form res_port
     tile=text name=titel x=0 y=200 w=800 h=100 text=@|_list_records size=45 color=black gravity=center
     tile=text name=col1 x=100 y=300 w=100 h=600 size=35 gravity=right text=#col1
     tile=text name=col2 x=260 y=300 w=300 h=600 size=35 gravity=left text=#col2
     tile=text name=col3 x=450 y=300 w=150 h=600 size=35 gravity=right text=#col3
     tile=button name=back x=300 y=800 w=200 text="back" section=back
end

--------------------------------------------------------------------------
form res_land
     tile=text name=titel x=0 y=200 w=800 h=100 text=@|_list_records size=405 gravity=center
     tile=text name=col1 x=100 y=300 w=100 h=600 size=35 gravity=right text=#col1
     tile=text name=col2 x=260 y=300 w=300 h=600 size=35 gravity=left text=#col2
     tile=text name=col3 x=450 y=300 w=150 h=600 size=35 gravity=right text=#col3
     tile=button name=back x=300 y=620 w=200 text="back" section=back
end

-----------------------------------------------------------------------------
section make_column
     #num=#index+1
     #col1=$concat(#col1,#index,~newline)
     #col2=$concat(#col2,#name_array[#index],~newline)
     #col3=$concat(#col3,#result_array[#index],~newline)
end section

section back
     call scene =1
end section

end scene 3


   
   
   

LIST OF EXAMPLES

1. 000_templates
2. 000_template_dialog_buttons
3. 000_template_dialog_input_name_pass
4. 000_template_dialog_input_number
5. 000_template_dialog_message
6. 000_template_list
7. 000_template_list_from_directory
8. 000_template_menu
9. 000_template_menu_from_array
10. 000_template_menu_from_file
11. 000_template_menu_simple
12. 01_0_notes
13. 01_1_add_notes
14. 01_2_selectall_notes
15. 01_2_select_all_notes
16. 01_3_select_theme_notes
17. 01_4_edit_note
18. 01_5_edit_or_delete_note
19. 02_0_work_with_person
20. 03_0_directory
21. 03_10_directory_list
22. 03_10_show_directory
23. 03_11_copy_from_directory
24. 03_1_create_directory
25. 03_2_delete_directory
26. 03_3_copy_script_from_download
27. 03_4_list_screenshots
28. 03_5_list_cameras
29. 03_6_list_images
30. 03_7_list_icons
31. 03_8_list_flags
32. 03_9_copy_from_whatsapp
33. 04_0_server_and_web
34. 04_1_download_image
35. 04_2_download_music_files
36. 04_3_download_flags
37. 04_4_download_csv_stream
38. 04_6_my_links
39. 04_7_run_program
40. 05_002_draw_graphic
41. 05_003_draw_graphic
42. 05_004_draw_graphic
43. 05_00_draw_graphic
44. 05_01_draw_image
45. 05_02_draw_lines_and_points
46. 05_03_draw_chart
47. 05_04_draw_chart_lines
48. 05_05_draw_text
49. 05_06_draw_polygon
50. 05_07_draw_pendel
51. 05_08_draw_random_circle
52. 05_11_draw_circle
53. 05_12_draw_ellipse
54. 05_13_draw_rect
55. 05_14_draw_rotate
56. 05_14_finger_painting
57. 05_15_draw
58. 05_17_moving_circles
59. 05_18_draw_spiral
60. 05_19_draw_lights
61. 05_20_draw_chart_3columns
62. 05_21_draw_chart3
63. 05_21_draw_chart_points
64. 05_22_draw_color_bar
65. 05_23_pop_up_balls
66. 05_25_move_rect
67. 05_26_draw_arc
68. 05_26_draw_axes
69. 05_26_draw_sector
70. 05_26_draw_segment
71. 06_1_primitive_circle
72. 06_2_primitive_dialog
73. 06_3_primitive_loop
74. 06_4_primitive_menu
75. 06_5_primitive_multiline
76. 06_6_primitive_timer
77. 06_7_primitive_message
78. 06_8_primitive_form
79. 06_9_primitive_hello
80. 07_0_google_map
81. 07_1_show_map_dialog
82. 07_2_search_on_map_dialog
83. 07_3_navi_dialog
84. 07_4_navi_from_file
85. 07_5_map_street
86. 07_6_show_kml
87. 07_7_show_my_place
88. 08_0_form_tiles
89. 08_0_form_tiles_landscape
90. 08_10_tile_rect
91. 08_1_tile_button
92. 08_1_tile_button_landscape
93. 08_2_tile_text
94. 08_3_tile_image
95. 08_4_tile_radiobutton
96. 08_5_tile_checkbox
97. 08_6_tile_seekbar
98. 08_7_tile_spinner
99. 08_8_tile_togglebutton
100. 08_9_tile_switch
101. 09_0_geotest
102. 09_1_flags
103. 09_2_capitals
104. 09_2_capitals.script
105. 10_1_select_file
106. 11_0_work_with_scripts
107. 11_1_select_script
108. 11_2_browse_script
109. 11_4_select_myscript
110. 12_0_reactiontest
111. 12_1_reaction_black_square
112. 12_2_reaction_blue_square
113. 12_3_test_compute
114. 13_0_games
115. 13_1_game15
116. 13_3_puzzle
117. 14_000_work_with_files
118. 14_00_work_with_files
119. 14_0_work_with_files
120. 14_10_edit
121. 14_10_test_format
122. 14_11_encrypting_files
123. 14_12_restructuring
124. 14_12_restructurisation
125. 14_13_sort_and_sum
126. 14_14_convert_files
127. 14_15_update_records
128. 14_16_delete_records
129. 14_17_read_file_to_string
130. 14_18_select_color
131. 14_19_browse_xml
132. 14_1_browse_cars
133. 14_2_create_file
134. 14_3_list_from_file
135. 14_4_read_file
136. 14_5_2_save_result
137. 14_5_save_result
138. 14_6_get_record
139. 14_7_show_records
140. 14_8_select_color
141. 14_9_merge_files
142. 15_0_play_music
143. 16_0_play_sound
144. 17_0_test_function
145. 17_1_test_function_math
146. 17_2_test_function_string
147. 17_3_test_function_date
148. 17_4_test_function_files
149. 17_5_test_function_array
150. 17_6_test_function_all
151. 17_7_test_function_tables
152. 17_8_paragraph
153. 18_0_lessons
154. 18_square_equation
155. 19_0_notification
156. 20_0_calendar_test
157. 21_0_calculator
158. 22_shopping_list
159. 25_1_hash_get_capital
160. 25_2_simple_hash_array
161. 25_3_simple_array
162. 25_4_transform_dictionary
163. 25_work_with_array
164. 26_1_dictionary_support
165. 26_2_dictionary_languages
166. 26_3_dictionary_example
167. 26_dictionary
168. 28_installed_apps
169. 30_0_loop
170. 30_1_read_array_split_loop
171. 30_1_read_array_split_loop.script
172. 30_2_loop_in_loop
173. 30_loop
174. 32_search_internet
175. 32_search_on_the_internet
176. 33_date
177. abstract
178. bouquets
179. buttons-1
180. buttons-2
181. buttons-3
182. buttons-4
183. buttons-5
184. buttons-6
185. call_scriptA
186. call_scriptB
187. creating_dynamic_list
188. creating_dynamic_menu
189. examples_apps
190. examples_apps2
191. examples_basic_elements
192. examples_dialog
193. examples_form
194. examples_list
195. examples_main
196. examples_menu
197. examples_work_with_screen
198. hello_world
199. hello_world_1
200. hello_world_2
201. hello_world_2_landscape
202. hello_world_3
203. hello_world_4
204. hello_world_5
205. hello_world_6
206. hello_world_7
207. muster
208. myscripts
209. pie_chart
210. poem
211. property
212. scaling_form
213. SERVICE_example_person
214. sky
215. sky_landscape
216. words
217. _assistant
218. _assistant_CREATE_DIALOG
219. _assistant_CREATE_FORM
220. _assistant_CREATE_LIST
221. _assistant_CREATE_MENU
222. _assistant_DIALOG
223. _assistant_DIRECTORY
224. _assistant_FORM
225. _assistant_LIST
226. _assistant_MENU
227. _browse_script
228. _calendar
229. _colors
230. _copy_script_from_download
231. _CREATE_FILE_MANAGEMENT
232. _CREATE_FILE_SERVICE
233. _create_script
234. _create_service_file
235. _dictionary
236. _dictionary_example
237. _dictionary_support
238. _directories_extend
239. _download_and_browse_docu
240. _download_sample_list
241. _download_sample_scripts
242. _editor
243. _editor_landscape
244. _editor_portrait
245. _files_menu
246. _FILE_SERVICE
247. _get_dictionary
248. _get_examplescripts_from_server
249. _get_scripts_from_server
250. _get_systemscripts_from_server
251. _globals
252. _language
253. _last
254. _list_files
255. _mainmenu
256. _mainmenu.script
257. _menu
258. _more
259. _muster
260. _mydictionary
261. _mydictionary_example
262. _mydictionary_support
263. _myfirst
264. _my_friends
265. _notifications
266. _popupmenu
267. _popupmenu_win
268. _repaire
269. _sample_list
270. _scripts_menu
271. _selectmyscript
272. _selectproject
273. _selectsample
274. _selectsystem
275. _SERVICE_for_example_person
276. _setting_colorscheme
277. _setting_config
278. _setting_dateformat
279. _setting_emails
280. _setting_font
281. _setting_friends
282. _setting_language
283. _setting_menu
284. _setting_menu2
285. _setting_parameters
286. _setting_profile
287. _setup2
288. _setup3
289. _setup4
290. _setup6
291. _setup7
292. _setup_download_files
293. _setup_download_flags
294. _setup_download_icons
295. _setup_download_images
296. _setup_download_music
297. _setup_download_schemes
298. _setup_download_sound
299. _system_sound
300. _tables
301. _tables_fields
302. _template_dialog
303. _template_dialogue
304. _template_form
305. _template_list
306. _template_menu
307. _test_profile
308. _thanks
309. _trace
310. _upload_script
   
Die bereitgestellten Screenshots können geringfügig von den tatsächlichen Ergebnissen der Skripte abweichen.