146
if A(k, l) = 0 then
' если A(k, l) = 0 то
D(k) = D(k) + 1
' D(k) = D(k) + 1
end if
' кесли
next 1
' кцикл
print D(k);
' вывод D(k);
next k
' кцикл
end
' кон
Задача 2. Дана строка символов. Распечатать все слова нечетной длины, отличные от второго слова.
(В этой задаче «словом» называется группа символов, разделенная с одной или обеих сторон одним
или несколькими пробелами и не содержащую внутри себя пробелов.)
Пример строки
Я волком бы выгрыз бюрократизм.
К мандатам почтения нет.
Результат обработки
бы
выгрыз
бюрократизм.
почтения
нет.
Для представления строк в программе на Бейсик можно воспользоваться операторами data:
data «Я волком бы выгрыз бюрократизм.»
data «К мандатам почтения нет.»
data «»
Здесь пустое слово «» означает конец исходного текста.
Для вывода исходных данных и результатов их обработки можно принять следующий сценарий:
исходный текст:
<строка1>
<строка
n
>
слова нечетной длины:
<слово1>
<слово
m
>
Решение поставленной задачи на ЭВМ можно получить с помощью следующих алгоритма и
программы на Бейсике, в которых в виде вспомогательного алгоритма и подпрограммы выделена обра-
ботка каждой отдельной строки текста:
' выделение слов нечетной длины
'
алг «слова нечетной длины»
print «исходный текст:»
'
вывод «исходный текст;»
n = 0: s2$ = «»
' n = 0: s2$ = «»
print «исходный текст:»
' вывод «исходный текст:»
do
'цикл
read str$
'
чтение_строки
if str$ = «» then exit do
'
при str$ = «» выход
print str$
'
вывод_строки
gosub stroka
'
обработка_строки
loop
' кцикл
|