Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Опарин-практическая работа

.pdf
Скачиваний:
8
Добавлен:
23.02.2015
Размер:
676.78 Кб
Скачать

Министерство образования и науки Российской Федерации

ГОУ ВПО «Уральский государственный технический университет – УПИ имени первого Президента России Б.Н. Ельцина»

Д.В. Опарин

ПРАКТИКУМ ПО АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЮ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ QBASIC (часть I)

Учебное электронное текстовое издание Подготовлено кафедрой «Интеллектуальные информационные технологии»

Научный редактор: доцент, канд. техн. наук В.Г. Томашевич

Практикум по дисциплине «Информатика» для студентов всех форм обучения всех специальностей.

Практикум дополняет конспект лекций «Алгоритмизация и программирование на языке высокого уровня QBasic» (2009 г.). Включает семь лабораторных работ, рассматривающих основные вопросы раздела дисциплины «Информатика» «Программирование вычислительных задач с использованием алгоритмического языка высокого уровня». Приведены задания для самостоятельной подготовки и варианты заданий к работе.

ГОУ ВПО УГТУ-УПИ, 2010

Екатеринбург

2010

Содержание

 

 

Лабораторная работа 1.

Первые программы на QBasic................................

3

Лабораторная работа 2.

Организация работы пользователя в

 

среде системы программирования QBasic ...........................................

6

Лабораторная работа 3.

Программирование алгоритмов

 

разветвляющейся и циклической структур..........................................

8

Лабораторная работа 4. Обработка одномерных массивов .......................

12

Библиографический список ...........................................................................

16

2

Лабораторная работа 1

Первые программы на QBasic

Цель работы: первоначальное знакомство с работой программ, написан-

ных на языке QBasic.

Задание для самостоятельной подготовки

1.Получить представление о программах, написанных на языке QBasic.

2.Познакомиться с простейшими приѐмами работы в среде системы программирования QBasic (вход в среду, вход в меню, загрузка файла, сохра-

нение изменений в файле, запуск программы на выполнение, пользование

справкой).

Задание к работе

Запустить на выполнение и ознакомиться с работой программ, написан-

ных на языке QBasic (см. Приложение, файлы prim0001.bas – prim0012.bas). На основе программы, рисующей Российский флаг (файл prim0009.bas), создать программу, позволяющую в соответствии с вариантом задания (см. таблицу 1)

получить изображение флага одной из шестнадцати стран.

Таблица 1

Варианты заданий к лабораторной работе 1

 

Страна

Флаг

Цвета

 

 

 

 

 

 

 

 

 

 

 

1.

Бельгия

 

чёрный, жёлтый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

Дания

 

красный, белый

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

Продолжение табл. 1

 

 

 

 

 

 

 

 

Страна

Флаг

Цвета

 

 

 

 

 

 

 

 

 

 

 

3.

Франция

 

голубой, белый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

Финляндия

 

белый, светло-голубой

 

 

 

 

 

 

 

 

 

5.

Мадагаскар

 

белый, красный,

 

 

 

зелёный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.

Италия

 

зелёный, белый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.

Исландия

 

голубой, белый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8.

Чад

 

голубой, жёлтый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9.

Норвегия

 

красный, белый,

 

 

 

голубой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10.

Гвинея

 

красный, жёлтый,

 

 

 

зелёный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11.

Швейцария

 

красный, белый

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

Окончание табл. 1

 

Страна

Флаг

Цвета

 

 

 

 

 

 

 

 

 

 

 

12.

Нигерия

 

зелёный, белый,

 

 

 

зелёный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13.

Швеция

 

светло-голубой,

 

 

 

жёлтый

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14.

Румыния

 

голубой, жёлтый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15.

Мали

 

зелёный, жёлтый,

 

 

 

красный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16.

ОАЭ

 

красный, зелёный,

 

 

 

белый, чёрный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

Лабораторная работа 2

Организация работы пользователя в среде системы

программирования QBasic

Цель работы: освоение порядка работы в среде системы программиро-

вания QBasic, овладение практическими навыками разработки и программиро-

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

Задание для самостоятельной подготовки

1. Детально ознакомиться с порядком работы в среде системы програм-

мирования QBasic.

2. Изучить по конспекту лекций стандартные типы данных; правила за-

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

3. Ознакомиться с программой вычисления площади треугольника.

Задание к работе

Набрать программу вычисления площади треугольника s по формуле Ге-

рона:

 

 

 

s

p( p a)( p b)( p c) , где p (a b c) / 2 .

Вычислить площадь треугольника при тестовом (a = 3; b = 4; c = 5; s = 6)

и произвольном вариантах исходных данных.

Видоизменить программу, чтобы она учитывала то, что стороны тре-

угольника не могут быть отрицательными и сумма двух любых его сторон не может быть меньше третьей стороны (например, путѐм выдачи сообщения: «Неверные исходные данные. Повторите ввод» и организации повторного вво-

да исходных данных).

6

Программа вычисления площади треугольника на языке

QBasic

'Лабораторная работа 2

'Иванов Иван Иванович

'Группа Мт-190000

CLS

INPUT "Введите сторону треугольника a"; a

INPUT "Введите сторону треугольника b"; b

INPUT "Введите сторону треугольника c"; c p = (a + b + c) / 2

s = SQR(p * (p - a) * (p - b) * (p - c)) PRINT USING "Площадь треугольника #####.##"; s END

7

Лабораторная работа 3

Программирование алгоритмов разветвляющейся и

циклической структур

Цель работы: овладение практическими навыками разработки и про-

граммирования вычислительного процесса разветвляющейся и циклической

структур.

Задание для самостоятельной подготовки

1. Изучить возможности языка программирования QBasic для реализа-

ции:

1.1.условной и безусловной передачи управления;

1.2.вычислительного процесса разветвляющейся и циклической структур;

1.3.приѐма программирования – табулирования функции (вычисле-

ния значений функции при изменении значений аргумента в за-

данном диапазоне с шагом x).

2.Разработать алгоритм решения задачи в соответствии с заданием.

3.Составить программу табулирования функции.

4.Подготовить тесты (число тестов должно быть равно числу ветвей вы-

числительного процесса) для проверки правильности работы программы.

Задание к работе

Протабулировать функцию в соответствии с вариантом задания (см. таб-

лицу 2) путѐм многократного вычисления еѐ значения при изменении аргумен-

та в заданном диапазоне с заданным шагом (параметры, диапазон (начальное и конечное значения) и шаг изменения аргумента ввести с клавиатуры). Исполь-

зовать один из трѐх операторов цикла for – next, while – wend, do – loop (по ука-

занию преподавателя). Проверить правильность работы программы, протести-

8

ровав все три ветви алгоритма. Организовать вывод значений аргумента и вы-

численных значений функции в виде таблицы:

ТАБЛИЦА ФУНКЦИИ Y(X)

X Y

………………

………………

Таблица 2

Варианты заданий к лабораторной работе 3

 

Функция

 

 

 

 

 

 

 

 

 

 

 

Пара-

Диапазон

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

метры

и шаг

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,

 

 

 

 

 

 

 

 

 

 

 

 

 

если

x 1;

a = –0,5;

x [0; 3];

 

 

1.

 

 

 

 

2

ln( x),

 

 

 

 

 

 

если

1 x 2;

 

 

y a x

 

 

 

 

 

 

 

 

x = 0,15

 

 

 

 

 

a x

cos(b x),

 

 

 

если

x 2

b = 2

 

 

 

e

 

 

 

 

 

 

 

 

 

 

 

 

x2

7 / x2 ,

 

 

 

если x 1,2;

 

x [0,8; 2];

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

y a x3

7

 

x,

 

 

 

если

1,2 x 1,4;

a = 1,5

x = 0,1

 

 

 

ln( x 7

 

 

 

 

 

 

 

 

 

если x 1,4

 

 

 

 

x ),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a x2

b x c,

 

 

 

если x 1,1;

a = 2,8;

x [1; 2];

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.

 

 

 

 

 

x

2

 

1,

 

 

 

если 1,1 x 1,3;

b = –0,3;

 

 

 

 

y a / x

 

 

 

 

 

 

x = 0,05

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2 1,

 

x 1,3

 

 

 

 

(a b x) /

 

 

 

если

c = 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 2

7 / x 2 ,

 

 

 

если

x 1,3;

 

x [0,7; 2];

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

y a x3

7

 

x,

 

 

 

если

1,3 x 1,5;

a = 1,65

x = 0,1

 

 

 

ln( x 7

 

 

 

 

 

 

 

 

| x a |),

если

x 1,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1,5 a x cos

2

(x),

 

 

 

если

x 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x [0,2; 3];

 

 

5.

y

1,8 a x (x 2)2

6 a x,

если 1 x 2;

a = 2,3

x = 0,2

 

 

 

3 a x tg(x),

 

 

 

 

 

 

если

x 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

e a x

cos(a x),

 

 

 

если x a 0,25;

 

x [1; 5];

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.

y x sin(a x),

 

 

 

 

 

 

 

 

если

a 0,25 x a 0,25;

a = 2,5

x = 0,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

x

a,

 

 

 

 

 

 

 

 

 

если

x a 0,25

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

 

 

 

 

Продолжение табл. 2

Функция

 

Пара-

Диапазон

 

метры

и шаг

 

 

 

 

 

 

 

 

 

b x ln(b x),

если b x 0,9;

 

x [0,1; 1];

 

 

 

 

7.

y 1,

если 0,9 b x 1,1;

b = 1,5

x = 0,1

 

b x ln(b x),

если b x 1,1

 

 

 

 

 

 

 

a cos2 (b x),

если x 3,3;

8.

 

если 3,3 x 3,7;

y a b c 1,

 

a sin(b x) ln(| c x |),

если x 3,7

 

 

 

a = 1;

x [2; 5];

b = 2;

x = 0,25

c = 3

 

sin 2

 

 

если x 0,85;

 

 

| a x |,

x [0,5; 2];

 

 

 

 

 

9.

y a 1,

 

 

если 0,85 x 1,15;

a = 20,3

 

ln( x 1),

если x 1,15

x = 0,1

 

 

 

 

 

 

(ln 3 | x | x2 ) / | x t |,

10. y x t 1/ x,

cos(x) t sin 2 (x),

если x 0,5;

x [0,2; 2];

если

0,5 x 0,9;

t = 2,2

если

x 0,9

x = 0,2

 

 

 

(a b) /(ex cos(x)),

если x 2,8;

a = 2,6;

x [0; 7];

 

 

 

 

 

 

 

 

 

11.

y

(a b) /(x 1),

если

2,8 x 6;

 

x = 0,5

 

 

 

x

sin( x),

если

x 6

b = –0,39

 

e

 

 

 

 

 

2 a cos(x) 3 x2 ,

если x 1;

 

x [0,8; 2];

 

 

 

 

 

 

 

 

 

 

12.

y 1,

 

 

 

если

1 x 1,3;

a = 0,9

x = 0,1

 

 

 

 

 

 

 

 

x 1,3

 

 

 

 

 

 

 

 

 

 

a ln( x) 3 | x |,

если

 

 

 

a / x b x2 c,

если x 4;

13.

 

 

 

если 4 x 6;

y x,

 

 

 

 

3

,

если x 6

 

a x b x

 

a = 2,1;

x [1; 13];

b = 1,8;

x = 1

c = –20,5

 

a sin((x2

1) / n),

если x 5;

a = 0,3;

x [1; 10];

 

 

 

 

14.

y x,

 

если 5 x 8;

 

x = 1

 

a cos(x 1/ n),

если x 8

n = 10

 

 

 

 

 

 

10

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