ОТВЕТЫ Ответы к заданию2.1: z1, s-1, max 15, бета, 2t. Ответы к заданию 2.2. Неверно: x=r; b+1;=a; d:c=y-5; d*c:=0; R := 1 – [B+N]; V – 90; 5 := k; Ответы к заданию 2.3: 1) 4; 2) -4; 3) -4; 4) 4; 5)3; 6) -3; 7) 3; 8) -3. Ответы к заданию 2.4. (a-b)/(c+d+2); 1+b+b*b*b/3; (2+5*c)/(1-3*c*c); 2*a*a*a-3*b*b; (1+(c*c+d*d)/(2*c))/(c-2*d); a*x*x*x+4*x*x+5*x+d; Ответы к заданию 2.5. 1) -4; 2) 9; 3) -4; 4) -10; 5) 69; 6) -15; Ответы к заданию 2.6. 1) 5; 2) 15; -6; 3) 49; 4) 16; 5) 138; 6) 31; 7) 6; 54. Ответы к заданию 2.7. 1) cos(3*a)/sin(3*a); 2) abs(2*a-1); 3) sqr(4*a*a-2*b*b); 4) (-b-sqrt(b*b-4*a*c))/(2*a); 5) sqrt(sin(a/3)); 6) cos(2*a); 7) sqrt(3*a/(2*a-b)); 8) sqr((sin(2*b)); 9) 1+sqr(sin((a-b)/2); 10)2*sin(3*a)/(1-cos(b)); Ответы к заданию 2.8. 1) PROGRAM RESISTOR; VAR R1,R2,RPOS,RPAR:REAL; BEGIN WRITELN('VVEDITE R1 AND R2'); READLN(R1,R2); RPOS:=R1+R2; RPAR:=R1*R2/(R1+R2); WRITELN('RPOS=',RPOS:8:3,' ','RPAR=',RPAR:8:3); READLN END. 4) Var a,s:Real; Begin Writeln('a-?'); ReadLn(a); s:=(4*a*a-pi*a*a)/4+a*a; WriteLn('s=',s:4:2); ReadLn; End. 5) Var a,s:Real; Begin Writeln('a-?'); ReadLn(a); s:=(4*a*a-pi*a*a)/2+pi*a*a; WriteLn('s=',s:4:2); ReadLn; End. Ответы к заданию 2.9 1) Var x,y:real; Begin WriteLn('x:'); ReadLn(x); If x<3 then y:=2*x*x-3*x+5; Else y:=2*x/(x*x+2*x-5); Write('x=',x:6:3,' y=',y:6:3); ReadLn; End. 2) Var x,y:real; Begin Write('x:'); ReadLn(x); y:=x*x*x+2*x+5; If x*x+1<=2 then y:=y Else y:=1/y; Write('x=',x:6:3,' y=',y:6:3); ReadLn; End. 3) Var a:integer; Begin Writeln('a-?'); Readln(a); if a mod 2=0 then Writeln('chetnoe') else Writeln('nechetnoe'); readln End. Ответы к заданию2.10: 1) PROGRAM TREUG2; VAR X,Y:REAL; BEGIN WRITELN(' Х, У-?'); READLN(X,Y); WRITELN('YES OR NO?'); IF (X>=1) AND (Y>=1) AND (2*X+Y<=7) THEN WRITELN('YES') ELSE WRITELN('NO'); READLN END. 2) PROGRAM TREUG3; VAR X,Y:REAL; BEGIN WRITELN('Enter X and Y'); READLN(X,Y); WRITELN('YES OR NO?'); IF (X<=4) AND (Y<=4) AND (X+Y>=0) THEN WRITELN('YES') ELSE WRITELN('NO'); READLN END. 5) PROGRAM DOUBLE_CIRCLE; VAR X,Y,R1,R2,L:REAL;{R1<R2} BEGIN WRITELN('VVEDITE X,Y,R1,R2;R1<R2'); READLN(X,Y,R1,R2); L:=SQRT(SQR(X)+SQR(Y)); IF (L>R1) AND (L<R2) THEN WRITELN(Yes') ELSE WRITELN('No'); READLN END. 6) Var x,y,z:Real; Begin WriteLn('x,y-?'); ReadLn(x,y); If (Y>=0) and (X-sqrt(y)>0) then Begin z:=1/sqrt(x-sqrt(y)); WriteLn('z=',z:6:3) End Else WriteLn('No solution'); ReadLn; End. Ответы к заданию 2.11. 1) VAR A,B,S,P:REAL; {S и P – промежуточные переменные для BEGIN временного хранения A и B} WRITELN('Enter A and B'); ReadLn(A,B); If A>B Then Begin P:=2*A*B; S:=(A+B)/2; A:=P; B:=S; End Else Begin S:=(A+B)/2; P:=2*A*B; A:=S; B:=P; End; WriteLn('A=',A:6:3,'B=',B:6:3); ReadLn; END. 2) VAR A,B,C:REAL; BEGIN WRITELN('VVEDITE A,B AND C'); READLN(A,B,C); IF (A>=B) AND (B>=C) THEN BEGIN A:=2*A; B:=2*B; C:=2*C END ELSE BEGIN A:=ABS(A); B:=ABS(B); C:=ABS(C) END; WRITELN('A=',A:6:3,'B=',B:6:3,'C=',C:6:3); READLN; END. 7) Var a,b,c,p,s:Real; Begin WriteLn('a,b,c-?'); ReadLn(a,b,c); If (a*a+b*b<>c*c) then WriteLn('It is not normal triangle') Else Begin S:=a*b/2; WriteLn('S=',S:4:2); End; ReadLn; End. Ответы к заданию 3.1. Для G=0 и 5G20 следует писать грибов; для G=1 следует писать гриб; для 2G4 следует писать гриба. PROGRAM CASE_GRIBI; 0,5..20:WRITE('bov'); VAR G:BYTE; 1:WRITE('b'); BEGIN 2..4:WRITE(‘ba') WRITELN(‘G-?'); END READLN(G); END IF G<=20 THEN ELSE BEGIN WRITELN('Left for other!'); WRITE(G,' Gri'); READLN CASE G OF END. Ответы к заданию 3.2. 1) Вычислить и напечатать на экране квадраты чисел 0, 0,1 0,2 … 1,000. 1) VAR A:REAL; BEGIN A:=0; REPEAT WRITELN('A=',A:6:5,' ','A*A=',A*A:6:5); A:=A+0.1; UNTIL A>=1; READLN END. 2) Вывести на экран все числа от 100 до 200, кроме тех, что делятся на 3. 2) Var a:Integer; Begin a:=100; Repeat If a mod 3<>0 then Write(a,’ ‘); Until a>200; ReadLn; End. 5) Написать программу вычисления суммы квадратов нечетных чисел от 1 до n. 5) Var I,N,Sum:Integer; Begin WriteLn('N-?'); ReadLn(N); Sum:=0; I:=1; Repeat If I mod 2<>0 Then Sum:=Sum+I*I; I:=I+1; Until I>N; WriteLn('Sum=',Sum); ReadLn; End. 6) Написать программу для нахождения суммы n членов ряда 1/(1*3)+1/(2*4)+1/(3*5)+... 6) Var I,N:LongInt; S:Real; Begin WriteLn('N-?'); ReadLn(N); S:=0; I:=1; Repeat S:=S+1/(I*(I+2)); I:=I+1; Until I>N; WriteLn('S=',S:10:8); Readln; End. 9) С клавиатуры вводятся пары целых чисел. Подсчитать, сколько среди них пар, в которых первое число больше второго. Подсчет завершить после ввода двух десяток. 9) Var a,b,c:Integer; Begin c:=0; Repeat WriteLn('a,b-?'); ReadLn(a,b); If a>b then c:=c+1; Until (a=10) and (b=10); WriteLn('c=',c); ReaLn; End. 10) С клавиатуры вводятся пары целых чисел. Подсчитать, сколько среди них пар, которые в сумме дают нечетное число Подсчет завершить после ввода двух пятерок. 10) Var a,b,c:Integer; Begin c:=0; Repeat WriteLn('a,b-?'); ReadLn(a,b); If (a+b) mod 2<>0 then c:=c+1; Until (a=5) and (b=5); WriteLn('c=',c); ReadLn; End. 11) В компьютер вводятся n любых чисел. Написать программу, которая подсчитывает, сколько среди них положительных и сколько, равных нулю. Подсчет завершить после ввода -1. 11) Var a,cpl,c0,n:Integer; Begin cpl:=0;c0:=0; Repeat WriteLn('a-?'); ReadLn(a); If a>0 then cpl:=cpl+1; if a=0 then c0:=c0+1; Until a=-1; WriteLn('cpl=',cpl,'c0=',c0); ReadLn; End. 12) Найти сумму n членов последовательности 1 2 var m,n:LongInt; s:real; begin WriteLn('n-?'); ReadLn(n); s:=0; m:=1; repeat if m mod 2<>0 then s:=s+1/sqrt(m) else s:=s-1/sqrt(m); m:=m+1; until m>n; Writeln('s=',s:6:4); ReadLn; end. 1 3 1 4 1 5