Лабораторнаяработа №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
ELSE
a=b
-yEND IF
PRINT “a=”;a
PRINT “b=”;b
первыйконтрольныйрасчёт | второйконтрольныйрасчёт | реальныйрасчёт | |
a | 4.5 | 11877 | 1262.429 |
b | 11.5 | -109 | -35.54277 |
востальныхслучаях
;начало
вводx,a
-50
x -30или
-20 x -10
y=x -x
-2
x x=-5или
1 x 10
y=LOG(ABS(x))
20
x 50или
60 x 70
y=1/(x+a) y=SQR(x+a
)y=…
y
конец
INPUT“Введитеx, a”; x, a
IF x>=-50 and x=-20 and x
y=x^2-x
ELSEIF x>=-2 and x=1 and x=-5 THENy=LOG(ABS(x))
ELSEIF x>=20 and x=60 and x
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 +xc
y=…
y
конец
INPUT“Введитеa, b, c”; a, b, c
a=x
IFa
IFa
IFa
IFa
END IF
b=x
IFb>x
THENb=xIFb>x
THEN b=xIFb>x
THEN b=xIFb>x
THEN b=xEND IF
c=x
+x +xIFc
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=20INPUT“Ввестиa, b, h, c, d”; a, b, h, c, d
x=a: y
=-1E10: y =1E10DO
IF x
y=(EXP(x)(COS(x)^2)
ELSE IF x
y=(x^2)sin(x)
ELSE
y=LOG(x^2+1)COS(x)
END IF
PRINT “x=”;x, “y=”; y
IFy>y
THEN y =y;x =xIFy
x=x+h
IF x>b THEN EXIT DO
LOOP
P
y
=729.9988 x =5.9y
=9 x =2RINT “y =”;y ,“x =”;xPRINT“y
=”;y ,“x =”;xEND
3-COS2x a=
b= n=20INPUT“Введитеa, b, n”; a, b, n
h=(b-a)/n
x=a: y
=1E+10DO
y=ABS(3-COS(2x)
IFy
x=x+h
LOOP UNTIL x>b
PRINT“x
=”;xEND
Лабораторнаяработа №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 |
Дан одномерныймассив Найти среднееарифметическоеэлементовмассива, имеющихчётные номераи удовлетворяющихусловию ,а также суммуположительныхэлементовмассива. Всеотрицательныеэлементы исходногомассива разделитьна найденноезначение суммы.
INPUT"Ввод массива";N
FOR I = 1TO N
PRINT"A("; I; ")=";
INPUTA(I)
NEXT I
S = 0: K =0
FOR I = 2TO N STEP 2
IFA(I) > -10 AND A(I)
S =S + A(I)
K =K + 1
END IF
NEXT I
P = 0
FOR I = 1TO N
IFA(I) > 0 THEN
P =P + A(I)
END IF
NEXT I
FOR I = 1TO N
IFA(I)
A(I)= A(I) / P
END IF
NEXT I
IF K = 0THEN
PRINT"Делениена0"
ELSE
SR = S/ K
ENDIF
PRINT"Вывод новогомассива"
FOR I = 1TO N
PRINT"A("; I; ")="; A(I)
NEXTI
PRINT"Сумма положительныхэлементов=";P
PRINT"Средне арифметическоезначение="; SR
N | X1 | X2 | X3 | X4 | X5 |
5 | 1 | -2 | 3 | 4 | -5 |
P=8удовлетворяетусловию
Дан одномерныймассив Все элементыс чётными номерамии принадлежащимиинтервалу отА до В записатьв новый массив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 = 1TO N
PRINT"X("; I; ")=";
INPUTX(I)
NEXT I
K = 0
FOR I = 2TO N STEP 2
IFX(I) > A AND X(I)
K =K + 1
Y(K)= X(I)
END IF
NEXT I
J = 0
FOR I = 1TO N STEP 2
IFX(I)
J =J + 1
Z(J)= ABS(X(I))
END IF
NEXT I
IF K = 0THEN
PRINT"НетмассиваY"
ELSE
MINY =Y(1)
FOR I = 2TO K
IFY(I)
MINY= Y(I)
END IF
NEXT I
END IF
IF J = 0THEN
PRINT"Нет массиваZ"
ELSE
FOR I =1 TO K
PRINTY(I)
NEXT I
PRINT"MINY="; MINY
END IF
FOR I = 1TO J
IFZ(I) MOD 2 0 THEN
NPN= I
END IF
NEXT I
FOR I = 1TO 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
Заданаматрица В. найтиминимальныйэлемент матрицы.Все элементылежащие нижеглавной диагонали,умножить наэтот минимальныйэлемент.
INPUT"N,M"; N, M
DIMA(N, M)
PRINT "Ввод матрицы"
FORI = 1 TO N
FORJ = 1 TO M
PRINT "A(";I; ")=";
INPUT A(I, J)
NEXTJ
NEXTI
MIN= A(1, 1)
FORI = 1 TO N
FORJ = 1 TO M
IFMIN > A(I, J) THEN
MIN = A(I, J)
ENDIF
NEXTJ
NEXTI
FORI = 2 TO N
FORJ = 1 TO I - 1
A(I,J) = A(I, J) * MIN
NEXTJ
NEXTI
FORI = 1 TO N
FORJ = 1 TO M
PRINT A(I, J);
NEXTJ
NEXTI
END
Вычислитьопределительтреугольнойматрицы.
INPUT "Введитекол-во строки столбцовматрицы"; N
DIMA(N, N)
FORI = 1 TO N
FORJ = 1 TO N
PRINT "A("; I; ","; J; ")=";
INPUT A(I, J)
NEXTJ
NEXTI
P= 1
FORI = 1 TO N
FOR J = 1 TO N
IF I = J THEN
P = P * A(I, J)
END IF
NEXTJ
NEXT I
PRINT "Определительтреугольнойматрицы="; P
END
INPUT"Ввести M,N"; M, N
P = 1: S =0
FOR I = 1TO 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
DIMA(N)
FORI = 1 TO N
PRINT"A("; I; ")=";
INPUTA(I)
NEXTI
S= 0: K = 0: L = 0
FORI = 1 TO N
IFA(I) MOD 3 = 0 THEN
S= S + A(I)
K= K + 1
ENDIF
NEXTI
FORI = 2 TO N STEP 2
IFA(I) > 0 THEN
L= L + 1
ENDIF
NEXTI
PRINT"L="; L
IFK = 0 THEN
PRINT "Нет среднегозначения"
ELSE
SR= S / K
A(N)= A(N) - SR
FORI = 1 TO N
PRINT"A("; I; ")="; A(I)
NEXTI
ENDIF
Задан одномерныймассив X(N).Первый положительныйэлемент записатьна место максимальногос чётным номером.
N | X1 | X2 | X3 | X4 | X5 |
5 | -1 | 2 | -3 | 6 | 8 |
INPUT"Ввести массивN="; N
DIM X(N)
FOR I = 1TO N
INPUTX(I)
NEXT I
NPOL = 0
FOR I = 1TO N
IFX(I) > 0 THEN
NPOL= I
EXITFOR
END IF
NEXT I
IFNPOL = 0 THEN
PRINT"Нет положительныхэлементов"
ELSE
MAXX =X(2)
FOR I= 4 TO N STEP 2
IFX(I) > MAXX THEN
MAXX= X(I)
NMAXX= I
ENDIF
NEXTI
X(NMAXX)= X(NPOL)
FOR I= 1 TO N
PRINTX(I)
NEXTI
ENDIF
Новыймассив | ||||
-1 | 2 | -3 | 2 | 8 |