Главная
страница 1
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ Российской федерации

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Нижегородский государственный университет им. Н.И. Лобачевского»

(ННГУ)

Экономический факультет

Кафедра экономической информатики
Савилова Е.В.

Методические указания к выполнению лабораторных работ (QBasic)

Электронное учебно-методическое пособие

Нижний Новгород

2012


Методические указания к выполнению лабораторных работ (QBasic)

Савилова Е.В. Электронное учебно-методическое пособие. – Нижний Новгород: Нижегородский госуниверситет, 2012. – 22 с.

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

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

Рецензент: к.э.н., доцент Долгова Галина Борисовна

Содержание

1. Программирование сложной функции……………………………………………4

Лабораторная работа №1…………………………………………………………6

2. Программирование степенных рядов……………………………………………..7

Лабораторная работа № 2……………………………………………………….10

3. Программирование одномерных массивов………………………………………10

4. Программирование двумерных массивов…………………………………………15

Лабораторная работа № 3……………………………………………………..22

1. Программирование сложной функции.


1)

CLS


INPUT “Введите X”; X

INPUT “Введите A”; A

IF X<= -1 THEN Y=cos(X)

IF X<= 2 AND X>-1 THEN Y=exp((-A)*X)

IF X> 2 THEN Y=A*sin(X)

END
Запрограммировать сложную функцию

2)

CLS * очистка экрана

INPUT “Введите X”; X* ввод X c клавиатуры

INPUT “Введите D”; D* ввод D c клавиатуры

IF d/x>1 THEN Y=ABS(X)+ABS(D)

IF d/x<=1 AND d/x>-1 THEN Y=(X-D)/(X+D) ELSE Y=sin(D*exp(X))

END
3)

CLS


INPUT “Введите X”; X

INPUT “Введите A”; A

IF A*X<=3 THEN Y=(A+X)^5

IF A*X<=5 AND A*X>3 THEN Y=A/X

IF A*X>5 THEN Y= A*sin(X)

END


4)
CLS

INPUT “Введите X”; X

INPUT “Введите A”; A

IF ABS (A-X)<=2 THEN Y=A^2*sqr(X)

IF ABS (A-X)<=3 AND ABS (A-X)>2 THEN Y=sin(A*X)

IF ABS (A-X)>3 THEN Y=A*cos(A*X)

END
5)
CLS

INPUT “Введите X”; X

INPUT “Введите A”; A

IF A/X<= - 1 THEN Y=ATN(A^2+X^2)

IF A/X<= 2 AND A/X>=- 1 THEN Y=A*sin(X)

IF A/X>2 THEN Y=exp(X)*(-A)

END

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



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

3.

4.

5.

6.

7.

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

2.1. Известно количество слагаемых

2.2 Неизвестно количество слагаемых (с точностью)
2.1. Известно количество слагаемых

1)


Входные параметры: x, n

Выходные параметры: s(ex)

CLS

INPUT “Введите X”; X



INPUT “Введите кол-во слагаемых”; N

S=Ø1 : P=1 *Присваиваем начальное значение счетчика суммы 1, произведение =1

FOR I=1 TO N

P=P*I *Формируем знаменатель

S=S+X^I/P *Формируем сумму

NEXT I


PRINT “Значение экспоненты равно”; S *вывод на экран значение экспоненты

END


2)

CLS


INPUT “Введите X”; X

INPUT “Введите N”; N

S=1 : P=1 : K=-1 *k регулирует смену знака

FOR I=1 TO N STEP 2 *STEP2, т.к. у X только четные степени

P=P*I

S=S+K*X^I/P



K= - K *смена знака

NEXT I


PRINT «cos =»; S
3)

CLS


INPUT “Введите X”; X

INPUT “Введите N”; N

S=0 : P=1 : K=-1

FOR I=1 TO N STEP 2

P=P*I

S=S+K*X^I/P



K=-K

NEXT I


PRINT “sin=”; S

END


В отличие от предыдущей программы значение счетчика суммы зануляем, т.к. суммирование идет с X, а не с 1
2.2 Вычисление суммы степенного ряда с точностью

1)

С клавиатуры вводим точность E.

CLS


INPUT “Введите X”; X

INPUT ”Введите точность E”; E

S=1 : P=1

WHILE S>=E *когда выражение S>=E истинно, то работа цикла WHILE… WEND прекращается

P=P*I

S=S+X^I/P



WEND

PRINT “S=”; S

END
2)

CLS


INPUT “Введите X”; X

INPUT “Введите точность E”; E

S=1 : P=1 : K= -1

WHILE S>=E

P=P*I

S=S+K*X^I/P



K= -K

WEND


PRINT “cos x”; S

END


3)

CLS


INPUT “Введите X”; X

INPUT “Введите точность E”; E

S=0 : P=1 : K= -1 * «:» - разделение двух операторов

WHILE S>=E

P=P*I

S=S+K*X^I/P



K= -K

WEND


PRINT “значение синуса равно”; S

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

Программирование степенных рядов

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


1. -12.

3.

4.

5.

6.

7. , a≠0,
3. Программирование одномерных массивов (работа с векторами)
– вектор из n компонент соответствует в программировании одномерному массиву.

DIM A(N) – в памяти компьютера резервируется n ячеек под элементы массива A

A(2)

1

2

3



N

A(1) A(3) A(N) - N ячеек памяти

Каждой ячейке соответствует компонента вектора или число.

1) Найти сумму компонент вектора

CLS


INPUT “Введите N”; N

DIM A(N) *Резервируем n ячеек памяти под массив

S=Ø

FOR I=1 TO N



PRINT “Введите A(“; I; “)=”

INPUT A(I)

NEXT I

FOR I=1 TO N



S=S+A(I)

NEXT I


PRINT “Значение суммы равно”; S

END
2) Найти произведение P=1*2*…*n

CLS

INPUT “Введите N”; N



P=1

FOR I=1 TO N

P=P*I

NEXT I


PRINT “Произведение равно”; P

END
В отличие от предыдущей программы массив не создается, т.к. требуется найти произведение элементов от 1 до n (1, 2, 3, …n)


3) Найти максимальный элемент одномерного массива и вывести на экран его номер

CLS


INPUT «Ввести размерность массива»; N

DIM A(N)


FOR I=1 TO N

PRINT “Введите A (“; I; ”)=”

INPUT A(I)

NEXT I


MAX=A(1)

FOR I=1 TO N

IF A(I)>MAX THEN MAX=A(I) : K=I

NEXT I


PRINT “Максимальный элемент равен”; MAX

PRINT “Его номер”; K

END
Алгоритм поиска максимального элемента: если очередной элемент массива больше содержимого ячейки «MAX», то содержимое ячейки «MAX» заменяется на этот элемент.

4) Найти минимальный элемент одномерного массива и запомнить его номер.

CLS

INPUT «Ввести размерность массива»; N



DIM A(N)

FOR I=1 TO N

PRINT “Введите A (“; I; ”)=”

INPUT A(I)

NEXT I

MIN=A(1)


FOR I=1 TO N

IF A(I)

NEXT I

PRINT “Минимальный элемент равен”; MIN



PRINT “Его номер”; L

END
5) Найти среднее арифметическое элементов одномерного массива

CLS

INPUT “Ввести размерность массива”; N



DIM A(N)

FOR I=1 TO N

PRINT “Введите A (“; I; ”)=”

INPUT A(I)

NEXT I

S=0


FOR I=1 TO N

S=S+A(I)


NEXT I

SR=S/N


PRINT “Среднее значение элементов массива”; SR

END
6) Найти сумму элементов массива, стоящих на четных местах

CLS

INPUT “Введите размерность массива”; N



DIM A(N)

FOR I=1 TO N

PRINT “Введите A (“; I; ”)=”

INPUT A(I)

NEXT I

FOR I=2 TO N STEP 2 *обеспечивает суммирование элементов на четных местах



S=S+A(I)

NEXT I


PRINT “Сумма равна”; S

END


7) Дан вектор и . Найти α, β – задаются с клавиатуры (α соответствует L, β соответствует K)

CLS


INPUT “Введите L”; L

INPUT “Введите K”; K

DIM A(N)

DIM B(N)

DIM C(N)

FOR I=1 TO N

PRINT “Введите A(“; I; “)=”

INPUT A(I)

NEXT I

FOR I=1 TO N



PRINT “Введите B(“; I; “)=”

INPUT B(I)

NEXT (I)

FOR I=1 TO N

C(I)=L*A(I)+K*B(I)

NEXT I


FOR I=1 TO N

PRINT C(I);

NEXT I

END



4. Программирование двумерных массивов (работа с матрицами)
- матрица

Каждой матрице соответствует двумерный массив в программировании A(I; J), где I-строки матрицы A (I изменяется от 1 до N), J-столбцы матрицы A (J изменяется от 1 до N).


1) Найти сумму элементов матрицы A.

CLS


INPUT “Введите количество строк и столбцов”; N

FOR I=1 TO N

FOR J=1 TO N

PRINT “Введите A(“; I, J; ”)=”

INPUT A(I, J)

NEXT J


NEXT I

S=0


FOR I=1 TO N

FOR J=1 TO N

S=S+A(I, J)

NEXT J


NEXT I

PRINT “Сумма элементов матрицы равна”; S

END
2) Найти сумму положительных элементов матрицы A.

CLS


INPUT “Введите количество строк и столбцов”; N

FOR I=1 TO N

FOR J=1 TO N

PRINT “Введите A(“; I, J; ”)=”

INPUT A(I, J)

NEXT J


NEXT I

S=0


FOR I=1 TO N

FOR J=1 TO N

IF A(I, J)>0 THEN S=S+A(I, J)

NEXT J


NEXT I

PRINT “Сумма положительных элементов матрицы равна”; S

END

3) Найти произведение отрицательных элементов матрицы A.



CLS

INPUT “Введите количество строк и столбцов”; N

FOR I=1 TO N

FOR J=1 TO N

PRINT “Введите A(“; I, J; ”)=”

INPUT A(I, J)

NEXT J

NEXT I


FOR I=1 TO N

FOR J=1 TO N

IF A(I, J)< 0 THEN P=P*A(I,J)

NEXT J


NEXT I

PRINT “Произведение отрицательных элементов равно”; P

END

4) Найти сумму элементов, стоящих на главной диагонали



CLS

INPUT “Введите количество строк и столбцов”; N

FOR I=1 TO N

FOR J=1 TO N

PRINT “Введите A(“; I, J; ”)=”

INPUT A(I, J)

NEXT J

NEXT I


S=0

FOR I=1 TO N

FOR J=1 TO N

IF I=J THEN S=S+A(I, J)

NEXT J

NEXT I


PRINT “Сумма равна”; S

END
5) Найти сумму элементов первой строки матрицы.

CLS

INPUT “Введите количество строк и столбцов”; N



FOR I=1 TO N

FOR J=1 TO N

PRINT “Введите A(“; I, J; ”)=”

INPUT A(I, J)

NEXT J

NEXT I


S=0

FOR I=1 TO N

FOR J=1 TO N

S=S+A(1, J)

NEXT J

NEXT I


PRINT “Сумма элементов 1 строки равна”; S

END


6. Дана матрица A=[aij] размерности m на n. Найти транспонированную матрицу, то есть заменить строки матрицы ее столбцами, а столбцы – строками, т.е. bij=aji

CLS


PRINT Введите число строк матрицы А

INPUT M

PRINT Введите число столбцов матрицы А

INPUT N


DIM A(M,N), B(N,M)

REM ввод матрицы А

FOR I=1 TO M

FOR J=1 TO N

PRINT Введите A(; I; J; );

INPUT A(I, J)

NEXT J

NEXT I


REM вывод матрицы А

PRINT Матрица А

FOR I=1 TO M

FOR J=1 TO N

PRINT A(I, J);

NEXT J


PRINT

NEXT I


REM транспонирование матрицы

FOR I=1 TO M

FOR J=1 TO

B(I, J)= A(J, I)

NEXT J

NEXT I


REM вывод транспонированной матрицы

FOR I=1 TO N

FOR J=1 TO M

PRINT B (I, J);

NEXT J

PRINT


NEXT I

END


7. Дана квадратная матрица A=[aij] порядка n. Найти транспонированную матрицу, то есть заменить строки матрицы ее столбцами, а столбцы – строками, т.е. bij=aji

CLS


INPUT Введите число элементов массива; N

DIM A(N,N), B(N,N)

REM ввод двумерного массива A(N, N)

FOR I=1 TO N

FOR J=1 TO N

PRINT Введите A(; I; J; );

INPUT A(I, J)

NEXT J


NEXT I

REM вывод двумерного массива

PRINT Исходная матрица

FOR I=1 TO N

FOR J=1 TO N

PRINT A(I,J);

NEXT J

PRINT


NEXT I

REM транспонирование квадратной матрицы

FOR I=1 TO N-1

FOR J=I +1 TO N

P= A(I,J)

A(I, J)= A(J,I)

A(J, I)=P

NEXT J


NEXT I

REM вывод транспонированной матрицы

FOR I=1 TO N

FOR J=1 TO N

PRINT A (I,J);

NEXT J


PRINT

NEXT I


END

8. Дана матрица A=[aij] размерности m на n. Удалить из матрицы строку с заданным номером k. Все строки, начиная с k+1 нужно переместить вверх. Число строк уменьшится на 1

CLS


PRINT Введите число строк матрицы А

INPUT M

PRINT Введите число столбцов матрицы А

INPUT N


DIM A(M,N)

REM ввод матрицы А

FOR I=1 TO M

FOR J=1 TO N

PRINT Введите A(; I; J; );

INPUT A(I, J)

NEXT J

NEXT I


REM вывод матрицы А

PRINT Матрица А

FOR I=1 TO M

FOR J=1 TO N

PRINT A(I, J);

NEXT J


PRINT

NEXT I


REM удаление строки из матрицы

M=M-1


FOR I=K TO M

FOR J=1 TO N

A(I, J)=A(I+1, J)

NEXT J


NEXT I

REM вывод преобразованной матрицы

FOR I=1 TO M-1

FOR J=1 TO N

PRINT A (I, J);

NEXT J


PRINT

NEXT I


END

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

Операции с матрицами
1. Найти максимальное из чисел, встречающихся в заданном целочисленном массиве более одного раза.

2. Найти сумму элементов квадратной матрицы, расположенных на главной диагонали.

3. Дана матрица A(N, N), B(N,N). Найти произведение С(I, J)=A(I, J)*B(I, J).

4. Найти произведение элементов матрицы, стоящих на побочной диагонали.

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

6. В матрице заменить все максимальные элементы минимальными и наоборот.



7. Переставить местами элементы 2-го и 3-го столбца.


Смотрите также:
Методические указания к выполнению лабораторных работ (QBasic) Электронное учебно-методическое пособие Нижний Новгород 2012
163.2kb.
1 стр.
Методические указания по выполнению практических работ по курсу "Экология"
207.09kb.
1 стр.
Методические указания к выполнению лабораторных работ по курсу Информатика Таганрог 2009
225.79kb.
1 стр.
Методические указания по выполнению лабораторных работ Практикум
282.01kb.
1 стр.
Учебно-методическое пособие Ижевск 2012 резьбовые соединения учебно-методическое пособие Ижевск 2012 (075)
420.54kb.
3 стр.
Методические указания к выполнению лабораторных работ для бакалавров, специалистов и магистров по направлениям 200100 Приборостроение
271.97kb.
1 стр.
Методическое пособие по выполнению курсовых работ по курсу
153.17kb.
1 стр.
Учебно-методическое пособие по дисциплине Уголовное право Германии (на немецком языке, dsg)содержит методические указания и задания для семинарских занятий, методические указания для самостоятельной работы студентов
91.99kb.
1 стр.
Учебно-методическое пособие для семинарских занятий, самостоятельной работы, контрольных работ специалистов и бакалавров очной и заочной форм обучения
925.04kb.
6 стр.
Методические рекомендации по выполнению практических работ Нижний Новгород 2011 ббк п-26
757.33kb.
10 стр.
Методическое пособие для студентов всех форм обучения специальности «Физическая культура для лиц с отклонениями в состоянии здоровья
482.09kb.
2 стр.
Учебно-методический комплекс по дисциплине «залоговое право» для специальности «Юриспруденция»
613.68kb.
5 стр.