Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 5 ЦИКЛЫ Содержание работы- Понятие цикла Цикл со счетчиком FOR

Работа добавлена на сайт samzan.net: 2016-03-30

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 21.5.2024

Лабораторная работа №5

ЦИКЛЫ

Содержание работы:

  1.  Понятие цикла
  2.  Цикл со счетчиком (FOR...NEXT)
  3.  Операторы цикла с неизвестным заранее числом повторений (DO...LOOP)
  4.  Работа со строками
  5.  Контрольное задание.
  6.  

1 Понятие цикла

Возврат компьютера к одному из предшествующих операторов для повторения некоторой части программы и является циклом. Таким образом, цикл - это оператор или группа операторов, которые программа выполняет многократно.

В Visual Basic существуют два основных типа циклов - циклы со счетчиком (с известным числом повторений) и циклы с условием (итерационные циклы). Циклы со счетчиком используют в тех случаях, когда необходимо выполнить некоторые действия определенное число раз. Циклы с условием применяются тогда, когда действия в программе должны повторяться пока выполняется определенное условие или до тех пор, пока оно не начнет выполняться.

Цикл, который никогда не заканчивается, называется бесконечным, а о программе в подобном случае говорят, что она зацикливается.

2 Цикл со счетчиком (FOR ... NEXT)

Иногда бывает нужно повторить некоторую часть программы вполне определенное число раз. Например, Вам может быть предоставлено только три попытки ответа на вопрос сколько будет два плюс два, или может потребоваться посылать счет ежемесячно в течение года. Один из способов задания числа повторений цикла заключается в использовании конструкции FOR... NEXT (лля ... следующий).

Посмотрите на две строчки программы:

FOR   X=i   ТО  3 NEXT   X

Именно они и образуют цикл. Первая строка начинает цикл, а вторая заканчивает его. Любые строки программы, вставленные между ними, будут телом цикла, то есть той группой операторов, которые будут выполняться три раза.

НАБЕРИТЕ текст следующей программы для кнопки «Выполнить»и ВЫПОЛНИТЕ ее:

Dim i As Integer

Dim n Аs String

n = ""

For i = 1 To 3

n = n & I & "  "

Nеxt i

MsgBоx(n)

Строчку N = N & I & "  " лучше всего заменить на N & = i & "  ". Смысл не измениться, а написание станет немного короче.

Обратите внимание на то, что переменной i последовательно будут присваиваться значения от 1 до 3-х (это задается в операторе FOR). Компьютер три раза выводит предложение, стоящее между операторами FOR и NEXT. Переменная i является в этом случае счетчиком цикла. Оператор NEXT i дает компьютеру указание увеличивать значение i каждый раз на 1, пока оно не достигнет значения большего 3. В этом случае цикл заканчивается, и программа продолжается уже за его пределами.

В цикле FOR...NEXT оператор FOR устанавливает переменную цикла и задает ее начальное и конечное значение. Оператор NEXT дает компьютеру указание изменить значение этой переменной и возвратиться на начало цикла, если полученное значение не выходит за пределы заданного конечного значения.

ЗАМЕНИТЕ программный код на следующий и ВЫПОЛНИТЕ программу:

Dim i As Intеger

Dim n As String

N = ""

For i = 1 Tо 15 step 2

n = n & I & "  "

If i = 7 Thеn Exit For

Nеxt i

MsgBоx(n)

Step – это шаг цикла, то есть то число на которое будет изменяться счетчик. Шаг может быть как положительный, так и отрицательный.

Выход из цикла FOR ... NEXT можно осуществить досрочно. Для этого необходимо воспользоваться оператором альтернативного выхода из цикла EXIT FOR (выход для). Рассмотрим цикл, который повторяется до тех пор, пока не будет введен правильный ответ, но при этом он будет выполняться не более трех раз.

  1.  Запустите Visual Studio и создайте новый проект. Добавите в форму элемент управления Button, но на этот раз новым способом.
  2.  Дважды щелкните мышью в окне области элементов на элементе управления Button (он находится на закладке Windows Forms). Visual Studio поместит объект кнопки в верхний левый угол формы. В случае с элементом управления Button, а также и со многими другими, двойной щелчок мышью позволяет быстро создать в форме объект со стандартными размерами. Теперь можно перетащить этот объект кнопки в нужное место и настроить его свойства.
  3.  Перетащите объект кнопки вправо и поместите его в центре верхней части формы.
  4.  Откройте окно Properties (Свойства), а затем установите свойство Text кнопки на значение Цикл.
  5.  В области элементов щелкните дважды на элементе управления TextBox. Visual Studio создаст небольшое текстовое поле.
  6.  Установите свойство Multiline этого объекта текстового поля на значение True, а свойство ScrollBars на значение Vertical. Эти настройки подготавливают текстовое поле к отображению более чем одной строки текста.
  7.  Сделайте свойство Text объекта текстового поля пустым (empty).
  8.  Переместите текстовое поле под кнопку и увеличьте его так, чтобы оно заняло большую часть формы.
  9.  Щелкните дважды на кнопке Цикл формы. В Редакторе кода появится процедура события Button1_Click.
  10.  Введите в этой процедуре следующие операторы программы:

Dim i As Intеger

Dim Wrаp As String

Wrаp = Chr(13) & Chr(10)

Fоr i = 1 Tо 10

TеxtBox1.Text = TеxtBox1.Text & "Строка " & i & Wrap

Nеxt i

Эта процедура события объявляет две переменные - одну типа Integer (i), а вторую - типа String (Wrap), а затем присваивает второй переменной строковое значение, представляющее символ перевода строки. В терминах программирования символ перевода строки является эквивалентом нажатия на клавишу (Enter) на клавиатуре. Чтобы сделать его менее громоздким, я создал для этого символа специальную переменную, которая состоит из элементов "возврат каретки" (return) и "прокрутка строки" (linefeed).

После объявления переменной и присвоения, я использую цикл For…Next для десятикратного отображения в объекте текстового поля строки "Строка X", где X - это текущее значение переменной-счетчика (другими словами, со "Строка 1" до "Строка 10"). Символы конкатенации строк (&) объединяют в текстовом поле части каждой строки воедино. В начале в объект добавляется все значение текстового поля, которое хранится в свойстве Text, так, что предыдущие строки при добавлении новых не удаляются. Затем для отображения новой строки и перевода курсора влево и на следующую строку объединяются строка "Строка", текущий номер строки и символ возврата каретки (Wrap). Оператор Next завершает цикл.

Обратите внимание, что Visual Studio автоматически добавляет оператор Next в конец цикла, когда вы вводите For в его начале. В данном случае я отредактировал оператор Next так, чтобы включить в него имя переменной i - это необязательное пояснение синтаксиса, которое мне нравится использовать.

  1.  Чтобы сохранить изменения, щелкните на кнопке Save All (Сохранить все) на стандартной панели инструментов. Теперь запустите эту программу.
  2.  Щелкните на кнопке Start (Начать) стандартной панели инструментов.
  3.  Щелкните на кнопке Цикл.

Цикл For…Next отображает в текстовом поле 10 строк, как показано ниже.

  1.  Снова щелкните на кнопке Цикл. Цикл For…Next отображает в форме еще 10 строк, и вы можете увидеть невидимые строки, используя вертикальную полосу прокрутки. При каждом повторении цикла он добавляет в объект текстового поля 10 новых строк.

Совет. Боитесь, что в объекте текстового поля не останется места? Если вы отображаете только 10 строк, это случится очень нескоро. Объект многострочного текстового поля имеет практическое ограничение на размер текста в 32 Кб. Для текстов большего объема или для форматирования попробуйте использовать элемент управления RichTextBox.

3. Операторы цикла с неизвестным заранее числом повторений(DO...LOOP)

Для управления циклом с неизвестным заранее числом повторений в VB существуют оператор цикла DO... LOOP («Делать... петля»).

Он повторяет блок операторов, пока условие истинно, или до тех пор, когда оно станет ложным. Существует два варианта цикла DO... LOOP:

с проверкой выражения вначале DO WHILE ... LOOP и DO UNTIL ... LOOP;

с проверкой выражения в конце DO... LOOP WHILE и DO... LOOP UNTIL.

Логика работы оператора с проверкой условия в начале цикла для DO WHILE ...LOOP. Для DO UNTIL ... LOOP операторы цикла, стоящие между DO UNTIL и LOOP будут выполняться в том случае, если значение условия будет ложным.

В случае проверки выражения в конце цикла для операторов DO... LOOP WHILE логика заключается в следующем. Сначала выполняются операторы цикла между DO и условием LOOP WHILE, затем вычисляется условие и проверяется. Если оно выполняется, то управление передается на начало цикла, иначе осуществляется выход из цикла. В случае использования DO... LOOP UNTIL, цикл выполняется до тех пор, пока условие принимает значение ложь.

Рассмотрим варианты использования этого оператора, ВНЕСЯ изменения в программный код нашего примера.

1.

Dim s Аs Single

s = InputBоx("Сколько будет 2+2?", "Тест")

Dо While s <> 4

MsgBоx("Неверно! Попробуйте  еще  раз")

s = InputBоx("Сколько  будет  2+2?", "Тест")

Lоop

MsgBoх("ПРАВИЛЬНО!!!")

2.

Dim s As Singlе

s = InputBоx("Сколько будет 2+2?", "Тест")

MsgBоx("Неверно! Попробуйте  еще  раз")

s = InputBоx("Сколько  будет  2+2?", "Тест")

Loоp While s <> 4

MsgBоx("ПРАВИЛЬНО”)

3.

Dim s As Single

s = InputBоx("Сколько будет 2+2?", "Тест")

Do Until s = 4

MsgBоx("Неверно! Попробуйте  еще  раз")

s = InputBox("Сколько  будет  2+2?", "Тест")

Loоp

MsgBоx("ПРАВИЛЬНО!!!")

4.

Dim s As Single

s = InputBоx("Сколько будет 2+2?", "Тест")

Do

MsgBоx("Неверно! Попробуйте  еще  раз")

s = InputBox("Сколько  будет  2+2?", "Тест")

Loоp Until s = 4

MsgBоx("ПРАВИЛЬНО!!!")

Во всех рассмотренных вариантах тестирование может проводиться бесконечное число раз до получения правильного ответа. Только когда переменная s получит значение 4 (правильный ответ на поставленный вопрос) программа закончит свое выполнение. Каждый из вариантов имеет как преимущества, так и недостатки. Поэтому при составлении программного кода следует выбирать наиболее приемлемый для конкретного случая вариант.

Иногда бывает необходимо прервать цикл DO...LOOP, если выполняется какое-либо дополнительное условие. Это может быть сделано с помощью оператора Exit Do.

ВВНЕСИТЕ следующие изменения в последний вариант программного кода:

Dim s As Singlе, t As Integer

s = InputBоx("Сколько будет 2+2?", "Тест")

Do Until s = 4

MsgBоx("Неверно! Попробуйте  еще  раз")

s = InputBox("Сколько  будет  2+2?", "Тест")

t = t + 1

If t = 5 Thеn

MsgBox("Очень плохо!. Иди учи математику!")

Exit Dо

End If

If s = 4 Then MsgBox("Правильно")

Loоp

4. Работа со строками

Строка (текст) - это последовательность любых символов.

Экземпляру строки может быть присвоено текстовое значение, содержащее последовательность символов.Пример.

Dim MyString As String

MyString = "This is an example of the String data type"

Строки в тексте программы заключаются в двойные кавычки (но не имена переменных, их содержащих!)Например:

                       a=“Вася”

                                b  = а + "Иванов"

Строка может быть пустой, то есть не содержать ни одного символа. Для обозначения пустой строки кавычки пишут без пробелов между ними: а  =   " "

  1.  Функции для работы с текстом.

п/п

Функция

Описание

Пример

Аргументы

Результат

1

Len (строка)

Возвращает число, равное количеству символов в строке, включая пробелы

Len("Bacя") Len("A у н") Пробелы  тоже

учитываются

4 5

2

Mid(строка, начало, количество)

Выделяет из строки нужное количество символов, начиная с начального номера

Мid("Миру мир",2,3)

3 символа, начиная со второго

иру

Рассмотрим пример работы со строками на примере следующей задачи:

Разработайте программу, которая преобразует введенный пользователем текст в обратный и выдает результат на форму, например: роза > азор

Dim str, rts Аs String, i As Intеger

str = InputBоx("Введите слово", "Переворот слова")

rts = ""

Fоr i = Len(str) To 1 Step -1

rts  =  rts   +  Mid(str,   i,   1) Nеxt i

MsgBоx(rts)

Тип данных Char используется при необходимости хранить только один символ, когда использовать String не требуется.В некоторых случаях можно использовать Char(), массив элементов Char, для хранения нескольких знаков.

Значением по умолчанию Char является символ с кодом 0.


5 Контрольное задание

  1.  Требуется разработать проект для табулирования функции  y=x2·e2x-1 на отрезке

[1; 3] с шагом 0,1. Результат вывести на форму в виде таблицы значений.

Алгоритм решения этой задачи представлен в виде блок-схемы:

  1.  Разработать проект, программа которого позволяет вводить неограниченное количество чисел и суммировать их, ограничением является только значение суммы, превышающее   100.  Необходимо также подсчитать количество введенных значений и найти их среднее арифметическое. Ввод значений осуществлять в окне
    ввода.
  2.  Разработайте программу, которая   печатает   текст, введенный пользователем, но в каждой следующей строке удаляется одна буква с начала, например:

победа

обеда

беда

еда

да

а

PAGE  7




1. Волгоградский государственный технический университет ВПИ филиал ВолгГТУ Ф
2. тема.Рациональность как норма поведения
3. аудитория печатных СМИ
4. Контрольная работа- Політичні партії в Україні
5. 13 веках Русь удельная
6. Для обозначения этих направлений давно уже используются две дефиниции ~ углубление и расширение интеграции.html
7. Тема- Возбуждение гражданского дела
8. 01 S- Функция выявления закономерностей исторического развития ~ это функция - социальной памяти - про
9. Завтрак Каша или горячее блюдо из яиц; Нарезка из колбасы и сыра; Чай ил
10. Понятие и виды источников международного права 2.html
11. реферат дисертації на здобуття наукового ступеня кандидата юридичних наук Київ ~8
12. РЕФЕРАТ дисертації на здобуття наукового ступеня доктора технічних наук Дніпропетр.html
13. Проектирование привода ленточного конвейера
14. тематики ЗЕМ МЕО Задача 1
15.  Разработка технологии обеспечения широкополосного доступа в сеть Интернет в районах города Новосибирск
16.  Изучение эффективности норм права как необходимое условие познания результатов действия права Плодотвор
17. реферату- ГончарствоРозділ- Образотворче мистецтво Гончарство Гончарство одне з найстаріших ремесел люд.html
18. 47w X 11.08h cm Floss Used for Full Stitches- Symbol Strnds
19. Задание 3 Проанализируйте структуру уроков и раскройте особенности подходов к ее определению определите ти
20. ОПРЕДЕЛЕНИЕ ГОРИЗОНТАЛЬНОЙ СОСТАВЛЯЮЩЕЙ МАГНИТНОГО ПОЛЯ ЗЕМЛИ