Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
1. Составить определение и вызов функции подсчета суммы N первых элементов массива вещественных чисел.
Решение задачи на языке Turbo Pascal:
Type Massiv = array [1..100] of real;
Function Sum (M: Massiv, N: Integer): Real;
Var
S: Real;
I: Integer;
Begin
S:= 0;
I:=1;
While I<=N do begin
S:= S + M[I];
I:=I + 1;
end;
Sum:=S;
end;
Var
X: Massiv;
Begin
…
{вызов функции для вычисления суммы 10 элементов массива }
Sum (X, 10);
End.
2. Дано описание двух функций FNA и FNB и фрагмент программы на языке Basic:
DEF FNA (X) = 4*X
DEF FNB (A, B) = SQR (A + B)
…..
X = 1: A = 5: B = 4
Z = FNA(X) + FNA(A) + FNA (2)
W = FNB (Z, B)
PRINT Z; PRINT W
Что будет выведено?
Решение.
Z = FNA(1) + FNA(5) + FNA(2) = 4*1 + 4*5 + 4*2 = 32,
W = FNB (32, 4) = SQR (32 + 4) = Ö36 = 6
Будет выведено 32 6
3. Каким будет результат выполнения команд на языке Basic:
DEF FNX (A) = 5* A – C
C = 1
Y = FNX (FNX(1))
PRINT Y, FNX I
Решение. Y = FNX (5*1 – 1) = FNX(4) = 5*4 – 1 = 19
FNX(C) = 5*1-1 = 4
Будет выведено 19 4
4. Каким будет результат выполнения следующих команд на языке Basic, если введены числа 10, 15:
DEF FNX (A, B)
IF A>B THEN
FNX = 5* (A – B)
ELSE
FNX = B*B
END IF
END DEF
INPUT “C=”, C, “D=”, D
Y = FNX (C, D)
PRINT Y
Решение. Переменные C = 10, D = 15. Функция FNX(10, 15) = 15*15 = 225.
5. Каким будет результат выполнения следующих команд на языке Basic, если введены числа 6 7 5 4 8:
N = 5
DIM A(N)
CALL VVOD (N, A())
CALL OBR (N, A())
CALL VIVOD (N, A())
S =0
FOR I = 1 TO N
S = S + A(I)
NEXT I
PRINT “S= “,S
END
SUB VVOD (N, M())
FOR I=1 TO N
INPUT M(I)
NEXT I
END SUB
SUB OBR (N, M())
FOR I=1 TO N
IF M(I) mod 2 >0 THEN M(I) = M(I) +1
NEXT I
END SUB
SUB VIVOD(N, M())
FOR I=1 TO N
PRINT M(I)
NEXT I
END SUB
Решение.
Вызов подпрограммы CALL VVOD (N, A()) заполняет массив из 5 элементов: А(1)=6, А(2)=7, А(3)=5, А(4)=4, А(5)=8. Вызов подпрограммы CALL OBR (N, A()) преобразует массив А(): каждый нечетный элемент увеличивает на единицу, тогда значения элементов массива А(1)=6, А(2)=7+1=8, А(3)=5+1=6, А(4)=4, А(5)=8.Вызов подпрограммы CALL VIVOD (N, A()) выводит значения массива А(). Далее в программе вычисляется и выводится сумма элементов массива.
Результат работы программы будет следующий:
6 8 6 4 8 S=32
6. Дано описание двух функций FNA и FNB и фрагмент программы на языке Basic:
DEF FNA (X) = 2*X +5
DEF FNB (A, B) = A ^2+ B^2
…..
X = 0: A = 5: B = 4
Z = FNA(X) * FNA(2) – FNA (5)
W = FNB (A, B)
PRINT Z; PRINT W
Что будет выведено?
7. Каким будет результат выполнения следующих команд на языке Basic, если введены числа –23, 12:
DEF FNX (A, B)
IF abs (A) > B THEN
FNX = 2* (A + B)
ELSE
FNX = abs (A)*B
END IF
END DEF
INPUT “C=”, C, “D=”, D
Y = FNX (C, D)
PRINT Y
8. Каким будет результат выполнения следующих команд на языке Basic:
N = 5
DIM A(N, N)
FOR I=1 TO N
FOR J = 1 TO N
A(I, J) = 2*I –J
IF A(I,J) <0 THEN A(I,J)= N- A(I,J)
NEXT J
NEXT I
CALL OBR (N, A())
CALL VIVOD (N, A())
END
SUB OBR (N, M())
FOR I=1 TO N
FOR J=1 TO N
IF M(I,J) mod 3 >0 THEN M(I,J) = M(I,J) *3
NEXT J
NEXT I
END SUB
SUB VIVOD(N, M())
FOR J=1 TO N
S=0
FOR I=1 TO N
S=S+M(I, J)
NEXT I
PRINT “S(“, J, “)=”, S
NEXT J
END SUB
Дата публикования: 2015-01-14; Прочитано: 250 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!