информатика1ё / wesna / labor1 / 12в
.doc12 вариант
Даны массивы a i (i=1,2,…,k), b i (i=1,2,…,L), c i (i=1,2,…,m). Найти общее число отрицательных элементов этих массивов. В программе использовать подпрограмму нахождения число отрицательных элементов массивов. Значения k,L,m и значения элементов массивов заранее неизвестны и должны вводиться в процессе выполнения программы.
Подпрограмма типа GOSUB
INPUT “K<L<M”; K,L,M
DIM A(K), B(L), C(M), X(M)
FOR I=1 TO K
INPUT A(I): X(I)=A(I): NEXT I: N=K
GOSUB M1: S1=S
FOR I=1 TO L
INPUT B(I): X(I)=B(I): NEXT I: N=L
COSUB M1: S2=S
FOR I=1 TO M
INPUT C(I): X(I)=C(I): NEXT I: N=M
GOSUB M1: S3=S
NN=S1+S2+S3: PRINT NN: END
M1: S=O
FOR I=1 TO N
IF X(I)<0 THEN S=S+1
NEXT I: RETURN
Подпрограмма типа SUB
INPUT “K≤L≤M”; K,L,M
DIM A(K), B(L), C(M), X(M)
DECLARE SUM (X( ),N,S)
FOR I=1 TO K
INPUT A(I): NEXT I: CALL SUM (A( ),K,S1)
FOR I=1 TO L
INPUT B(I): NEXT I: CALL SUM (B ),L,S2
FOR I=1 TO M
INPUT C(I): NEXT I: CALL SUM (C( ),M,S3)
NN=S1+S2+S3: PRINT “NN=”; NN: END
SUB SUM (X( ),N,S): S=O
FOR I=1 TO N
IF X(I)<0 THEN S=S+1
NEXT I: END SUB
Подпрограмма типа FUNCTION
INPUT “K≤L≤M”; K,L,M
DIM A(K), B(L), C(M), X(M)
DECLARE FUNCTION SUM (X( ),N)
S=0: FOR I=1 TO K
INPUT A(K): NEXT K
FOR I=1 TO L
INPUT B(I): NEXT I
FOR I=1 TO M
INPUT C(I): NEXT I
NN=SUM(A( ),K)+SUM(B( ),L)+SUM(C( ),M): PRINT “NN=”; NN: END
FUNCTION SUM (X( ),N): S=O
FOR I=1 TO N
IF X(I)<0 THEN S=S+1
NEXT I: SUM=S: END FUNCTION