- Преподавателю
- Информатика
- Изучаем язык BASIC. Занятие 26. Вставка и удаление символов из предложения
Изучаем язык BASIC. Занятие 26. Вставка и удаление символов из предложения
Раздел | Информатика |
Класс | - |
Тип | Конспекты |
Автор | Гегелашвили Т.П. |
Дата | 08.08.2015 |
Формат | doc |
Изображения | Нет |
Занятие 26
Вставка и удаление символов из предложения.
Распечатать все слова предложения на букву К нечетной длины, если таких нет выдать сообщение.
CLS
INPUT A$
A$=A$ + "‗"
K = 1 : S=0
L = LEN(A$)
DO
N = INSTR (K,A$,"‗")
S = S + 1
SL$(S) = MID$(A$, K, N-K)
SK(S)=LEN(SL$(S))
K = N + 1
LOOP WHILE N <> L
K = 0
FOR I = 1 TO S
IF MID$(SL(I),1,1 = "K" AND SK(I)/2<>SK(I)\2 THEN PRINT SL$(I); "‗"; : K = 1
NEXT I
IF K = 0 THEN PRINT "Слов нет"
Отредактировать заданное предложение, удалив из него все слова, длиной больше 3.
Ввод
FOR I = 1 TO S
IF SK(I) <= 3 THEN PRINT SL$(I); "‗";
NEXT I
Отредактировать заданное предложение, удалив из него все слова, четной длины и длиной меньше 10.
Ввод
FOR I = 1 TO S
IF SK(I)/2 = SK(I)\2 AND SK(I) <= 10 THEN PRINT SL$(I); "‗";
NEXT I
Отредактировать заданное предложение, удалив из него все слова, с четным номером и переворачивать слова с нечетным номером.
Ввод
FOR I = 1 TO S STEP 2
FOR J = SK(I) TO 1 STEP -1
PRINT MID$(SL$(I),J,1);
NEXT J
PRINT "‗";
NEXT I
Распечатать все слова предложения нечетной длины, в которых есть буква t, если таких нет выдать сообщение.
FOR I = 1 TO S
IF SK(I)/2<>SK(I)\2 THEN
W = 0
FOR J=1 SK(I)
IF MID$(SL$(I),J,1)="t" THEN W = 1
NEXT J
IF W = 1 THEN PRINT SL$(I);
ENDIF
PRINT "‗";
NEXT I
IF K = 0 THEN PRINT "Слов нет"
Домашнее задание
-
Распечатать все слова четной длины, в которых нет буквы О, если таких слов нет выдать сообщение.
-
Вывести на экран самое длинное слово, предварительно перенеся первый символ в конец этого слова.
Ввод
max = -1000
FOR I = 1 TO S
IF SK(I)>max THEN max = SK(I): d =I
NEXT I
PRINT MID$(SL(d),2); MID$(SL$(d),1,1)
-
напечатать все слова нечетной длины отличных от второго слова, если таких нет выдать сообщение.
FOR I = 1 TO S
IF SK(I)/2<>SK(I)\2 THEN
W = 0
FOR J=1 SK(I)
IF SK(I) = SK(2) AND MID$(SL$(I),J,1)=MID$(SL$(2),J,1) THEN W = 1
NEXT J
IF W = 1 THEN PRINT SL$(I);
ENDIF
PRINT "‗";
NEXT I
IF W = 0 THEN PRINT "Слов нет"