Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпора катина.docx
Скачиваний:
9
Добавлен:
01.07.2025
Размер:
229.84 Кб
Скачать

4. Условные циклы

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

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

. . .

. . .

Условие B – это условие выхода из цикла, блок S – блок повторяющихся действий – тело цикла.

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

. . .

5. Оператор цикла do…loop

С помощью оператора Do…Loop на языке VisualBasic можно реализовать цикл с предусловием и цикл с послеусловием.

Формат цикла с предусловием следующий:

Do [{While/Until} условие]

[Операторы блока S]

Loop

Формат цикла с послеусловием следующий:

Do

[Операторы блока S]

Loop [{While/Until} условие]

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

Проверка условий выхода из цикла проводится с помощью ключевых слов While или Until. Эти слова придают одному и тому же условию противоположный смысл. Например, вцикле:

A = 1

Do

A = A + 1

Print “Visual Basic”

LoopWhile A < 11

условие выхода можно трактовать следующим образом: пока A меньше 11. Фраза VisualBasic будет печататься, пока значение переменной меньше одиннадцати (т. е. десять раз). Авцикле:

A = 1

Do

A = A + 1

Print “Visual Basic”

LoopUntilA > 10

20.\21 массивы

Массивы в ЯП VisualBasic.

Массив в программировании – это совокупность однотипных данных, объединенных общим названием. Чаще данные объединяются в массив одной общей задачей их обработки (перебор данных, их анализ, однотипное изменение и др.). Различают одномерные и многомерные массивы.

Одномерный массив (вектор) – это совокупность однотипных данных, объединённых общим названием, каждый элемент которой имеет одну координату (порядковый номер).

Например: Массив А, содержащий пять чисел ® (5,7,3,0,4)

Первый элемент массива в QuickBasic по умолчанию имеет № = 0. Можно в программе начать нумерацию элементов массива с любого числа (удобнее с единицы).

Многомерный массив – это совокупность однотипных данных, объединённых общим названием, каждый элемент которой имеет несколько координат.

Двухмерные массивы физически представляют собой матрицу. Каждый элемент матрицы имеет две координаты: номер строки и номер столбца.В названии массива после имени в скобках ставится размерность массива, т.е. количество его элементов.

Формат имени массива.

Имя (число_элементов_n [, число_элементов_m])

Характеристикимассива:

  • Имя массива.

  • Тип данных, из которых состоит массив.

  • Размер массива, т.е. количество элементов, из которых он состоит.

  • Координаты (индекс) каждого элемента массива.

  • Значение каждого элемента массива.

Имя массива в QBasic формируется по общим правилам, используемым для переменных.

Объявлениемассива.

Объявление используется в первую очередь для того, чтобы зарезервировать место в памяти ЭВМ перед размещением массива.Объявление массива осуществляется с помощью оператора DIM.В VisualBasicсуществуют массивы фиксированного размера и динамические массивы. Массивы фиксированного размера имеют неизменный размер, заданный при его объявлении.

Формат объявления массива:

DIM Имя (число_элементов_n [, число_элементов m]) [AS тип] [={присваиваемые значения}]

  • Количество элементов можно задавать числом, переменной, математическим выражением или диапазоном (например: min TO max).

  • Если указывать только число элементов, то первый элемент получает номер 0.

Например: DIMV(10)® резервируется место для 11 элементов (от 0 до 10); DIMV(1 - 10)® резервируется место для 10 элементов (от 1 до 10).

  • Все элементы массива – данные одного типа.

  • В одной строке оператор DIM может объявить несколько массивов и переменных, которые должны отделяться запятой.

Например: DIM V1(20), V2(1 TO x), N AS INTEGER

Объявлениединамического массива.

Visual Basicпозволяет изменять размеры массивов во время исполнения программы. Применение динамических массивов обеспечивает эффективное управление памятью, выделяя под большой массив память лишь на время, в которое этот массив используется, а затем освобождая её.

Объявление массива осуществляется с помощью оператора DIMили STATIC.

Например: DIM intCountPar( ) AS INTEGER

С помощью выполняемого оператора ReDimуказывается размер массива в виде числа или выражения. Оператор имеет синтаксис, аналогичный синтаксису оператора объявления массива.

Формирование одномерного массива.

Чтобы ЭВМ могла работать с массивом данных, его нужно сформировать (создать), иначе не будет самого объекта для работы. Сформировать массив – значит присвоить определённое значение каждому его элементу.

На этапе программирования и большого количества тестовых запусков можно формировать массив автоматически. В окончательной версии программу лучше переделать на ввод конкретных значений с клавиатуры.

Наиболее распространенные методы формирования массива.

  • Метод формирования прямым присваиванием

Например: А(1)=10: А(2)=3: А(3)=5: … и т.д.

  • Метод формирования оператором ввода с клавиатуры:

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

Если элементу массива присваивается значение типа, не соответствующего типу массива выводится сообщение об ошибке Typemismatch (Несоответствие типа).

Если в массив вводится лишний параметр(элемент) или параметра будет не хватать выводится сообщение об ошибке Wragnumberofdimention (Неправильное число размерностей).

Вывод одномерного массива на экран монитора.

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

  • Изменение последовательности элементов одномерного массива.

Изменение последовательности заключается в перестановки значений элементов одномерного массива согласно определённому условию. К этому типу действий относятся алгоритмы сортировки.

Двумерные массивы

Двумерный массив – это совокупность однотипных элементов, каждый из которых имеет две координаты: номер строки и номер столбца. Как правило, двумерные массивы называют матрицами.

Обработка матриц проходит в двух вложенных циклах. Внешней задаёт номер текущей строки, вложенный - номер текущего столбца.