Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ipst_lab.doc
Скачиваний:
127
Добавлен:
11.04.2015
Размер:
1.91 Mб
Скачать

Проверка условия

Оператор проверки условия позволяет организовать разветвление исполнения программы. Внешний вид оператора представлен на рис.2.3.

Рис. 2.3. Блок-схема условного оператора: редуцированная и полная формы

Формат записи оператора, редуцированная форма:

ifусловие

операторы

end

полная форма:

ifусловие

операторы

elseifусловие

операторы

else

операторы

end

Ввод с клавиатуры

x=input(‘строка подсказки’)

x=input(‘строка подсказки’, ‘s’)

Функция inputвыводит на экран строку подсказки и ждет ввода переменной. Функцияx=input(‘строка подсказки’, ‘s’)возвращает введенную пользователем строку. При вводе переменных допустимо пользоваться стандартными функциями.

Циклы

MatLABпредоставляет пользователю два способа организации цикла. Первый из них цикл с известным количеством повторений. Блок-схема этого цикла представлена на рис. 2.4.

Рис. 2.4. Блок-схема цикла for

Формат оператора:

forпеременная = начальное значение : [шаг :] конечное значение

операторы

end

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

for i=1:100

x(i) = sin(2*PI*i/100);

end

Тело цикла обязательно заканчивается служебным словом end.

При работе с циклом forдопустимо использование оператора прерывания циклаbreak. При выполнении оператораbreakработа цикла завершается, и управление передается на следующий после конца цикла оператор. Блок-схема программы, иллюстрирующий использование оператораbreak, приведена на рис. 2.5.

Текст программы соответствующий рис. 2.5.

fori=1:100

операторы

if a(i) == 0

break

end

операторы

end

Рис. 2.5. Иллюстрация использования оператора break

Кроме цикла forв программировании наMatLABиспользуется циклwhile. В отличие от циклаfor в структуре циклаwhileне предусмотрены элементы для изменения переменной, по которой организован цикл. Эти элементы должен предусмотреть сам пользователь в операторах цикла. Блок-схема цикла представлена на рис. 2.6.

Рис. 2.6. Блок-схема цикла while

Формат оператора цикла с неизвестным количеством повторений:

whileусловие

операторы

end

Тело цикла обязательно заканчивается служебным словом end.

Например, программа определения точности вычислений:

a=1;

while a+1 != 1

a=a/2;

end

a

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

Задание на лабораторную работу

  1. Написать программу (m-файл), которая строит график сферы или квадратной пирамиды по выбору пользователя. Выбор фигуры и длины запрашиваются у пользователя в процессе работы функции:

  • для сферы – это идентификатор и радиус – ‘сфера’,R.

  • для пирамиды – это идентификатор, высота, длина стороны основания – ‘пирамида’, hl.

  1. Написать программу (m-файл), которая строит график куба или конуса по выбору пользователя. Выбор фигуры задается как входные параметры функции:

  • для куба – это идентификатор и длина ребра – ‘куб’, r.

  • для конуса – это идентификатор, высота, радиус основания – ‘конус’, h, r.

  1. Написать программу (m-файл), которая создает трехмерную матрицу и “раскрашивает” её значениями в шахматном порядке по всему объему. Значение раскрашивания зависят от входного параметра идентификацииid:

  • id=digit– матрица заполняется числами1и0;

  • id=char– матрица заполняется буквами‘1’и‘0’.

Входные параметры – это размерность матрицы по трём координатам, идентификатор; выходной – сама матрица.

  1. Написать программу (m-файл), которая создает трёхмерную матрицу, заполненную случайными целыми числами (от 0 до 10) и производит арифметические поэлементные действия между двумерными массивами этой матрицы (по любой координате внутри матрицы). Значения операции зависит от идентификатора:

  • id = ‘+’

  • id = ‘–’

  • id = ‘*(поэлементное умножение).

Размерность матрицы по трём координатам и идентификатор запрашивается у пользователя в процессе работы функции. Выходной параметр – полученная матрица.

  1. Написать программу (m-файл), которая раскрашивает черно-белый рисунок красным или зеленым или синим цветом. Цвет зависит от входного параметра:

  • id = 'красный';

  • id = 'зеленый';

  • id = 'синий'.

Входной параметр – раскрашиваемый цвет.

  1. Написать программу (m-файл), которая инвертировала цвета черно-белого изображения (черное в белое, белое в черное) и поворачивала рисунок на угол кратный 90вокруг своей оси. Угол поворота зависит от входного параметра:

  • id= 90 – поворот на 90;

  • id= 180 – поворот на 180;

  • id= 270 – поворот на 270;

  • id= 0 – нет поворота;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]