Категории:

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

Оператор цикла с параметром FOR

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

МОРДОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

им. Н. П. ОГАРЕВА»

Светотехнический факультет

Кафедра светотехники

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

 

«Программирование с использованием циклов»

 

Саранск 2006


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

 

Теоретическая часть

 

Многострочный редактор.

 

Компонент Memo содержит несколько строк текста. Для работы с отдельными строками используется св-во Lines типа String. Нумерация строк начинается с нуля.

Методы Add и Insert служат для добавления/вставки строк в список. Функция Add(S) добавляет заданную строку S в конец списка. Процедура Insert(n, S) вставляет строку S на позицию с номером n.

Memo1.Lines[1]:=’adhfd’; - второй строке присваивается новое значение

Memo1.Lines.Clear; - содержимое редактора полностью очищается

Memo1.Lines.Add(‘sdgg’); - в конец текста редактора добавляется новая строка.

Содержимое компонента Memo можно загружать из файла и сохранять в текстовом файле. Для этого используются методы LoadFromFile(FileName) и SaveToFile(FileName).

Memo1.Lines. LoadFromFile(‘c:\ПРОБА\хаха.txt’) – чтение из файла,

Memo1.Lines. SaveToFile (‘c:\ПРОБА\хаха.txt’)- запись в файл.

Св-во AutoSelect типа Boolean определяет, будет ли автоматически выделен текст в элементе редактирования, когда последний получает фокус.

Значение св-ва SelText типа String определяет выделенный фрагмент.

Св-ва SelStart и SelLength типа Integer задают начальную позицию в строке и длину выделенного фрагмента.

Если фрагмент выделяется программно и должен быть выделен цветом, то св-ву HideSelection необходимо установить значение False (если True – то текст не будет выглядеть выбранным при переходе фокуса на другой элемент управления).

Метод SelectAll выделяет весь текст в элементе редактирования.

Методы CopyToClipBoard и CutToClipBoard копирует и вырезает в буфер обмена выделенный фрагмент текста.

Memo1.CopyToClipBoard;

Метод PasteFromClipBoard вставляет текс из буфера обмена в место текущего курсора.

Метод Count возвращает количество строк в компоненте Memo. Т.к. первая строка имеет нулевой номер, то номер последней строки равен Count-1.

i:=Memo1.lines.Count;

 


Оператор цикла с параметром FOR.

 

Эта инструкция организует выполнение одной последовательности действий заранее известное число раз.

В общем виде инструкция for записывается следующим образом:

 

for счетчик: нач_знач to кон_знач_счетчика do { последовательность инструкций, которая называется телом цикла }

где

счетчик — имя переменной-счетчика числа повторений инструкций цикла;

нач_знач — выражение, определяющее начальное значение переменной-счетчика;

кон_знач — выражение, определяющее конечное значение переменной-счетчика.

 

Оператор цикла WHILE.

 

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

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

В общем виде инструкция while записывается следующим образом:

while условие do {последовательность инструкций}

где условие — выражение логического типа.

 

Оператор цикла REPEAT.

 

Инструкция repeat . . until, как и инструкция while, используется в про­грамме, если надо провести некоторые повторные вычисления (организовать цикл), причем, необходимое число повторений во время раз­работки программы неизвестно и может быть определено только во время работы программы, т. е. определяется ходом вычисления.

В общем виде инструкция repeat.. .until записывается следующим образом:

repeat

инструкция1;

инструкция2;

инструкция3;

until условие;

 

где условие — выражение логического типа, определяющее условие завер­шения цикла.

Инструкции, находящиеся между repeat и until выполня­ются до тех пор, пока условие ложно (значение выражения условие равно false).

 

Процедуры Break и Continue.

 

Процедура Break позволяет досрочно выйти из цикла, не дожидаясь выполнения условия выхода. Процедура Continue позволяет начать новую итерацию цикла, даже если предыдущая не завершена.

 

Задание.

 

1. Задать одномерный массив – константу, содержащий 10 целых чисел. Найти минимальный и максимальный элементы, вывести их значения и индексы.

2. Используя многострочный редактор ввести двумерный массив, содержащий 3 столбца и 3 строки. Найти сумму и среднее арифметическое элементов массива.

3. Ввести два двумерных массива (3*3). Провести транспонирование первого массива, затем поэлементное суммирование транспонированного и второго массивов.

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