Title: IL RISTORANTE
1IL RISTORANTE
2IL PROBLEMA
- In un ristorante si vuole calcolare il conto dei
vari clienti digitando i seguenti dati di input - Numero tavolo
- Numero persone
- Descrizione portata
- Prezzo unitario
- Tipo (AntipastiA Primi piattiB Secondi
piattiC Dolce e fruttaD BevandeE)? - Coperto.
- Determinare
- Il conto di ogni singolo tavolo
- Il totale incassato dal ristorante
- Per ciascun tipo di portata il totale delle unità
vendute e limporto totale relativo - La portata più venduta dal ristorante
- La percentuale di unità distribuite per ciascun
tipo di Portata rispetto al totale.
3STRUTTURA FORM
4START
Questo è l'inizio
P.A. 1
Ntavolo
Ntavolo
Ntavologt-1
ELAB 1
END
5P.A. 1
conta0 contb0 contc0 contd0 conte0
perca0 percb0 percc0 percd0 perce0
Max0 Desc0 coperto1. 50importoa0
importob0 importoc0 importod0 importoe0
totincasso0 max0 perca0 percb0 percc0
percd0 percecoperto0 conttot0
Descportata0.
Questa è la preparazione ambiente
EXIT
6START
Questo è il secondo ciclo
Descportataltgt -1
Ncomponenti
Ntavolo
costoNcomponenticop
Ncomponenti,cop,costo
Descportata
Descportata
ELAB 2
STAMPE FINALI
EXIT
7ELAB 2
Questo è il contenuto della seconda elab
Quantità
P.U.
TIPO
spesaquantitàP.U
Descportata,Quantità,P.U.,spesa
costocostospesa
contacontaQuantità
importoaimportoaspesa
contbcontbQuantità
1
3
importobimportobspesa
4
2
84
3
contccontcQuantità
contdcontdQuantità
conteconteQuantità
importocimportocspesa
importodimportodspesa
importoeimportoespesa
2
1
EXIT
9STAMPE FINALI
conttotcontacontbcontccotdcote
Queste sono le stampe finali
totincassototincassocosto
perca(conta100)/conttot
percb(contb100)/conttot
percc(contc100)/conttot
percd(contd100)/conttot
1
101
perce(conte100)/conttot
importobgtMax
importocgtMax
importoa Max
Max importob
Max importoc
2
112
importodgtMax
Max importod
importoegtMax
Max importoe
totincasso conta contb contc contd conte
perca percb percc percd perceimportoa
importpb importoc importodimportoe Max
12 'preparazione ambiente Public conta As
Double Public contb As Double Public contc As
Double Public contd As Double Public conte As
Double Public perca As Double Public percb As
Double Public percc As Double Public percd As
Double Public perce As Double Public Max As
Double Public importoa As Double Public importob
As Double Public importoc As Double Public
importod As Double Public importoe As
Double Public conttot As Double Public costo As
Double Public totincasso As Double Public coperto
As Double
Questa è la perparazione ambiente
13Public Sub PA()? conta 0 contb 0 contc
0 contd 0 conte 0 perca 0 percb 0 percc
0 percd 0 perce 0 Max 0 Desc 0 importoa
0 importob 0 importoc 0 importod 0 importoe
0 totincasso 0 conttot 0 costo
0 Descportata End Sub
14 Private Sub Cmdinizio_cmdilconto()? While
Txttavolo.Text ltgt -1 elab1 Txttavolo.Text
InputBox(" numero tavolo")? Wend End
Sub Private Sub elab1()? costotxtNcomponenti.t
extcoperto While Txtdescportata.Text ltgt-1
elab2 Txtdescportota.Text
InputBox("descrizione portata")? Wend stampefinali
End Sub
Questo è l'inizio del ciclo di lavoro
15Public Sub elab2()? If Txttipo.Text "A" Then
conta conta Txtquantità.Text importoa
importoaspesa Else If Txttipo.Text "B"
Then contb contb Txtquantità.Text
importob importobspesa Else If
Txttipo.Text "C" Then contc contc
Txtquantità.Text importoc
importocspesa Else If
Txttipo.Text "D" Then contd
contd Txtquantità.Text importod
importocspesa Else
conte conte Txtquantità.Text
importoe importoespesa End If
End If End If
Il secondo ciclo
16End If End Sub Public Sub stampefinali()? perca
(conta 100) / somquantità percb (contb
100) / somquantità percc (contc 100) /
somquantità percd (contd 100) /
somquantità perce (conte 100) /
somquantità conto (somquantità somprezzo)
coperto Max totimpa If importob gt Max Then
Max importob Else End If If importoc gt Max
Then Max importoc Else End If If importod
gt Max Then Max importod Else End If
Le stampe finali!!
17If importoe gt Max Then Max
importoe Else End If MsgBoxtotale delle unità di
tipo a conta MsgBox totale delle unità di
tipo bcontb MsgBoxtotale delle unità di tipo
ccontc MsgBoxtotale delle unità di tipo d
contd MsgBoxtotale delle unità di tipo e
conte MsgBoxpercentuale delle unità di tipo a
perca MsgBoxpercentuale delle unità di tipo b
percb MsgBoxpercentuale delle unità di tipo c
percc MsgBox percentuale delle unità di tipop
d ercd MsgBox percentuale delle unità di tipo
e perce MsgBox L'importo massimo
registratoMax MsgBoxtotale incassato dalla
vendita delle portatate di tipo a
iportoa MsgBoxtotale incassato dalla vendita
delle portatate di tipo b importob MsgBox
totale incassato dalla vendita delle portatate
di tipo c importoc MsgBox totale incassato
dalla vendita delle portatate di tipo d
importod MsgBox totale incassato dalla vendita
delle portatate di tipo e importoe MsgBoxil
totale incassato dal ristorante dalla vendita di
tutte le portate totincasso End Sub