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

Input ; " ", a(I, j)

NEXT J

PRINT

NEXT I

PRINT "BXODNAIA MATRICA A "

FOR I = 1 TO M

FOR J = 1 TO N

PRINT A(I, J);

NEXT J

PRINT

NEXT I

FOR I = 1 TO M

F = 0

FOR J = 1 TO N - 1

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

NEXT J

IF F = 0 THEN B(I) = 1 ELSE B(I) = 0

NEXT I

PRINT "BIXODNAIA MASSIV B "

FOR I = 1 TO M

PRINT B(I);

NEXT I

END

Дана прямоугольная матрица.

Построить вектор B, где B[i] - номера строк последних

минимальных элементов в i-ом столбце

DIM I AS INTEGER, J AS INTEGER, N AS INTEGER

DIM M AS INTEGER, MIN AS INTEGER, IMIN AS INTEGER

INPUT "M="; M

INPUT "N="; N

DIM A%(M, N), B%(M)

FOR I = 1 TO M

FOR J = 1 TO N

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

Input ; " ", a(I, j)

NEXT J

PRINT

NEXT I

PRINT "BXODNAIA MATRICA A "

FOR I = 1 TO M

FOR J = 1 TO N

PRINT A(I, J);

NEXT J

PRINT

NEXT I

FOR J = 1 TO N

MIN = A(M, J): IMIN = M

FOR I = M TO 1 STEP -1

IF A(I, J) < MIN THEN MIN = A(I, J): IMIN = I

NEXT I

B(J) = IMIN

NEXT J

PRINT "BIXODNAIA MASSIV B "

FOR I = 1 TO N

PRINT B(I);

NEXT I

END

Задачи на слова.

Вставить в строку А, начиная с позиции «К» подстроку В.

DIM A AS STRING, I AS INTEGER, K AS INTEGER

DIM N AS INTEGER, B AS STRING

INPUT "VVEDITE SLOVO A"; A

INPUT "VVEDITE SLOVO B"; B

INPUT "VVEDITE K"; K

A = LEFT$(A, K - 1) + B + RIGHT$(A, LEN(A) - (K - 1))

PRINT "A="; A

END

Удалить подстроку В из строки А, начиная с позиции К.

DIM A AS STRING, I AS INTEGER, K AS INTEGER

DIM N AS INTEGER, B AS STRING

INPUT "VVEDITE SLOVO A"; A

INPUT "VVEDITE SLOVO B"; B

INPUT "VVEDITE K"; K

A = LEFT$(A, K - 1) + RIGHT$(A, LEN(A) - LEN(B) - (K - 1))

PRINT "A="; A

END

Проверить является ли введенное слово симметричным (палиндромом).

DIM A AS STRING, I AS INTEGER, F AS INTEGER, N AS INTEGER

INPUT "VVEDITE SLOVO"; A

N = LEN(A)

F = 0

FOR I = 1 TO N \ 2

IF MID$(A, I, 1) <> MID$(A, N - I + 1, 1) THEN F = 1

NEXT I

IF F = 0 THEN

PRINT "SIMMETRICHNO"

ELSE

PRINT "HE SIMMETRICHNO"

END IF

END

Перевернуть введенное слово

DIM A AS STRING, I AS INTEGER, N AS INTEGER, B AS STRING

INPUT "VVEDITE SLOVO"; A

N = LEN(A)

FOR I = 1 TO N \ 2

B = MID$(A, I, 1)

MID$(A, I, 1) = MID$(A, N - I + 1, 1)

MID$(A, N - I + 1, 1) = B

NEXT I

PRINT "A="; A

END

Заменить во введенном слове первую букву “a” на “o

DIM A AS STRING, I AS INTEGER, N AS INTEGER

INPUT "VVEDITE SLOVO"; A

N = LEN(A)

FOR I = 1 TO N

IF MID$(A, I, 1) = "A" THEN

MID$(A, I, 1) = "O"

EXIT FOR

END IF

NEXT I

PRINT "A="; A

END

Заменить во введенном слове последнюю букву “a” на “o”

DIM A AS STRING, I AS INTEGER, N AS INTEGER

INPUT "VVEDITE SLOVO"; A

N = LEN(A)

FOR I = N TO 1 STEP -1

IF MID$(A, I, 1) = "A" THEN

MID$(A, I, 1) = "O"

EXIT FOR

END IF

NEXT I

PRINT "A="; A

END

Дано слово. Если оно четной длины, то удалить символы, стоящие на четных позициях, иначе оставить слово без изменения.

DIM A AS STRING, I AS INTEGER, N AS INTEGER, B AS STRING

INPUT "VVEDITE SLOVO"; A

N = LEN(A)

IF N MOD 2 = 0 THEN

B = ""

FOR I = 1 TO N STEP 2

B = B + MID$(A, I, 1)

NEXT I

A = B

END IF

PRINT "A="; A

END

Определить есть ли во введенном слове хотя бы два одинаковых символа

DIM A AS STRING, I AS INTEGER, N AS INTEGER, J AS INTEGER, F AS INTEGER

INPUT "VVEDITE SLOVO"; A

N = LEN(A): F = 0

FOR I = 1 TO N

FOR J = 1 TO N

IF MID$(A, I, 1) = MID$(A, J, 1) AND I <> J THEN F = 1

NEXT J

NEXT I

IF F = 0 THEN

PRINT "NO"

ELSE PRINT "YES"

END IF

END

Определить сколько повторений имеет каждый символ во введенном слове.

DIM A AS STRING, I AS INTEGER, N AS INTEGER

DIM J AS INTEGER, K AS INTEGER, B AS STRING, F AS INTEGER

DIM C%(50)