// script automa distributore caffe-cappuccino
autore { "pallino - caio" }
moore {
input {soldi { 100, 200, 500, Caffe, Cappuccino }
} immediato
stati { s0, // credito 0 Lire
s1, // credito 100 Lire
s2, // credito 200 Lire
s3, // credito 300 Lire
s4, // credito 400 Lire
s5, // credito 500 Lire
s6, // credito 600 Lire
s7, // credito 700 Lire
s8, // credito 800 Lire
s9, // credito 900 Lire
s10, // credito 1000 Lire
s11, // Emetto caffe - credito 0
s12, // Emetto caffe - credito 100
s13, // Emetto caffe - credito 200
s14, // Emetto caffe - credito 300
s15, // Emetto caffe - credito 400
s16, // Emetto caffe - credito 500
s17, // Emetto caffe - credito 600
s18, // Emetto cappuccino - credito 0
s19, // Emetto cappuccino - credito 100
s20, // Emetto cappuccino - credito 200
s21, // Emetto cappuccino - credito 300
s22, // Emetto cappuccino - credito 400
s23, // Restituisco moneta - credito 600
s24, // Restituisco moneta - credito 700
s25, // Restituisco moneta - credito 800
s26, // Restituisco moneta - credito 900
s27} // Restituisco moneta - credito 1000
output {dispay {
{d1 , "mancano soldi" }
{d2 , "scelta : caffe" }
{d3 , "scelta : caffe o cappuccino" }
{d4 , "non accetta altri soldi : effetuare la scelta" }
}
sportello {
{s0 , ""}
{s1 , "ritira il caffe" }
{s2 , "ritira il cappuccino" }
}
resto {
{m0 , ""}
{m1 , "restituisce la moneta immessa"}
}
}
transizione {
//Ingresso 100 200 500 Caf Cap
/* S0 */ {s1, s2, s5, s0, s0} // credito 0 Lire
/* S1 */ {s2, s3, s6, s1, s1} // credito 100 Lire
/* S2 */ {s3, s4, s7, s2, s2} // credito 200 Lire
/* S3 */ {s4, s5, s8, s3, s3} // credito 300 Lire
/* S4 */ {s5, s6, s9, s11,s4} // credito 400 Lire
/* S5 */ {s6, s7, s10,s12,s5} // credito 500 Lire
/* S6 */ {s23,s23,s23,s13,s18} // credito 600 Lire
/* S7 */ {s24,s24,s24,s14,s19} // credito 700 Lire
/* S8 */ {s25,s25,s25,s15,s20} // credito 800 Lire
/* S9 */ {s26,s26,s26,s16,s21} // credito 900 Lire
/* S10 */ {s27,s27,s27,s17,s22} // credito 1000 Lire
/* S11 */ {s1, s2, s5, s0, s0} // Emetto caffe - credito 0
/* S12 */ {s2, s3, s6, s1, s1} // Emetto caffe - credito 100
/* S13 */ {s3, s4, s7, s2, s2} // Emetto caffe - credito 200
/* S14 */ {s4, s5, s8, s3, s3} // Emetto caffe - credito 300
/* S15 */ {s5, s6, s9, s11,s4} // Emetto caffe - credito 400
/* S16 */ {s6, s7, s10,s12,s5} // Emetto caffe - credito 500
/* S17 */ {s23,s23,s23,s13,s18} // Emetto caffe - credito 600
/* S18 */ {s1, s2, s5, s0, s0} // Emetto cappuccino - credito 0
/* S19 */ {s2, s3, s6, s1, s1} // Emetto cappuccino - credito 100
/* S20 */ {s3, s4, s7, s2, s2} // Emetto cappuccino - credito 200
/* S21 */ {s4, s5, s8, s3, s3} // Emetto cappuccino - credito 300
/* S22 */ {s5, s6, s9, s11,s4} // Emetto cappuccino - credito 400
/* S23 */ {s23,s23,s23,s13,s18} // Restituisco moneta - credito 600
/* S24 */ {s24,s24,s24,s14,s19} // Restituisco moneta - credito 700
/* S25 */ {s25,s25,s25,s15,s20} // Restituisco moneta - credito 800
/* S26 */ {s26,s26,s26,s16,s21} // Restituisco moneta - credito 900
/* S27 */ {s27,s27,s27,s17,s22} // Restituisco moneta - credito 1000
}
uscite {
/* S0 */ {d1,s0,m0}, // credito 0 Lire
/* S1 */ {d1,s0,m0}, // credito 100 Lire
/* S2 */ {d1,s0,m0}, // credito 200 Lire
/* S3 */ {d1,s0,m0}, // credito 300 Lire
/* S4 */ {d2,s0,m0}, // credito 400 Lire
/* S5 */ {d2,s0,m0}, // credito 500 Lire
/* S6 */ {d3,s0,m0}, // credito 600 Lire
/* S7 */ {d4,s0,m0}, // credito 700 Lire
/* S8 */ {d4,s0,m0}, // credito 800 Lire
/* S9 */ {d4,s0,m0}, // credito 900 Lire
/* S10 */ {d4,s0,m0}, // credito 1000 Lire
/* S11 */ {d1,s1,m0}, // Emetto caffe - credito 0
/* S12 */ {d1,s1,m0}, // Emetto caffe - credito 100
/* S13 */ {d1,s1,m0}, // Emetto caffe - credito 200
/* S14 */ {d1,s1,m0}, // Emetto caffe - credito 300
/* S15 */ {d1,s1,m0}, // Emetto caffe - credito 400
/* S16 */ {d1,s1,m0}, // Emetto caffe - credito 500
/* S17 */ {d1,s1,m0}, // Emetto caffe - credito 600
/* S18 */ {d1,s2,m0}, // Emetto cappuccino - credito 0
/* S19 */ {d1,s2,m0}, // Emetto cappuccino - credito 100
/* S20 */ {d1,s2,m0}, // Emetto cappuccino - credito 200
/* S21 */ {d1,s2,m0}, // Emetto cappuccino - credito 300
/* S22 */ {d1,s2,m0}, // Emetto cappuccino - credito 400
/* S23 */ {d1,s0,m1}, // Restituisco moneta - credito 600
/* S24 */ {d1,s0,m1}, // Restituisco moneta - credito 700
/* S25 */ {d1,s0,m1}, // Restituisco moneta - credito 800
/* S26 */ {d1,s0,m1}, // Restituisco moneta - credito 900
/* S27 */ {d1,s0,m1} // Restituisco moneta - credito 1000
}
}
|