mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
3 years ago | |
---|---|---|
.. | ||
README.md | 3 years ago |
README.md
General
Can you confirm that the program reads a file that describes the processes, analyzes the entire file and proposes a valid solution?
Does the project contain a checker program?
Can you confirm that at least two configuration files were made by the project owner?
Can you confirm that those files are not a copy/paste of the ones provided?
Can you confirm that one of those files ends when the resources are consumed and the other one rotate indefinitely?
Can you confirm that those files obey the given file format?
Functional
Try to run the stock exchange program with the files created by the owner of the project.
Can you confirm that those files are working with the program?
Try to run the stock exchange program with the files created by the owner of the project.
Does the program produce a log file?
Can that log file be used by the checker program?
Try to run the stock exchange program with the simple example, "./stock examples/simple/simple 1"
.
$ go run . examples/simple/simple 1
Main Processes :
0:buy_materiel
10:build_product
40:delivery
No more process doable at cycle 61
Stock :
euro => 2
materiel => 0
product => 0
client_content => 1
$
Does the display present a result similar to the one above (optimizing time;client_content)?
Try to run the stock exchange program with the build example, "./stock examples/build/build 10"
.
$ go run . examples/build/build 10
Main Processes :
0:do_shelf
0:do_shelf
0:do_shelf
0:do_doorknobs
0:do_doorknobs
0:do_background
20:do_cabinet
No more process doable at cycle 51
Stock :
board => 0
doorknobs => 0
background => 0
shelf => 0
cabinet => 1
$
Does the display present a result similar to the one above (optimizing time;cabinet)?
Try to run the stock exchange program with the seller example, "./stock examples/seller/seller 10"
.
$ go run . examples/seller/seller 10
Main Processes :
0:optimize_profile
0:code
1:code
101:optimize_profile
101:sell_skills
101:sell_skills
101:code
102:code
111:code
211:optimize_profile
211:sell_skills
211:sell_skills
212:sell_skills
212:code
222:code
322:sell_skills
No more process doable at cycle 333
Stock :
repos => 0
transport => 0
skills => 1
fame => 0
euro => 601
$
Does the display present a result similar to the one above (optimizing euro)?
Try to run the stock exchange program with the fertilizer example, "./stock examples/fertilizer/fertilizer 1"
.(fertilizer example is self-powered and rotates indefinitely)
$ go run . examples/fertilizer/fertilizer 1
Main Processes :
...
3973515:eat_apple
3973516:plant_apple
3973616:pick_apple
3973620:eat_apple
3973621:plant_apple
3973721:pick_apple
3973725:eat_apple
No more process doable at cycle 3973727
Stock :
apple => 0
you => 1
seed => 1
fertilizer => 1
happiness => 37846
apple_tree => 0
$
Does the display present a result similar to the one above, (optimizing happiness), choosing a reasonable shutdown condition and showing that the whole process went well for several times?
Run the same example with a different waiting time "./stock examples/fertilizer/fertilizer 0.0003"
.(fertilizer example is self-powered and rotates indefinitely)
Does the display present a result with a significantly shorter number of cycles comparing to the previous question output?
Try to run the stock exchange program with the error1 example, "./stock examples/errors/error1 1"
.
$ go run . examples/errors/error1 1
Error while parsing `:(euro:8):(material:1):10`
Exiting...
$
Does the display present a result similar to the one above, where it shows the error?
Try to run the stock exchange program with the error2 example, "./stock examples/errors/error2 1"
.
$ go run . examples/errors/error2 1
Missing processes
Exiting...
$
Does the display present a result similar to the one above, where it shows the error?
Try to run the stock exchange program with the error3 example, "./stock examples/errors/error3 1"
.
$ go run . examples/errors/error3 1
Error while parsing `optimize:(euro)`
Exiting...
$
Does the display present a result similar to the one above, where it shows the error?
Try to run the checker program with the build and the build.log example, "./checker examples/build/build examples/build/build.log"
.
$ go run ./checker examples/build/build examples/build/build.log
Evaluating: 0:do_shelf
Evaluating: 0:do_shelf
Evaluating: 0:do_shelf
Evaluating: 0:do_doorknobs
Evaluating: 0:do_doorknobs
Evaluating: 0:do_background
Evaluating: 20:do_cabinet
Trace completed, no error detected.
$
Does the display present a result similar to the one above, where it shows the last cycle and the proof that the sequence is correct?
Try to run the checker program with the seller and the seller.logexample, "./checker examples/seller/seller examples/seller/seller.log"
.
$ go run ./checker examples/seller/seller examples/seller/seller.log
Evaluating: 0:optimize_profile
Evaluating: 0:code
Evaluating: 1:code
Evaluating: 101:optimize_profile
Evaluating: 101:sell_skills
Evaluating: 101:sell_skills
Evaluating: 101:code
Evaluating: 102:code
Evaluating: 111:code
Evaluating: 211:optimize_profile
Evaluating: 211:sell_skills
Evaluating: 211:sell_skills
Evaluating: 212:sell_skills
Evaluating: 212:code
Evaluating: 222:code
Evaluating: 322:sell_skills
Trace completed, no error detected.
$
Does the display present a result similar to the one above, where it shows the last cycle and the proof that the sequence is correct?
Try to run the checker program with the testchecker and testchecker.log example, "./checker examples/checkererror/testchecker examples/checkererror/testchecker.log"
.
$ go run ./checker examples/checkererror/testchecker examples/checkererror/testchecker.log
Evaluating: 0:do_shelf
Evaluating: 0:do_shelf
Evaluating: 0:do_doorknobs
Evaluating: 0:do_doorknobs
Evaluating: 0:do_background
Evaluating: 20:do_cabinet
Error detected
at 20:do_cabinet stock insufficient
Exiting...
$