
информатика1ё / wesna / labor1 / 8в
.docЗадание 8
Вычислить выражение
В программе использовать подпрограмму
для получения суммы
;
значения
и элементов массива
ввести в процессе выполнения программы.
Подпрограмма типа GOSUB
INPUT K
CLS
M = 2 * K
DIM X (M)
FOR i =1 TO M
INPUT X (i)
NEXT i
=1: M4 = K
GOSUB M1
IF SS < 1 THEN GOTO M3
= 1: M4 = K - 5
GOSUB M1
T = SS
GOTO M4
M3:
= K + 5
M4 = 2 * K
GOSUB M1
T = SS
M4: PRINT “T=”; T
END
M1: SS=0
FOR
i =
TO M4
SS = SS + ABS (X (i))
NEXT I
RETURN
Подпрограмма типа SUB
DECLARE
SUB SUM (,M,X(
), S)
CLS
INPUT K
M = 2 * K
DIM X (M)
FOR i =1 TO M
INPUT X (i)
NEXT i
=1: M4 = K
CALL SUM
(,M,X(
), S)
IF S < 1 THEN GOTO M3
=1: M = K - 5
CALL SUM
(,M,X(
), S)
T = S
GOTO M4
M3:
=K+5: M = 2*K
CALL
SUM (,M,X(
), S)
T = S
M4: PRINT “T=”; T
END
SUB SUM
(,M,X(
), S)
S = 0
FOR i =1 TO M
S = S + ABS(X(i))
NEXT i
END SUB
Подпрограмма типа FUNCTION
DECLARE
FUNCTION SUM (,M,X(
))
CLS
INPUT K
M = 2 * K
DIM X (M)
FOR i =1 TO M
INPUT X (i)
NEXT i
=1: M = K
IF SUM
(,M,X(
))<1
THEN GOTO M3
=1: M = K - 5
T = SUM
(,M,X(
))
GOTO M4
M3:
=K+5: M = 2*K
T=
SUM (,M,X(
))
M4: PRINT “T=”; T
END
FUNCTION SUM
(,M,X(
))
FOR
i =
TO M
S = S + ABS(X(i))
NEXT i
SUM = S
END FUNCTION