Скачать .zip |
Реферат: Лабораторные работы по информатике
Лабораторная работа №1
Тема: «Разработка простейших программ линейных структур»
Под работы:
Запись формул.
Контрольный расчёт для индивидуального задания.
Запись формул индивидуального задания на BASICе.
Блок схема алгоритма.
Программа.
Таблица результатов расчётов по заданию.
первый набор данных | второй набор данных | |
a | 7.5 | 0.918 |
b | 0.5 | 2.117 |
c | 10 | 3.219 |
начало
ввод a,b,c
y=…
y
конец
INPUT “Введите a, b, c”; a, b, c
y=(a+b)/c+(SIN(b)^2+a+0.25+0.2c)^(1/3)
PRINT “y=”; y
(SIN(x+b)^a(c^2+x^0.7LOG(a))^(115))/(SQR(x+a)+1)
((a^(x+m)COS(x)+SQR((LOG(a+b)/LOG10)^2)/(1+(x+a)^(1/3))
контрольный расчёт | первый машинный расчёт | второй машинный расчёт |
3.036 | 2.952986 | 2.307602 |
;
;
где: x=4, y=2
исходные данные для реального примера | |
x | 3.916 |
y | 1.612 |
a=(x^2+y+SIN(y/x))/(x+y^2)^(1/3)+x^y;
b=(x+6y)^(1/4)/SIN(1/y)
начало
ввод x,y
a=…
b=…
a
b
конец
INPUT “Введите x, y”; x, y
a=(x^2+y+SIN(y/x))/(SQR(x+y^2)+x^y)
b=(x+6y)^(1/4)/SIN(1/y)
PRINT “a=”; a
PRINT “b=”; b
контрольный расчёт | первый машинный расчёт | второй машинный расчёт | |
a | 1.02 | 1.026635 | 1.591904 |
b | 4 | 4.171659 | 3.302746 |
Лабораторная работа №2
Тема: «Разработка разветвлённых программ»
Цель: Изучение методов составления блок-схем алгоритмов и программ с разветвлениями на BASICе.
Ход работы:
Изучить основные сведения, необходимые для составления блок-схем алгоритмов с разветвлённой структурой.
Изучить операторы условной и безусловной передачи управления.
Изучить примеры, приведённые в описании данной работы.
Ответить на контрольные вопросы.
Составить блок-схему алгоритмов и программ на BASICе для решения следующих задач:
;
первый контрольный набор | второй контрольный набор | реальный набор | |
x | 4 | 6 | 4.576 |
y | 5 | 2 | 0.927 |
b=(ABS(x^3)+y)/(2y-x)
начало
ввод x,y
b=…
да
нет
x
a, b
конец INPUT
“Введите x,
y”; x, y b=(ABS(x^3)+y)/(2y-x) IF x a=x-b ELSE a=b-y END IF PRINT “a=”;
a PRINT “b=”;
b
в
остальных
случаях
начало
ввод
x,a
-50x-30
или
-20x-10
y=x-x
-2x
x=-5
или
1x10
y=LOG(ABS(x))
20x50
или
60x70
y=1/(x+a)
y=SQR(x+a)
y=…
y
конец INPUT
“Введите
x, a”; x, a IF x>=-50 and x<=-30
or x>=-20 and x<=-10 THEN y=x^2-x ELSE
IF x>=-2 and x<=-1 or x>=1 and x<=10 or x>=-5 THEN
y=LOG(ABS(x)) ELSE
IF x>=20 and x<=50 or x>=60 and x<=70 THEN y=SQR(x+a^2) ELSE y=1/(x+a) END IF PRINT
“x=”; x PRINT “y=”;
y
начало
ввод
a, b, c
a=x
a
a
a
a
b=x
b>x
b=x
b>x
b=x
b>x
b=x
b>x
b=x
c=x+x+x
c
y=…
y
конец INPUT
“Введите
a, b, c”; a, b, c a=x IF
a IF
a IF
a IF
a END IF b=x IF
b>xTHEN
b=x IF
b>x
THEN b=x IF
b>x
THEN b=x IF
b>x
THEN b=x END IF c=x+x+x IF
c END IF y=(2aa+3b-c)/(b+c) PRINT “y=”;
y Лабораторная
работа №3 М
(x;y)
y n=2
n=1
x
-1 +1 n=1
n=2 INPUT
“Введите
x, y, z”; x, y, z IF x^2+y^2>R THEN n=3 ELSE IF x+y>0 THEN n=1 ELSE n=2 END IF PRINT “n=”;
n
2x+1
e
3+1
a=2 b=6 n=20 INPUT
“Ввести
a, b, h, c, d”; a, b, h, c, d x=a
: y=-1E10
: y=1E10 DO IF x<=c THEN y=(EXP(x)(COS(x)^2) ELSE IF x<=d THEN y=(x^2)sin(x) ELSE y=LOG(x^2+1)COS(x) END IF PRINT “x=”;
x, “y=”; y IF
y>y
THEN y=y;
x=x IF
y x=x+h IF x>b THEN EXIT DO LOOP P
y=729.9988
x=5.9 y=9
x=2
первый
контрольный
расчёт
второй
контрольный
расчёт
реальный
расчёт
a
4.5
11877
1262.429
b
11.5
-109
-35.54277
PRINT “y=”; y, “x=”; x
END
3-COS2x a= b= n=20
INPUT “Введите a, b, n”; a, b, n
h=(b-a)/n
x=a : y=1E+10
DO
y=ABS(3-COS(2x)
IF
y
x=x+h
LOOP UNTIL x>b
PRINT “x=”; x
END
Лабораторная работа №4
Тема: «Составление циклических программ. Вычисление сумм и произведений»
контрольный пример | Реальный пример |
L=2 | L=14 |
начало
ввод L
P=1; j=1
p=p(2j+L)/(j+2)
j=j+1
jM
y=p
y
конец
INPUT “Введите L”; L
P=1
FOR j=1 TO L
P=P(2j+l)/(j+2)
NEXT j
PRINT “P=”; P
END
контрольный пример | реальный пример |
P=2 | P=1.5876 |
контрольный пример | реальный пример |
N=3 | N=12 |
M=2 | M=14 |
P=3 | P=4.6 |
INPUT “Введите M, N, L”; M, N, L
P=1
FOR k=1 TO m
P=P((2k+L)/(L+k))
NEXT k
S=1
FOR k=1 TO m
S=S(k^2/(k^2+1))
NEXT k
Z=0
FOR i=1 TO n
Z=Z+(i^2+L)/(2Li)
NEXT i
y=P/(S+Z)
PRINT “y=”; y
контрольный пример | реальный пример |
y=1.553957 | y=4.346143 |
ИДЗ №1
Дан одномерный массив Найти среднее арифметическое элементов массива, имеющих чётные номера и удовлетворяющих условию , а также сумму положительных элементов массива. Все отрицательные элементы исходного массива разделить на найденное значение суммы.
INPUT "Ввод массива"; N
FOR I = 1 TO N
PRINT "A("; I; ")=";
INPUT A(I)
NEXT I
S = 0: K = 0
FOR I = 2 TO N STEP 2
IF A(I) > -10 AND A(I) < 5 THEN
S = S + A(I)
K = K + 1
END IF
NEXT I
P = 0
FOR I = 1 TO N
IF A(I) > 0 THEN
P = P + A(I)
END IF
NEXT I
FOR I = 1 TO N
IF A(I) < 0 THEN
A(I) = A(I) / P
END IF
NEXT I
IF K = 0 THEN
PRINT "Деление на 0"
ELSE
SR = S / K
END IF
PRINT "Вывод нового массива"
FOR I = 1 TO N
PRINT "A("; I; ")="; A(I)
NEXT I
PRINT "Сумма положительных элементов="; P
PRINT "Средне арифметическое значение="; SR
-
N
X1
X2
X3
X4
X5
5 1 -2
3 4 -5
P=8 удовлетворяет условию
ИДЗ №2
Дан одномерный массив Все элементы с чётными номерами и принадлежащими интервалу от А до В записать в новый массив Y, а все отрицательные элементы с нечётными номерами, предварительно заменив их на модули, записать в массив Z. В массиве Y найти наименьший элемент, а в массиве Z последний нечётный элемент.
A |
B |
N |
X1 |
X2 |
X3 |
X4 |
X5 |
X6 |
X7 |
X8 |
X9 |
X10 |
3 | 10 | 10 | 1 |
8 |
-4 | -2 | 5 |
6 |
-1 |
7 |
-10 |
9 |
INPUT "A="; A
INPUT "N="; N
DIM X(N), Y(N)
FOR I = 1 TO N
PRINT "X("; I; ")=";
INPUT X(I)
NEXT I
K = 0
FOR I = 2 TO N STEP 2
IF X(I) > A AND X(I) < B THEN
K = K + 1
Y(K) = X(I)
END IF
NEXT I
J = 0
FOR I = 1 TO N STEP 2
IF X(I) < 0 THEN
J = J + 1
Z(J) = ABS(X(I))
END IF
NEXT I
IF K = 0 THEN
PRINT "Нет массива Y"
ELSE
MINY = Y(1)
FOR I = 2 TO K
IF Y(I) < MINY THEN
MINY = Y(I)
END IF
NEXT I
END IF
IF J = 0 THEN
PRINT "Нет массива Z"
ELSE
FOR I = 1 TO K
PRINT Y(I)
NEXT I
PRINT "MINY="; MINY
END IF
FOR I = 1 TO J
IF Z(I) MOD 2 <> 0 THEN
NPN = I
END IF
NEXT I
FOR I = 1 TO J
Y(N) |
MINY |
Z(K) |
Z(NPN) |
8,6,7,9 | 6 | 4,1,10 | 1 |
NEXT I
PRINT "Z(NPN)="; Z(NPN)
END
ИДЗ №1
Задана матрица В. найти минимальный элемент матрицы. Все элементы лежащие ниже главной диагонали, умножить на этот минимальный элемент.
INPUT "N,M"; N, M
DIM A(N, M)
PRINT "Ввод матрицы"
FOR I = 1 TO N
FOR J = 1 TO M
PRINT "A("; I; ")=";
INPUT A(I, J)
NEXT J
NEXT I
MIN = A(1, 1)
FOR I = 1 TO N
FOR J = 1 TO M
IF MIN > A(I, J) THEN
MIN = A(I, J)
END IF
NEXT J
NEXT I
FOR I = 2 TO N
FOR J = 1 TO I - 1
A(I, J) = A(I, J) * MIN
NEXT J
NEXT I
FOR I = 1 TO N
FOR J = 1 TO M
PRINT A(I, J);
NEXT J
NEXT I
END
ИДЗ №2
Вычислить определитель треугольной матрицы.
INPUT "Введите кол-во строк и столбцов матрицы"; N
DIM 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
P = 1
FOR I = 1 TO N
FOR J = 1 TO N
IF I = J THEN
P = P * A(I, J)
END IF
NEXT J
NEXT I
PRINT "Определитель треугольной матрицы="; P
END
INPUT "Ввести M,N"; M, N
P = 1: S = 0
FOR I = 1 TO N
P = P * (I / (2 + I))
FOR J = 1 TO M
S = S * (I + J)
NEXT j
NEXT I
Y = P + S
PRINT "Y="; Y
ОДЗ №1
Задан одномерный массив. Найти среднее арифметическое элементов, делящихся на 3 без остатка и количество положительных элементов с чётными номерами. Найденное среднее вычесть из значения последнего элемента.
INPUT "Ввести массив N="; N
DIM A(N)
FOR I = 1 TO N
PRINT "A("; I; ")=";
INPUT A(I)
NEXT I
S = 0: K = 0: L = 0
FOR I = 1 TO N
IF A(I) MOD 3 = 0 THEN
S = S + A(I)
K = K + 1
END IF
NEXT I
FOR I = 2 TO N STEP 2
IF A(I) > 0 THEN
L = L + 1
END IF
NEXT I
PRINT "L="; L
IF K = 0 THEN
PRINT "Нет среднего значения"
ELSE
SR = S / K
A(N) = A(N) - SR
FOR I = 1 TO N
PRINT "A("; I; ")="; A(I)
NEXT I
END IF
ОДЗ №2
Задан одномерный массив X(N). Первый положительный элемент записать на место максимального с чётным номером.
-
N
X1
X2
X3
X4
X5
5 -1 2
-3 6
8
INPUT "Ввести массив N="; N
DIM X(N)
FOR I = 1 TO N
INPUT X(I)
NEXT I
NPOL = 0
FOR I = 1 TO N
IF X(I) > 0 THEN
NPOL = I
EXIT FOR
END IF
NEXT I
IF NPOL = 0 THEN
PRINT "Нет положительных элементов"
ELSE
MAXX = X(2)
FOR I = 4 TO N STEP 2
IF X(I) > MAXX THEN
MAXX = X(I)
NMAXX = I
END IF
NEXT I
X(NMAXX) = X(NPOL)
FOR I = 1 TO N
PRINT X(I)
NEXT I
END IF
Новый массив |
||||
-1 |
2 |
-3 |
2 |
8 |