- Учителю
- Разноуровневые задачи по программированию на языке паскаль. 9 класс
Разноуровневые задачи по программированию на языке паскаль. 9 класс
№2 Ш.Уалиханов атындағы жалпы орта білім беретін коммуналдық мемлекеттік мекемесі
Деңгейлік тапсырмалар бойынша сарамандық жұмыстар
9 сынып
Жинақтаған: Жаксыбекова Л
Информатика пән мұғалімдері
2014-2015 оқу жылы
Сарамандық жұмыс №1
Міндетті деңгей
-
Паскаль программалау тілінде қарапайым программалар құрып үйрену.
Дөңгелектің ауданын табу:
program Dongelek;
const pi=3.14;
var R,S:real;
begin
write('R-ге мән бер:');
readln(R);
S:=pi*R*R;
writeln('Дөңгелектің ауданы =',S:5:2);
end.
R
S
9
254,34
5
78,50
-
Нақты а-саны берілген. Тек көбейту амалын пайдаланып, үш амал арқылы а6-н есепте;
program Esepte;
var a:integer; b,c,d:real;
begin
write('a-санын енгіз:');
readln(а);
b=a*a; c:=b*b; d:=c*c;
writeln('a^6 =',d:10:2);
end.
A
D
3
6561,00
-6
1679616,00
Лайықты деңгей
-
Мына өрнектің:
Y=мәнін анықтайтын программа құрыңдар.
Var x,y:real;
Begin
Writeln('х-ке мән беріңіз:');
read(x); Y:=sqrt(cos(sqr(x))*cos(sqr(x))+sqr(sin(2*x-1)));
Writeln('Өрнектің мәні- Y=', y); end.
Х
У
12
1,21
-23
0,37
-
Мына өрнектің: Y= x2-sinx
мәнін анықтайтын программа құр ;
Var x,y:real;
Begin
Writeln('х-ке мән беріңіз:');
read(x); Y:=sqr(x)-sin(x);
Writeln('Өрнектің мәні- Y=', y); end.
Х
У
9
80.59
-6
35.72
Жоғарғы деңгей
-
Мына өрнектің: f=
мәнін анықтайтын программа құр ;
Var x,y:real;
Begin
Writeln('х,y,z=');
read(x,y,z);
F:=sqrt((x+y+z)/sqr(y)*y;
Writeln(' f=',f:6:2); End.
X
Y
Z
F
7
9
5
2.33
-4
-6
-5
2.50
-
Мына функцияның: y=
мәнін анықтайтын программа құр ;
Var x,y:real;
Begin
Writeln('х=');
read(x);
Y:=1/cos(x)+ln(1/ln(x/2));
Writeln('y=', y:5:2); end.
X
Y
86
-3.93
32
0.18
Сарамандық жұмыс №2
Міндетті деңгей
-
Паскаль программалау тілінде қарапайым программалар құрып үйрену.Қабырғалары 4,5 және 8,2 см. Биіктігі 3,6см болатын трапецияның ауданын табу :
program audan;
var a,b,h,S:real;
begin
a:=4.5, b:=8.2, h:=3.6
S:=(a+b)*h/2;
writeln('Трепеция ауданы =',S:5:2);
end.
a
b
h
s
4,5
5,2
3,6
22,86
-
Үшбұрыштың а,в,с қабырғалары берілген. Үшбұрыш ауданын Герон формуласы арқылы есептейтін программа құр.
Var a,b,c,p,s:real;
Begin
Writeln('a,b,c=');
read(a,b,c);
p:=(a+b+c)/2;
s:=sqr(p*(p-a)*(h-b)*(p-c));
Writeln('s=', s:5:2); end.
a
b
c
s
4
7
8
14,00
12
10
15
59,81
Лайықты деңгей
-
Мына функцияның: y= cos(sin(x2+sinx))
мәнін анықтайтын программа құр ;
Var x,y:real;
Begin
Writeln('х=');
read(x);
Y:=cos(sin(sqr(x)+sin(x));
Writeln('y=', y:5:2); end.
X
Y
45
0,90
81
0,79
-
Мына функцияның мәнін анықтайтын программа құр ;
Var x,y:real;
Begin
Writeln('х=');
read(x);
Y:=(exp(sin(x))/2+sin(exp(sqr(x)/4)))/sqp(x)+2;
Writeln('y=', y:5:2); end
X
Y
5
2,02
12
2,00
Жоғары деңгей
-
Мына функцияның мәнін анықтайтын программа құр ;
Y= πx2+lnπ+sinx;
Var x,y:real;
Begin
Writeln('х=');
read(x);
Y:=pi*sqr(x)+ln(pi)+sinx; Writeln('y=', y:5:2); end .
X
Y
45
6363,72
0
1,14
-
Мына функцияның мәнін анықтайтын программа құр ;
Var а,x,y:real;
Begin
Writeln('а,х=');
read(а,x);
Y:=(exp(2/sqr(a))+a*1/10*10)/(ln(sqr(a)-10)+pi)+sqrt(abs(a))+sqr(0.81*x)*sqr(0.81*x);
Writeln('y=', y:5:2); end.
А
X
Y
12
5
18,37
-5
40
54421,12
Сарамандық жұмыс №3
Міндетті деңгей
-
Нақты x, y ( x ≠ y ) берілген. Кішісін олардың жарты қосындысымен, ал үлкенін - екі еселенген көбейтіндісімен алмастырыңыз.
var X,Y:real;
begin
writeln('X,Y- енгіз:');
readln(x,y);
If x
Writeln ('x=',x:6:2);
Writeln ('y=',y:6:2)
end.
X
Y
X Y
5
6
2.50 12.00
-6
-3
-3.00 -12
-
X және y (х< >y) сандары берілген.Осы екі саннның кішісін олардың қосындысымен ауыстыр, ал үлкенін көбейтіндісімен ауыстыру керек.
Var x,y,z: real;
Begin write('x,y мәндерін енгіз:'); readln(x,y);
if x
writeln('x=',x+y:5:2);
writeln('y=',x*y:5:2);
end.
X
Y
Х У
4
6
10,00 24,00
5
2
7,00 10,00
Лайықты деңгей
-
Нақты x,y,zсандары берілген, max(x+y+z,xyz) мәнін тап:
Var x,y,z,a,b,max: real;
Begin write('x,y,z мәндерін енгіз:'); readln(x,y,z);
a:=x+y+z; b:=x*y*z;
if a>b then max:=a else max:=b;
writeln('max=',max:4:2); end.
X
Y
Z
Max
-10
45
23
58.00
4
5
2
40.00
-
Нақты 5 сан берілген. Ең үлкен санды тап.
Label 4,9;
Const n=5
var X,max:real; i: integer;
begin
writeln(n', сан енгіз:');
readln(x); max:=x; i=1;
4: i:=i+1;
If i>n-1 then goto 9; read(x0; if x>max then max:=x;goto4;
9:writeln ('maxz=',max:6:2);
end.
N
Max
6 2 3 9 45
45.00
-4 12 -5 2 8
12.00
Жоғары деңгей
-
a,b натурал сандар берілген, ең үлкен ортақ бөлгішін тап.
Program EYOB tabu;
Label 1,2
Var a,b,a1,b1,c: integer;
Begin write('a,b натурал сан енгіз:'); readin (a,b);
a1:=a; b1:=b;
1:if(a1=0)or(b1=0) then goto 2;
If a1>b1 then a1:=a1 mod b1 else b1:=b1moda1; goto1
2:if a1=0 then c:=b1 else c:=a1;
Writeln ('EYOB:=',c); end.
A
B
EYOB = С
5
9
1
45
15
15
-
a,b,c натурал сандар берілген, олардың ішіндегі оң сандардың квадратын және теріс сандардың кубын табу керек.
Program tabu;
Label 1
Var a,b,a1,b1,c,c1: integer;
Begin write('a,b,с натурал сан енгіз:'); readin (a,b,c);
If a>0 then writeln ('a1:=', a*a) else if a<0 then writeln ('a1:=',a*a*a) else goto 1;
If b>0 then writeln('b1:=',b*b) else if b<0 then writeln ('b1:=',b*b*b) else goto 1;
if c>0 then writeln ('c1:=',c*c) else if c:<0 then writeln ('c1:=',c*c*c) else goto 1;
1: Writeln ; end.
A
B
С
А1
В1
С1
-6
-23
-7
-216
-12167
-343
-4
6
-10
-64
36
-1000
Сарамандық жұмыс №4
Міндетті деңгей
-
Берілген сандардың ішінен теріс сандарды табу.
program san;
uses crt;
var a1,a2,a3: real; p:integer;
begin p:=0;
write ('3 сан енгіз'); readln (a1,a2,a3);
if a1<0 then p:=p+1;
if a2<0 then p:=p+1;
if a3<0 then p:=p+1;
write ('теріс сандардың саны', P);
end.
A1
А2
А3
Teris sandar sani=P
4
-5
-6
2
5
-8
4
1
-
Бағдаршам программасын құру.
PROGRAM svet;
VAR X, Y: STRING;
BEGIN READLN (X);
IF X=`қызыл` THEN Y:= `ТОҚТА,КҮТ` ELSE IF X=`сары` THEN
Y=`ДАЙЫНДАЛ` ELSE IF X=`жасыл` THEN Y=`ЖҮР`
ELSE Y=`светофорда ондай түс жоқ`;
WRITELN(Y);
END.
Х
У
Қызыл
Тоқта, күт
Сары
Дайындал
жасыл
Жүр
Лайықты деңгей
-
Функцияның мәнін есептеу керек:
Var x,y: real;
Begin write('x мәндерін енгіз:'); readln(x);
if x<0 then y:=x+2 else y:=2*sqr(x)*x;
writeln('y=',y:4:2); end.
Х
У
-5
-3
0
0
12
3456
-
Функцияның мәнін есептеу керек:
Var x,y: real;
Begin write('x мәндерін енгіз:'); readln(x);
if (x<=26)and(x>=16) then y:=x+50 else y:=2*x+20;
writeln('y=',y:4:2); end.
Х
У
20
70
16
66
Жоғары деңгей
-
Функцияның мәнін есептеу керек:
Var x,y: real;
Begin write('x мәндерін енгіз:'); readln(x);
if (x<=0)and(x<2) then y:=sqr(cos(x)) else y:=1+sqr(sin(x));
writeln('y=',y:4:2); end.
Х
У
1
0.29
5
1.92
-
Функцияның мәнін есептеу керек:
мұнд:
Var x,y: real;
Begin write('a,b мәндерін енгіз:'); readln(a,b);
X:=sqrt(sqr(b)+5*a)
if x<0 then y:=x2+1 else if x>0 then y:=sqr(x)+1 else y:=1;
writeln('y=',y:4:2); end.
a
b
y
5
-6
3.79
-7
14
4.56
Сарамандық жұмыс №5
Міндетті деңгей
-
Функцияның мәнін есептеу керек:
Var x,y: real;
Begin write('x -енгіз:'); readln(x);
if x<1 then y:=0 else if (x<=1)and(x<=5) then y:=17.3*x-9*x+1.4
else y:=sqr(x);
writeln('y=',y:4:2);
end.
Х
У
-45
0
4.5
38.75
12
144.00
-
Функцияның мәнін есептеу керек:
Const a:=2.1;
Var x,а,y: real;
Begin write('x мәндерін енгіз:'); readln(x);
if x>1 then y:=sin(sqr(x)*x+1/sin(x) else y:=sin(sqr(x))/cos(sqr(x))+cos(a*x);
writeln('y=',y:4:2); end.
Х
У
4
-0.40
-6
8.75
Лайықты деңгей
-
Функцияның мәнін есептеу керек:
f
Var x,f: real; m:=(ak,sari,kok):real;
Begin write('x,a,b -енгіз:'); readln(x,a,b);
If x>0 then m:=ak;
If x=8 then m:=sari;
If x<0 then m:=kok;
Case m of
Ak: f:= cos*(sin(sqr(x)+sin(x));
Sari: f:=sin(a+b)/cos(a+b);
Kok: f:=arctan(x)+sqr(a);
End;
Writeln('f=',f:6:2) ;
End.
A
B
X
F
32
56
-3
1022.751
4
2
3
0.851
9
7
8
0.301
-
Функцияның мәнін есептеу керек:
f
Var x,f: real; m:=(ak,sari,kok):real;
Begin write('x -енгіз:'); readln(x);
If x>2 then m:=ak;
If x<2 then m:=sari;
If x=2 then m:=kok;
Case m of
Ak: f:= ln(sqr(x)*x)+sqr(x)*x
Sari: f:=sin(x+0.5)/cos(x+0.5);
Kok: f:=sqrt(3*x+1);
End;
Writeln('f=',f:6:3) ;
End.
X
F
9
735.592
-1
-0.546
2
2.646
Жоғары деңгей
-
Функцияның мәнін есептеу керек:
y
Var x,a,y: real; m:=(ak,sari,kok):real;
Begin write('x,a -енгіз:'); readln(x,a);
If x>=2.8 then m:=ak;
If x<=0 then m:=sari;
If x<2.8 then m:=kok;
Case m of
Ak: y:= sqr(x+1)*(x+1)+a*exp(x);
Sari: y:=(x+1)*exp(x);
Kok: y:=exp(a*x)+x*exp(x);
End;
Writeln('y=',y:6:3) ;
End.
X
A
Y
2.9
5
150.190
0
-6
1.000
-2
4
-0.270
-
Функцияның мәнін есептеу керек:
y
Var x,a,y: real; m:=(ak,sari,kok):real;
Begin write('x,a -енгіз:'); readln(x,a);
If x<0 then m:=ak;
If x=0 then m:=sari;
If x>0 then m:=kok;
Case m of
Ak: y:= sqr(x)+sqr(a)*a+3;
Sari: y:=x*a+sqr(a)+4*x;
Kok: y:=x*sqr(a)+3*x;
End;
Writeln('y=',y:6:3) ;
End.
X
A
Y
-5
6
244.000
0
-4
16.000
9
12
2331.000
Сарамандық жұмыс №6
Міндетті деңгей
-
N-берілген сан. Оның жұп екенін анықтайтын программа құр.
Program JUP san ;
Var n: integer;
Begin write('n натурал сан енгіз:'); readin (n);
If(n mod 2=0) then writeln ('n:=', 'jup san')
else writeln('n:=','jup san emes');
end.
n
9
n:= jup san emes
8
N:=jup san
-
a,b,c нақты сандар берілген, егер a>= b>=c бұл сандарды еселеңдер, кері жағдайда оларды абсолют мәндерімен алмастырыңдар
Program esep;
Var a,b,c:real;
Begin write('a,b,с сандарын енгіз:'); readin (a,b,c);
If (a>=b) or(b>=c) then writeln ('a:=', 2*a); writeln ('b:=',2*b); writeln ('c:=',2*c)
If (a<=b) or (b<=c) then writeln ('a:=abc(a)); writeln('b:=abc(b)) ; writeln ('c:=',abc(c));
end.
A В С
А В С
6 4 2
12 8 4
-6 -5 -3
6 5 3
-4 6 7
4 6 7
Лайықты деңгей
-
Кез келген натурал сандар тізбегі берілсін. Бұл тізбектің соңғы саны о мен аяқталсын. Тізбектегі ең кіші санның рет номерін анықтау керек.
Var x,I,mах,k:integer;
Begin write('бүтін сандар тізбегін енгіз:');
Read(x); mах:=x; k:=1; i:=1;
While x<>0 do begin read(x); i:=i+1;
If xах then begin mах:=x; k:=I end; end;
Writeln('mах=',mах, 'k=',k); end.
Х
Mах К
4 8 6 9 0
9 4
-6 78 12 56 0
78 2
-
Берілген натурал санның цифрларының қосындысын тап.
Var s,n,r,m,k,i:integer;
Begin
Repeat
Write('natural N sanin engiz:'); read(n);
Until n>0;
M:=n; r:=1; k:=1; s:=0;
While (m div 10)>0 do
Begin m:=m div 10; r:=r*10; k:=k+1; end; m:=n;
For i:=1 to k do
Begin s:=s+mdivr; m:=m-(mdiv r)*r; r:==r div 10; end;
Write( 'қосынды',s,' санына тең'); end.
N
S
478
Қосынды 19 санына тен
145
Қосынды 10 санына тен
Жоғары деңгей
-
a,b,c нақты сандар берілген, егер a<= b<=c бұл сандарды еселеңдер, кері жағдайда оларды абсолют мәндерімен алмастырыңдар
Program esep;
Var a,b,c:real;
Begin write('a,b,с сандарын енгіз:'); readin (a,b,c);
If (a<=b) or(b<=c) then writeln ('a:=', 2*a); writeln ('b:=',2*b); writeln ('c:=',2*c)
else writeln ('a:=abc(a)); writeln('b:=abc(b)) ;writeln ('c:=',abc(c));
end.
A В С
А В С
4 3 9
6 18
3 9
-6 5 5
-12 10 10
5 5
-
S=1+1/2+1/3+1/4+…+1/50 қосындысын есепте.
Var s:real; i:integer;
Begin s:=0;
For i:=1 to 50 do
S:=s+1/n; i:=i+1;
Write('s=',s:4:2); end.
S:= 4.50
Сарамандық жұмыс №7
Міндетті деңгей
-
Кез келген натурал сандар тізбегі берілсін. Бұл тізбектің соңғы саны о мен аяқталсын. Тізбектегі ең үлкен санның рет номерін анықтау керек.
Var x,I,max,k:integer;
Begin write('бүтін сандар тізбегін енгіз:');
Read(x); max:=x; k:=1; i:=1;
While x<>0 do begin read(x); i:=i+1;
If x>max then begin max:=x; k:=I end; end;
Writeln('max=',max, 'k=',k); end.
х
Max k
4 6 7 -5 14 0
14 5
-8 9 12 -6 0
12 3
-
Берілген y=ln(5x+3)+cosПx2+tgx3 есептің программасын құру:
Program man tabu;
Var x,y:real;
Begin
Writeln('x engiz');
Readln(x);
Y:=ln((5*x)+3)+cos(pi+sqr(x))+sin(x)/cos(exp(3*ln(x)));
Writeln('y=',y); End.
X
Y
47
6.50
12
2.73
Лайықты деңгей
-
Берілген 10 санның қосындысын табу
Program z;
Const N=10;
Var k, x, s: integer;
Begin
k:=0; s:=0; {k- енгізілетін сандардың саны}
while k < n do
begin
k:=k+1;
write('сан енгіз');
readln(x);
s:=s+x;
end;
writeln('s=', s); end.
X
S
7 78 4 17 -6 9 0 1 3 19
186
1 2 3 4 5 6 7 8 9 9
54
-
Берілген 10 санның ішіндегі теріс сандардың қосындысын табу
Program z;
Const
N=10;
Var k, x, s: integer;
Begin
k:=0; s:=0; {k- енгізілетін сандардың саны }
while k < n do
begin
k:=k+1;
write('сан енгіз');
readln(x);
if x<0 then s:=s+x else k=k+1
end;
writeln('s', s);
end.
X
S
-5 -6 -3 4 5 6 0 -7 -8 4
-29
4 12 6 -1 -5 -23 0 7 9 -8
-37
Жоғары деңгей
-
Х жолдық қатарында кездесетін 'а' символдарын санап,
оларды 'b' символымен ауыстыру программасын құру.
PROGRAM Kat4;
VAR X: String; K,N: Byte;
BEGIN Write ('Қатардың мәнін енгіз:'); Readln (X);
For K:=1 To Length(X) Do lf X[K]='a' Then
Begin N:=N+1; X[K]:='b' Ehd;
Writeln ('Қатардың жаңа мәні X=', X,' 'қатарда "а" символы=',n );
Readln END.
X
X қатарда a символы n
informatika
Informbtikb 2
matematika
Mbtembtikb 3
-
A(7) массиві берілген, массив элементтерінің қосындысын табу
Const n=7; {массив элементтерінің саны}
Var A:array[1…n] of real;
Sum:real;
I:integer;
Begin
Writeln('массив элементтерін бос орын арылы енгіз');
For i:=1 to n do read(a[i]);
Sum:=0;
For i:=1 to n do sum:=sum+a[i];
Writeln ('сандардың қосындысы=',sum:6:2); end.
N
S
4 9 -8 5 0 3 1
14.00
-6 7 0 12 5 -9 45
54.00
15