Sei sulla pagina 1di 2

TRACCIA PROGRAMMA N°14

Date le seguenti informazioni, relative ai dipendenti di un’azienda, separate da un - :


COGNOME( 20caratteri ), NOME( 20 caratteri ), QUALIFICA( 1 carattere: o =operaio, s =operaio
specializzato, i =impiegato), STIPENDI MENSILE( 4 + 2 caratteri ).
Determinare:
1) il numero degli operai con più di 10 anni di anzianità e stipendio mensile inferiore a 1.000€;
2) lo stipendio medio degli impiegati con meno di 15 anni di anzianità;
3) il cognome e nome dell’operaio specializzato con almeno 20 anni di anzianità, avente lo
stipendio mensile maggiore.

TABELLA DELLE VARIABILI 1° PUNTO


NOME DESCRIZIONE FORMATO DIMENSIONE TIPO NOTE
N Numero dei dipendenti dell’azienda NUM 3 I /
INFO Informazioni di ogni dipendente ALF 54 I /
OPERAI Numero degli operai con + di 10 NUM 3 O /
anni di anzianità e stipendio mensile
minore di 1.000€
C Contatore NUM 3 E /
ANZ Anni di anzianità di un dipendente NUM 2 E /
STIP Stipendio di ogni dipendente NUM 4+2 E /

FLOW CHART 1° PUNTO

INIZIO 2 1
I
N
C = C+1
C=0
C
OPERAI=0
=N
I
INFO O

OPERAI
ANZ = VAL(RIGHT( INFO, 2))

STP = VAL(MID(INFO, 45, 7) FINE

V ANZ > 10 F
AND
STP > 1.000€

OPERAI = OPERAI+1

2 1
CODIFICA DEL FLOW CHART IN VISUAL BASIC 1° PUNTO

PRIVATE SUB MAIN ( )

DIM N AS INTEGER
DIM INFO AS STRING*54
DIM OPERAI AS INTEGER
DIM C AS INTEGER
DIM ANZ AS BYTE
DIM STIP AS LONG

N = INPUTBOX(“numero dei dipendenti”)


C=0
OPERAI = 0

DO
INFO = INPUTBOX(“informazioni di ogni dipendente”)
ANZ = VAL ( RIGHT ( INFO, 2 ))
STIP = VAL ( MID ( INFO, 45, 7 ))
IF ANZ > 10 AND STIP < 1.000€ THEN
OPERAI = OPERAI+1
AND IF
C = C+1
LOOP UNTIL C=N

MSGBOX ( OPERAI )

AND SUB

TABELLA DELLE VARIABILI 2° PUNTO


NOME DESCRIZIONE FORM. DIM. TIPO NOTE
N NUM 3 I /
INFO ALF 54 I /
SM NUM 4+2 O /
C NUM 3 E /
ANZ NUM 2 E /
QUAL ALF 1 E O =operai,
s=op.specializ.,
i =impiegato.
SOMMA NUM 7+2 E /
IMP NUM 3 E /
STIP NUM 4+2 E /