Даша Пупырышкина изучает английский язык во втором классе. Ей задали домашнее задание:...

0 голосов
51 просмотров

Даша Пупырышкина изучает английский язык во втором классе. Ей задали домашнее задание: переписать
английские слова, записанные строчными буквами, в тетрадь. Выполняя задание, она комментирует его. Даша произносит слово "Опять" каждый раз, когда пишет букву, которая уже встречалась в слове раньше.
Составьте программу, которая по слову определяет: сколько раз Даша произнесёт "Опять".
Примеры:
Исходное слово apple Ответ 1 раз
Исходное слово potato Ответ 2 раза
Ваша программа должна
Запросить слово;
Подсчитать сколько раз, переписывая это слово, Даша произнесёт "Опять" и вывести это число на экран.
Напишите пожалуйста в QBasic как сделать ?


Информатика (15 баллов) | 51 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

DIM a(1 TO 26) AS INTEGER
DIM s AS STRING, asc0 AS INTEGER
CLS
FOR i = 1 TO 26
   a(i) = -1
NEXT i
asc0 = ASC("a") - 1
INPUT "Введите слово: ", s
FOR i = 1 TO LEN(s)
   k = ASC(MID$(s, i, 1)) - asc0
   a(k) = a(k) + 1
NEXT i
k = 0
FOR i = 1 TO 26
   IF a(i) > 0 THEN k = k + a(i)
NEXT i
FOR i = 1 TO k
   PRINT "Опять"
NEXT i

Тестовое решение:
Введите слово: potato
Опять
Опять

(142k баллов)