Консультация № 178258
07.05.2010, 02:01
0.00 руб.
0 2 1
Помогите решить задачу на Basic

Ai - Bsr, если Сi>0
Yi = (Amax^2 + Bsr^4), если Ci<0
|Asr*Bmin|, если Сi = 0

Asr, Bsr - среднее значение массивов
Bmin - минимальное значение массивов
Amax - максимальное значение массивов
|X| - абсолютная величина

Примечание: все строчны буквы в нижнем регистре

Обсуждение

давно
Модератор
137394
1850
07.05.2010, 17:55
общий
это ответ
Здравствуйте, KuvART.
Во первых, уточняю задачу, я понимаю, что условие должно выглядеть так:

Yi = Ai - Bsr, если Сi>0
Yi = (Amax^2 + Bsr^4), если Ci<0
Yi = |Asr*Bmin|, если Сi = 0

Asr, Bsr - среднее значение массивов A и B соответственно
Bmin - минимальное значение массива B
Amax - максимальное значение массива A
|X| - абсолютная величина


Вы не указали в каком Basic надо это сделать. Я выбрал QBasic
Вот решение
Код:
CLS
N = 10 ' Размерность массивов

REDIM A(N - 1) AS SINGLE, B(N - 1) AS SINGLE, C(N - 1) AS SINGLE, Y(N - 1) AS SINGLE


RANDOMIZE TIMER ' Инициализируем генератор случайных чисел.


FOR i = 0 TO N - 1 ' Заполняем исходные массивы случайными числами -10<=x<=10

A(i) = (21 * RND) - 10
B(i) = (21 * RND) - 10
C(i) = (21 * RND) - 10

NEXT i

' C(5) = 0 ' Отладочное значение


' Ищем Asr Bsr Amax Bmin

Asr = 0
Bsr = 0
Amax = A(0)
BMin = B(0)

FOR i = 0 TO N - 1

Asr = Asr + A(i)
Bsr = Bsr + B(i)

IF Amax < A(i) THEN Amax = A(i)
IF BMin > B(i) THEN BMin = B(i)

NEXT i

Asr = Asr / N
Bsr = Bsr / N

' Вычисляем массив Y
FOR i = 0 TO N - 1

IF C(i) > 0 THEN Y(i) = A(i) - Bsr
IF C(i) < 0 THEN Y(i) = Amax ^ 2 + Bsr ^ 4
IF C(i) = 0 THEN Y(i) = ABS(Asr * BMin)

NEXT i



' Выдача исходных данных и результатов

PRINT " i A(i) B(i) C(i) Y(i)"

FOR i = 0 TO N - 1

PRINT USING "##"; i;
PRINT USING "####.##"; A(i);
PRINT USING "####.##"; B(i);
PRINT USING "####.##"; C(i);
PRINT USING "####.##"; Y(i)

NEXT i

PRINT
PRINT " Asr="; USING "###.##"; Asr;
PRINT " Bsr="; USING "###.##"; Bsr;
PRINT " Amax="; USING "###.##"; Amax;
PRINT " Bmin="; USING "###.##"; BMin
5
Об авторе:
Понеже не словес красных бог слушает, но дел наших хощет
Неизвестный
07.05.2010, 21:38
общий
Megaloman:
Большое спасибо...
Форма ответа