Тема 3. Операторы цикла и списки 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Тема 3. Операторы цикла и списки



Практическая работа № 3.1

1. Открыть новый проект. Задать свойство name формы Example3_1. Внешний вид формы показан на рис. 14.

2. Установить в форме объект ListBox список. Установить для него свойство name - spisok. Объект ListBox изначально пуст и показывает что-либо только после заполнения его данными. Заполнить список данными можно как при разработке формы, так и во время работы программы. Все содержимое списка – массив строковых данных, которые размещены в его свойстве List. При заполнении списка через свойство List ввод каждой строки завершается нажатием клавиш Ctrl + Enter. По мере заполнения списка линейки прокрутки появляются автоматически. Выбор позиции из списка выполняется щелчком мыши по ней. Содержимое выбранной (маркированной) позиции списка помещается в его свойство Text. Список также может заполняться и при работе программы. Для этого используется метод заполнения списка ADDITEM, который имеет синтаксис (в общем виде):

name формы .name списка .additem <строка>, N позиции

Если номер позиции не указан, то новая строка добавляется в конец списка. Добавляемая строка может быть в виде строковой константы или переменной, а также свойства text текстового поля. Однократный вызов этого метода добавляет одну позицию.

Удаление из списка произвольной строки выполняется методом REMOVEITEM, который имеет синтаксис (в общем виде):

name формы .name списка .removeitem N позиции

3. Установить остальные элементы формы в соответствие с рис. 14, свойства name для объектов указаны на рисунке рядом с ними.

4. Записать процедуру описания переменных: chisarr (весь массив чисел)и kolich (количество вводимых чисел) в раздел программного кода «general declarations», выбрав соответствующие позиции в левом (general)и правом (declarations) списках в окне редактора.

Dim chisarr (1 To 50) As Single ‘ массив чисел не более 50 шт.

Dim kolich As Integer ‘ кол-во чисел в массиве

5. В процедуре для кнопки добавить записать следующее: (setfocus – метод установки «фокуса» на каком-либо объекте или форме )

spisok.additem chislo.text ‘ в список добавить число из текст. поля

kolich=kolich+1 ‘ кол-во чисел в массиве увеличилось на 1

chisarr(kolich)=chislo.text ‘ в массив добавить число из текст. поля

chislo.text=”” ‘ очистить текстовое поле

chislo.setfocus ‘ поставить курсор в текстовое поле

6. В процедуре для кнопки найти записать следующее:

dim max as single ' переменная – максимум

dim i as integer ' переменная цикла

max=chisarr(1) ' максимум – 1-ый элемент

for i=2 to kolich ' цикл: начиная со 2-ого эл-та до конца массива

if max<chisarr(i) then max=chisarr(i) ' если текущий эл-т

больше максимума тогда текущий эл-т есть максимум

next i ' следующий шаг цикла

result.caption=max

7. Записать самостоятельно процедуру для кнопки закрыть.

8. Запустить программу и убедиться в правильности ее работы, при необходимости исправить ошибки, а затем сохранить проект и форму.

Практическая работа № 3.2

1. Открыть проект, созданный в ходе выполнения работы № 3.1. Задать свойство name формы Example3_2.

2. Изменить форму по образцу (рис. 15). Для этого добавить в форму метку «буква» и текстовое поле со свойством name – “bukva”. Изменить остальные объекты формы по образцу.

3. Изменить в кодах программы в разделе «general declarations» тип переменной chisarr с single на string.

4. Исправить программный код для кнопки найти следующим образом: удалить строку max=chisarr(1), изменить начальное значение переменной цикла: i=1.

5. Вместо строки if max<chisarr(i) then max=chisarr(i)

ввести строку

If Left$(chisarr(i),1)=bukva.Text Then max=max+1

где функция Left$ – есть строковая функция, возвращающая заданное число символов, начиная с первого символа строки.

Другие строковые функции:

· Right$ – функция, возвращающая заданное число символов, начиная с последнего символа строки;

· Mid$ – функция, возвращающая заданное число символов, начиная с заданной позиции в строке: синтаксис функции – Mid$ (строка, N поз, n симв);

· Len – функция, возвращающая длину строки;

· Str – функция, преобразующая числовые данные в строковые;

· Trim – функция, возвращающая строку без пробелов;

· InStr – функция, возвращающая номер позиции, содержащей указанный фрагмент;

5. Запустить программу и убедиться в правильности ее работы, при необходимости исправить ошибки, а затем сохранить проект и форму.

Практическая работа № 3.3

 

1. Открыть новый проект. Задать свойство name формы Example3_3. Создать программу для перевода любого целого числа в 10СС в произвольную систему счисления (от 2 до 9). Система счисления выбирается из раскрывающегося списка.

2. Внешний вид формы показан на рис. 16. Установить на форме объект ComboBox – раскрывающийся список (находится в наборе инструментов General). Этот объект предназначен для выбора какого-либо значения из заданного списка. Раскрывающийся список можно заполнить как во время работы программы, так и в листе свойств или в тексте программы. Содержимое выбранной позиции раскрывающегося списка хранится в его свойстве Text.

3. Установить на форме остальные необходимые объекты, задать свойство Name,указанное на рисунке для «пустой» метки.

4. Записать для формы и командной кнопки следующие программные коды: (перед записью кодов для формы следует изменить событие формы с load на activate в правом списке в окне редактора кодов, см. рис. 2)

Private Sub Form_Activate()

Combo1.AddItem ("2")

Combo1.AddItem ("3")

Combo1.AddItem ("4")

Combo1.AddItem ("5")

Combo1.AddItem ("6")

Combo1.AddItem ("7")

Combo1.AddItem ("8")

Combo1.AddItem ("9")

End Sub

Private Sub Command1_Click()

Dim s As String

Dim l, c, r As Single

Dim i As Integer

s=""

c=Val(Text1.Text) 'введенное число

l=Val(Combo1.Text) 'система счисления

r=Int(c/l) 'первое частное

i=c-r*l 'первый остаток

s=s+Str(i) 'результат

Do While r>=1 'цикл

c=r 'новое делимое равно последнему частному

r=Int(c/l)

i=c-r*l 'новый остаток деления

s=Str(i)+s 'результат в обратном порядке

Loop

Rez.Caption=s

End Sub

5. Запустить программу и убедиться в правильности ее работы, при необходимости исправить ошибки, а затем сохранить проект и форму.

Выполните самостоятельно!

Практическая работа № 3.4

1. Создать новый проект и программу для нахождения кол-ва слов, заканчивающихся на заданное сочетание из 2-х букв. Открыть проект, созданный в ходе выполнения работы № 3.2. Макет формы на рис. 15.

2. Изменить строковую функцию с Left$(chisarr(i),1) на Right$(chisarr(i),2).

3. Запустить программу и убедиться в правильности ее работы, при необходимости исправить ошибки, а затем сохранить проект и форму.

Практическая работа № 3.5

1. Создать новый проект и программу для нахождения кол-ва чисел, содержащих заданное сочетание из 3-х цифр начиная с 3-й позиции. Открыть проект, созданный в ходе выполнения работы № 3.2. Макет формы показан на рис. 15.

2. Изменить строковую функцию с Left$(chisarr(i),1) на Mid$(chisarr(i),3, 3).

3. Запустить программу и убедиться в правильности ее работы, при необходимости исправить ошибки, а затем сохранить проект и форму.

Практическая работа № 3.6

1. Создать новый проект и программу для вычисления факториала. Макет формы показан на рис. 17.

2. Программный код для кнопки вычислить приведен ниже.

Dim f, n, i As Integer

n=Val(Chislo.Text)

f=1

For i=2 To n

f=f*i

Next i

Result.Caption=f

3. Запустить программу и убедиться в правильности ее работы, при необходимости исправить ошибки, а затем сохранить проект и форму.

Практическая работа № 3.7

1. Создать новый проект и программу для сложения произвольного целого положительного числа в 10СС с числом, представленным в 3СС. Макет формы показан на рис. 18.

2. Программный код для кнопки суммировать:



Поделиться:


Последнее изменение этой страницы: 2016-12-10; просмотров: 367; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.146.105.137 (0.026 с.)