Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Data 1, 0, 1, 0, 0




Data 0, 1, 0, 0, 0

Data 0, 0, 1, 0, 0

Data 0, 1, 0, 0, 0

Data 0, 0, 0, 0, 0

 

Для вывода исходных данных и результатов их обработки можно воспользоваться следующим сценарием:

Матрица А<n><n>:

11> ... <a1n>

… … …

<anl> … <ann>

Число нулей в столбцах:

<d1> ... <dn>

 

Решением поставленной задачи на ЭВМ можно получить с помо­щью следующего алгоритма и программа на языке Бейсик. Обратите внимание в программе используются массивы переменной длины, которая определяется при вводе размеров матрицы А:

 

' подсчет нулевых столбцов ' алг «подсчет нулевых столбцов»

' в квадратной матрице Ann ' нач

read n ' чтение(п)

dim A(n,n), D(n) ' массивы А(1:п,1:п), D(1:n)

print «Матрица A»;n;n;«:» ' вывод («Матрица А»;п;п; «:»)

for k = 1 to n ' от k = 1 до п цикл

for 1 =1 to n ' от l =1 до п цикл

read A(k,l) ' чтение A(k,l)

print A(k,l) ' вывод A(k,l)

next 1 ' кцикл

next k ' кцикл

for k = 1 to n ' om k= 1 до п цикл

D(k) = 0 ' D(k) = 0

for 1 = 1 to n ' от l=1 до п цикл

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 ' кцикл

end ' кон

 

stroka: ' обработка строки ' алг «обработка строки»

dl = len(sfr$) ' dl = длuнa(str$)

print «слова нечетной длины:» ' вывод «слова нечетной длины:»

sl = 0 ' sl=0

for k=l to dl ' от k = 1 до dl цикл

if str$(k) 0 «» then ' если str$(k) ¹ «» то

sl = sl + 1 ' sl = sl + 1

elseif sl > 0 then ' инеc sl > 0 то

p = k - sl + 1 ' p = k - sl + 1

slv$ = mid$(str$,p,sl) ' slv$ = cpeдн.(str$,p,sl)

n = n + 1 ' n = n + 1

if n = 2 then ' если n = 2 то

sl2$ = slv$ ' sl2$ = slv$

elseif slv$ 0 sl2$ then ' инеc slv$ ^ sl2$ то

if (sl/2)*2= si then ' если (sl/2) *2 = sl то

print slv$ ' вывод slv$

end if ' кесли

end if ' кесли

sl = 0 ' sl = 0

end if ' кесли

next k ' кцикл

return ' кон

 


Поделиться:

Дата добавления: 2014-11-13; просмотров: 51; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты