Presentazione Visual Basic

22
By : Autera matteo

Transcript of Presentazione Visual Basic

Page 1: Presentazione Visual Basic

By :

Autera matteo

Page 2: Presentazione Visual Basic

In un ristorante si vuole calcolare il conto dei vari clienti digitando le seguenti informazioni:

• numero tavolo • numero componenti tavolo (tenendo presente che il coperto è di 1,50€ a persona)• descrizione della portata• quantità della portata• prezzo unitario della portata• tipo della portata (A=antipasto; B=primi piatti; C=secondi piatti; D=frutta; E=bevande)

Calcolare:• conto di ogni singolo tavolo • il totale generale • per ciascun tipo di portata il totale delle unità vendute e l’importo totale relativo• Quale è la portata che ha reso di più come importo?• La percentuale delle unità distribuite per ciascun tipo di portata.

Page 3: Presentazione Visual Basic

* num tavolo<>-1

PA

NUMTAVOLO

*

ELAB

NUMTAVOLO

STAMPE FINALI

END

START

Page 4: Presentazione Visual Basic

PA

contA=0 contB=0contC=0 max=0contD=0 percA=0contE=0 percB=0percC=0 totimporto=0percD=0 desc=0percE=0 totimpA=0C1=1,50 totimpB=0totimpC=0 totimpD=0totimpE=0 somU=0totincasso=0

EXIT

Page 5: Presentazione Visual Basic

ELAB

NUMCOMPONENTI

*

ELAB2

NUMCOMPONENTI

EXIT

COPERTO=C1*NUMCOMPONENTI

CONTO=COPERTO+TOTIMPORTO

TOTINCASSO=TOTINCASSO+CONTO

* numcomponenti <>-1

Page 6: Presentazione Visual Basic

DESCRIZIONE

ELAB2

DESCRIZIONE

*

ELAB3

EXIT

* descrizione<> “0”

Page 7: Presentazione Visual Basic

ELAB3

QUANTITA’

P UNITARIO

TIPO

contA=contA+1

imp=(Punitario*quantità)

TIPO=B

contB=contB+1TIPO=C

TIPO =A

12

3 4

Page 8: Presentazione Visual Basic

1 2 3 4

totimpA=totimpA+imp

TIPO=D

TIPO=E

Imp=( Punitario * quantità)

totimpB=totimpB+imp

Imp=Punitario*quantità

totimpC=totimpC+imp

contD=contD+1contE=contE+1

Imp=Punitario*quantità

totimpD=totimpD+imp

Imp=Punitario*quantità

totimpE=totimpE+imp

contC=contC+1

5

Page 9: Presentazione Visual Basic

5

Totimporto=totimporto+importo

exit

somU=somU+1

Page 10: Presentazione Visual Basic

Stampefinali

Max=totimpA

TotimpB>max Max=totimpB

totimpC>max Max=totimpC

totimpD>max Max=totimpD

6

Page 11: Presentazione Visual Basic

6

imptotE>max

Max=imptotE

percA=( contA / somU)*100

percB=(contB/somU)*100

percC=(contC/somU)*100

percE=(contE/somU)*100

percD=(contD/somU)*100

contA,contB,contC,contD,contE,percA,percB,percC,percD,percE,somU,max,totimpA,totimpB,totimpC,totimpD,totimpE,totimporto

exit

Page 12: Presentazione Visual Basic
Page 13: Presentazione Visual Basic

start fine

Numero tavolo

Numero componenti

Descrizione portata

Quantità portata

Prezzo unitario

Tipo portata cmdfine

cmdinizio

txttavolo

txtcomponenti

txtdescrizione

txtquantità

txtprezzo

txttipo

Page 14: Presentazione Visual Basic

Private Sub Form_Load()Call paEnd Sub

‘preparazione ambiente

Public coperto As DoublePublic c1 As DoublePublic somU As DoublePublic totimpA As DoublePublic totimpB As DoublePublic totimpC As DoublePublic totimpD As DoublePublic totimpE As DoublePublic totimporto As DoublePublic totincasso As DoublePublic importo As DoublePublic conto As DoublePublic max As DoublePublic percA As DoublePublic percB As DoublePublic percC As DoublePublic percD As DoublePublic percE As Double

Page 15: Presentazione Visual Basic

Public contA As DoublePublic contB As DoublePublic contC As DoublePublic contD As DoublePublic contE As DoublePublic desc As Double

‘azzeramento variabiliPublic Sub pa()coperto = 0c1 = 1.5somU = 0totimpA = 0totimpB = 0totimpC = 0totimpD = 0totimpE = 0totimporto = 0conto = 0importo = 0max = 0

Page 16: Presentazione Visual Basic

percA = 0percB = 0percC = 0percD = 0percE = 0desc = 0contA = 0contB = 0contC = 0contD = 0totincasso = 0contE = 0

End Sub

Page 17: Presentazione Visual Basic

Private Sub cmdinizio_Click()While Txttavolo.Text <> -1 elab1 Txttavolo.Text = InputBox("numero tavolo")Wend stampefinaliEnd SubPrivate Sub elab1()While Txtcomponenti.Text <> -1 elab2 Txtcomponenti.Text = InputBox("numero componenti")Wend coperto = c1 * Txtcomponenti.Text conto = totimporto + coperto totincasso = totincasso + contoEnd Sub

Private Sub elab2()While Txtdescrizione.Text <> "0" elab3 Txtdescrizione.Text = InputBox("descrizione portata")WendEnd Sub

Primo ciclo di lavoro

Secondo ciclo di lavoro

Primo ciclo di lavoro

Page 18: Presentazione Visual Basic

Private Sub elab3()If Txttipo.Text = A Then contA = contA + Txtquantità.Text importo = Txtprezzo.Text * Txtquantità.Text totimpA = totimpA + importoElse If Txttipo.Text = B Then contB = contB + Txtquantità.Text importo = Txtprezzo.Text * Txtquantità.Text totimpB = totimpB + importo Else If Txttipo.Text = C Then contC = contC + Txtquantità.Text importo = Txtprezzo.Text * Txtquantità.Text totimpC = totimpC + importo Else If Txttipo.Text = D Then contD = contD + Txtquantità.Text importo = Txtprezzo.Text * Txtquantità.Text totimpD = totimpD + importo

Terzo ciclo di lavoro

Page 19: Presentazione Visual Basic

Else If Txttipo.Text = E Then contE = contE + Txtquantità.Text importo = Txtprezzo.Text * Txtquantità.Text totimpE = totimpE + importo Else MsgBox "ERRORE tipo della portata non valido" End If End If End If End IfEnd Iftotimporto = totimporto + importosomU = somU + Txtquantità.TextEnd Sub

Page 20: Presentazione Visual Basic

Private Sub stampefinali()percA = (contA / somU) * 100percB = (contB / somU) * 100percC = (contC / somU) * 100percD = (contD / somU) * 100percE = (contE / somU) * 100max = totimpAIf totimpB > max Then max = totimpBElse If totimpC > max Then max = totimpC Else If totimpD > max Then max = totimpD Else If totimpE > max Then max = totimpE End If End If End IfEnd If

Page 21: Presentazione Visual Basic

MsgBox "totale unità vendute tipo A=" & contAMsgBox "totale unità vendute tipo B=" & contBMsgBox "totale unità vendute tipo C=" & contCMsgBox "totale unità vendute tipo D=" & contDMsgBox "totale unità vendute tipo E=" & contEMsgBox "totale ricavato dalla vendita tipo A=" & totimpAMsgBox "totale ricavato dalla vendita tipo B=" & totimpBMsgBox "totale ricavato dalla vendita tipo C=" & totimpCMsgBox "totale ricavato dalla vendita tipo D=" & totimpDMsgBox "totale ricavato dalla vendita tipo E=" & totimpEMsgBox "totale unità vendute di tutti i tipi=" & somUMsgBox "percentuale unità vendute tipo A=" & percAMsgBox "percentuale unità vendute tipo B=" & percBMsgBox "percentuale unità vendute tipo C=" & percCMsgBox "percentuale unità vendute tipo D=" & percDMsgBox "percentuale unità vendute tipo E=" & percEMsgBox "totale incassato dal ristorante=" & totincassoMsgBox "totale importo ricavato dalla vendita di tutte le unità=" & totimportoMsgBox "unità da cui è ricavato il maggior importo=" & max

End Sub

Page 22: Presentazione Visual Basic