Лаба 1. бардина лаба1. Лабораторная работа 1 программирование линейных вычислительных процессов
Скачать 231.33 Kb.
|
Лабораторная работа № 1 ПРОГРАММИРОВАНИЕ ЛИНЕЙНЫХ ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ Цель работы: приобретение умений и навыков разработки, отладки и тестирования программ, реализующих алгоритмы линейной структуры с помощью стандартных процедур и функций. Задания Задание 1. Используя табл. 1.1, разработать и отладить программу для организации ввода и вывода данных определенных типов. Сделать в ней соответствующие заголовки. Вариант 17(2) Исходные данные.
PROGRAM gjh17; {заголовок программы} USES CRT; CONST {блок описания констант} d=FALSE; {константа d имеет значение «ложь»} VAR {блок описания переменных} a1,a2,a3 : INTEGER; {переменные a1, a2, a3 — целочисленные} b1,b2 : REAL; {переменная b1 — вещественная} c1,c2,c3,c4,c5 : CHAR; {переменные c1, c2 — символьные} BEGIN {начало тела программы} ClrScr; WRITELN; {блок ввода данных} WRITELN('a1=111111, a2=222222, a3=333333: '); READLN(a1,a2,a3); WRITELN('Введите значение вещественной переменной b1=111.111,b2=222.222: '); READLN(b1,b2); WRITELN('Введите значения символьных переменных c1, c2, c3, c4, c5: '); READLN(c1,c2,c3,c4,c5); {блок вывода данных} WRITELN('Значения целочисленных переменных: '); WRITELN('a1 = ',a1:6,', a2 = ',a2:6,', a3 = ',a3:6); WRITELN('Значение вещественной переменной: '); WRITELN('b1 = ',b1:7:3,',b2 = ',b2:7:3); WRITELN('Значения символьных переменных: '); WRITELN('c1 = ',c1,', c2 = ',c2,',c3 = ',c3,',c4 = ',c4,',c5 = ',c5); WRITELN('Значение логической константы: '); WRITELN('d = ',d); READLN; END. РЕЗУЛЬТАТ Вариант 18(3) Исходные данные.
PROGRAM gjh18; {заголовок программы} USES CRT; CONST {блок описания констант} d=TRUE; {константа d имеет значение «истина»} VAR {блок описания переменных} a1,a2,a3 : INTEGER; {переменные a1, a2, a3 — целочисленные} b1,b2 : REAL; {переменная b1 — вещественная} c1,c2,c3 : CHAR; {переменные c1, c2 — символьные} BEGIN {начало тела программы} ClrScr; WRITELN; {блок ввода данных} WRITELN('a1=111111, a2=222222, a3=333333: '); READLN(a1,a2,a3); WRITELN('Введите значение вещественной переменной b1=11.111,b2=22.222: '); READLN(b1,b2); WRITELN('Введите значения символьных переменных c1, c2, c3: '); READLN(c1,c2,c3); {блок вывода данных} WRITELN('Значения целочисленных переменных: '); WRITELN('a1 = ',a1:6,', a2 = ',a2:6,', a3 = ',a3:6); WRITELN('Значение вещественной переменной: '); WRITELN('b1 = ',b1:6:3,',b2 = ',b2:6:3); WRITELN('Значения символьных переменных: '); WRITELN('c1 = ',c1,', c2 = ',c2,',c3 = ',c3); WRITELN('Значение логической константы: '); WRITELN('d = ',d); READLN; END. РЕЗУЛЬТАТ Задание 2. По заданным формулам и наборам исходных данных составить программу для вычисления значений переменных, указанных в табл. 1.2. Вывод осуществлять с их именами. Т а б л и ц а 1.2
Вариант 2 PROGRAM dffds; USES CRT; CONST {блок описания констант} X = 1.825; Y = 18.225; Z = -3.298; VAR {блок описания переменных} G,P : real; BEGIN ClrScr; {блок вычислений} G:=ABS(EXP(Y/X*LN(X))-X/(EXP(2/3)*LN(Y))); P:=((X-Y)*(Y-(Z/(Y-X))))/(1+SQR(Y-X)); {блок вывода результата} WRITELN('Значение переменной G: ',G:7:4); WRITE('Значение переменной P: ',P:7:4); READLN;{задержка экрана} END. ВАРИАНТ 3 PROGRAM dffds; USES CRT; CONST {блок описания констант} X = 0.335; Y = 0.025; VAR {блок описания переменных} G,P : real; BEGIN ClrScr; {блок вычислений} G:=((SQR(X))/2)+((EXP(3*LN(X)))/3)+((EXP(4*LN(X)))/4); P:=X*((EXP(3*LN(SIN(Y))))+(SQR(COS(X)))); {блок вывода результата} WRITELN('Значение переменной G: ',G:7:4); WRITE('Значение переменной P: ',P:7:4); READLN;{задержка экрана} END. ЛАБА 2 ЗАДАНИЕ 1 ВАР 2 PROGRAM dffds; CONST {блок описания констант} A = 1.238; B = 1.237; R = 2.48; VAR {блок описания переменных} X,Y,Z : real; BEGIN IF B>A THEN X:=15*B ELSE IF B=A THEN X:=10*A ELSE X:=17*B-A; IF R>=3*X THEN Y:=13*R+3 ELSE Y:=A*B; Z:=X+Y; WRITELN('При X=',X:6:3,',Y=',Y:6:3,',Z=',Z:6:3); END. ЗАДАНИЕ 1 ЛАБА 2 PROGRAM dffds; CONST {блок описания констант} PI = 3.1415926; T = -17.244; S = 5.12; VAR {блок описания переменных} X,Y,Z : real; BEGIN IF S-Sqr(T)>=5 THEN X:=S-T ELSE IF S-Sqr(T)<5 THEN X:=Sqr(S); IF X=0 THEN Y:=(PI/4)*EXP(X) ELSE; IF X=0 THEN Y:=12 ELSE Y:=624-X; Z:=X+Y; WRITELN('При X=',X:6:3,',Y=',Y:6:3,',Z=',Z:6:3); END. Задание 2 вар2 PROGRAM dffds; uses CRT; VAR Z:REAL; t: INTEGER; CONST a=-0.5; b=2; h=1; t0=2; t1=7; begin clrscr; t:=t0; writeln('|t|z|'); writeln('-------'); repeat case t of 2..3:z:=a*sqr(t)*LN(t); 4:z:=t; 5..7:z:=(exp(a*t))*(cos(b*t)); end; writeln(' ',t,' ',z:5:3); t:=t+h; until t>t1; readln; end. Pflfybt 2 dfh 3 PROGRAM dffds; uses CRT; VAR Z:REAL; x: INTEGER; CONST a=2.3; h=2; x0=0; x1=8; begin clrscr; x:=x0; writeln('|x|z|'); writeln('-------'); repeat case x of 0..3:z:=cos(x-a); 4 :z:=-4*x; 5..8:z:=EXP(1/5*LN(x+a))-sin(a*x); end; writeln(' ',x,' ',z:5:3); x:=x+h; until x>x1; readln; end. Вар 3 задание 3 program fgfkl; const a=0.4; b=0.5; h=0.2; var i:integer; y,x,f:real; begin i:=0; x:=0; while x<=1do begin if x>a then f:=a+b else if x=a then f:=a else f:=a-b; writeln('x=',x:6:3,',f(x)=',f:6:3); if f<0 then i:=i+1; x:=x+h; end; writeln('количество отрицательных значений:',I); end. Вар 2 задание 3 program fgfkl; const a=0.3; h=0.1; var i:integer; y,x,f:real; begin i:=0; x:=0; while x<=1do begin if x then f:=2*x else if x>=a then f:=Sqr(x)+(1.1*x)+a; writeln('x=',x:6:3,',f(x)=',f:6:3); if f<0 then i:=i+1; x:=x+h; end; writeln('количество отрицательных значений:',I); end. Вар 2 задание 5 program fgfkl; const a=0.13; h=0.5; var u,v,x,y:real; begin u:=(2.3)*x+A; x:=0; repeat if u>a then v:=5.3*x; if u=a then v:=12.5; if u then v:=10*x; y:=-exp(x)+u+v; writeln('x=',x:6:3,',y=',y:6:3); x:=x+h; until y<0; end. Вар 3 задание 5 program fgfkl; const a=12.4; h=0.5; var u,v,x,y:real; begin if x>=a then u:=x+a; if x then u:=x-a; y:=-exp(x)+u+v; x:=0; repeat if x>1 then v:=12.1; if x=1 then v:=15; if x<1 then v:=12.6; y:=-exp(x)+u+v; writeln('x=',x:6:3,',y=',y:6:3); x:=x+h; until y<0; end. 0>0> |