The following is a list of salaries of the six employees in a certain company:
Name Salary
T. Angel $43,000
F. Smith $31,000
K. Johnston $22,000
P. Miner $18,000
C. Altman $27,000
A. Lu $19,000
Read a single dimension array for name and another array for Salary. Calculate and output the average salary for the company as well as the names of all people whose salaries exceed the average.
How would I write this program?
Maybe something like this?
DIM EmployeeNam(1 TO 16), Salary(1 TO 6)
GOSUB InitializeVariables
GOSUB LoadTables
CLS
GOSUB PrintDetail
GOSUB PrintSubtotals
GOSUB PrintTotals
END
InitializeVariables:
LET PageCt = 0
LET Salary = 0
LET T1$ = " Salary for employees ##"
LET H1$ = ""
LET H2$ = " Name Salary "
LET D1$ = " \ / $###.## "
LET ST$ = " \ \ SUBTOTAL #"
LET TL$ = " TOTAL #"
LET MaxLines = 30
RETURN
'******************************
' Read numbers into the array
' *****************************
LoadTables:
FOR N = 1 TO 6
READ EmployeeNam(N), Salary(N)
LET AvgSalary = Salary + Salary(N)
NEXT N
DATA T. Angel, 43,000
DATA F. Smith, 31,000
DATA K. Johnston,22,000
DATA P. Miner, 18,000
DATA C. Altman, 27,000
DATA A. Lu, 19,000
DATA 0,0,0
DATA END
RETURN
PrintDetail:
PRINT H2$
FOR N = 1 TO 6
PRINT USING D1$; EmployeeNam(N); Salary(N); 'Print details
NEXT N
RETURN
PrintSubtotals:
LET AvgIncome = Salary / 6 'Calc average income
RETURN
PrintTotals:
PRINT USING "$##,###.## \ \"; AvgSalary; "is the average Salary"
GOSUB PrintAboveAverage
RETURN
PrintAboveAverage:
PRINT H2$
FOR N = 1 TO 6
IF Salary(N) > AvgSalary THEN
PRINT USING D1$; EmployeeNam(N); Salary(N)
END IF
NEXT N
RETURN
Can someone please help me
2 answers
READ EmployeeNam(N), Salary(N)