Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задачи с решениями.doc
Скачиваний:
24
Добавлен:
24.12.2018
Размер:
110.59 Кб
Скачать

Input a(I)

NEXT I

MIN = A(1): IMIN = 1

FOR I = 1 TO N

IF A(I) < MIN THEN

MIN = A(I)

IMIN = I

END IF

NEXT I

PRINT "MIN="; MIN; "IMIN="; IMIN;

END

Дан одномерный массив

Найти последний максимальный элемент массива

DIM I AS INTEGER, N AS INTEGER, MAX AS INTEGER, IMAX AS INTEGER

INPUT "N="; N

DIM A%(N)

FOR I = 1 TO N

PRINT "A(="; I; ")=";

Input a(I)

NEXT I

MAX = A(N): IMAX = N

FOR I = N TO 1 STEP -1

IF A(I) > MAX THEN

MAX = A(I)

IMAX = I

END IF

NEXT I

PRINT "MAX="; MAX; "IMAX="; IMAX;

END

Дан одномерный массив, все элементы которого различны.

Поменять местами наибольший и наименьший элементы массива.

DIM I AS INTEGER, N AS INTEGER, MAX AS INTEGER, IMAX AS INTEGER, MIN AS INTEGER, IMIN AS INTEGER, B AS INTEGER

INPUT "N="; N

DIM A%(N)

FOR I = 1 TO N

PRINT "A(="; I; ")=";

Input a(I)

NEXT I

MAX = A(1): IMAX = 1: MIN = A(1): IMIN = 1

FOR I = 1 TO N

IF A(I) > MAX THEN

MAX = A(I)

IMAX = I

END IF

IF A(I) < MIN THEN

MIN = A(I)

IMIN = I

END IF

NEXT I

B = A(IMAX): A(IMAX) = A(IMIN): A(IMIN) = B

FOR I = 1 TO N

PRINT "A("; I; ")="; A(I);

NEXT I

END

Дан одномерный массив.

Подсчитать количество отрицательных, положительных и нулевых элементов

массива.

DIM I AS INTEGER, N AS INTEGER, OTR AS INTEGER, POL AS INTEGER, NUL AS INTEGER

INPUT "N="; N

DIM A%(N)

FOR I = 1 TO N

PRINT "A(="; I; ")=";

Input a(I)

NEXT I

OTR = 0: POL = 0: NUL = 0

FOR I = 1 TO N

IF A(I) > 0 THEN

POL = POL + 1

ELSEIF A(I) < 0 THEN

OTR = OTR + 1

ELSE

NUL = NUL + 1

END IF

NEXT I

PRINT "POL="; POL; "OTR="; OTR; "NUL="; NUL

END

Дан одномерный массив. Определить составляют ли элементы

массива строго возрастающую последовательность (первый способ).

DIM I AS INTEGER, N AS INTEGER, K AS INTEGER

INPUT "N="; N

DIM A%(N)

FOR I = 1 TO N

PRINT "A(="; I; ")=";

Input a(I)

NEXT I

K = 0

FOR I = 1 TO N - 1

IF A(I + 1) > A(I) THEN K = K + 1

NEXT I

IF K = N - 1 THEN PRINT "YES" ELSE PRINT "NO"

END

Дан одномерный массив. Определить составляют ли элементы

массива строго возрастающую последовательность (второй способ).

DIM I AS INTEGER, N AS INTEGER, F AS INTEGER

INPUT "N="; N

DIM A%(N)

FOR I = 1 TO N

PRINT "A(="; I; ")=";

Input a(I)

NEXT I

F = 0

FOR I = 1 TO N - 1

IF A(I + 1) <= A(I) THEN F = 1

NEXT I

IF F = 0 THEN PRINT "YES" ELSE PRINT "NO"

END

Дан массив А из 2*N элементов.

Получить новую последовательность A1, A2N, A2, A2N-1, …, AN, AN+1

DIM I AS INTEGER, N AS INTEGER

INPUT "N="; N

DIM A%(2 * N), B%(2 * N)

FOR I = 1 TO 2 * N

PRINT "A(="; I; ")=";

Input a(I)

NEXT I

B = A(1)

FOR I = 1 TO N

B(2 * I - 1) = A(I)

B(2 * I) = A(2 * N - I + 1)

NEXT I

A(N) = B

FOR I = 1 TO 2 * N

PRINT "B("; I; ")="; B(I);

NEXT I

END

Дан массив А из 2*N элементов.

Получить новую последовательность A2N, AN, A2N-1, …, AN+1, A1.

DIM I AS INTEGER, N AS INTEGER

INPUT "N="; N

DIM A%(2 * N), B%(2 * N)

FOR I = 1 TO 2 * N

PRINT "A(="; I; ")=";