O’rta maxsus


Bu masala yechimi har qanday butun, haqiqiy va satrli turdagi o‘zgaruvchilarni qiymatini almashtirish uchun umumiy usul ekanligini e’tirof etish kerak



Download 2,24 Mb.
bet49/54
Sana30.04.2022
Hajmi2,24 Mb.
#597939
1   ...   46   47   48   49   50   51   52   53   54
Bog'liq
paskal dt dars

Bu masala yechimi har qanday butun, haqiqiy va satrli turdagi o‘zgaruvchilarni qiymatini almashtirish uchun umumiy usul ekanligini e’tirof etish kerak.

Dasturi: Var A, B: String;
Begin
Write(‘A ni qiymatini kiriting: ’); ReadLn(A);
Write(‘B ni qiymatini kiriting: ’); ReadLn(B);
A:=A+B;
B:=Copy(A,1,Length(A)–Length(B)); Delete(A,1,Length(B));
Writeln(‘Marhamat: A= ’, A, ‘; B= ‘, B); End.

83*. x berilgan bo‘lsin. A=1–2∙x+3∙x2–4∙x3 ko‘phad qiymatini kamroq amal bajargan holda hisoblab javobini ekranga chiqaring.

Yechim:
Berilgan ko‘phad qiymatini kompyuter bajargandagi amallar sonini hisoblab ko‘raylik: A1=2∙x; A2=1–A1(=1–2∙x); A3=x∙x(=x2); A4=3∙A3(=3∙x2); A5=A2+A4(=1–2∙x+3∙x2); A6=x∙x(=x2); A7=x∙A6(=x3); A8=4∙A7(=4∙x3); A9=A5+A8(=1–2∙x+3∙x2–4∙x3).
Bajariladigan amallarni 1-usulda guruhlaymiz: A1=2∙x; A2=x2; A3=1– A1(=1–2∙x); A4=3∙A2(=3∙x2); A5=A3+A4(=1–2∙x+3∙x2); A6=A1∙A1(=4∙x2); A7=A6∙x(=4∙x3); A8=A5–A7(=1–2∙x+3∙x2+4∙x3). Amallar soni bittaga kamaydi. Bajariladigan amallarni 2-usulda guruhlash uchun uchun ifodani 1–
2∙x+x2+2∙x2∙(1–2∙x) kabi yozib olamiz: A1=2∙x; A2=1–A1(=1–2∙x); A3=x∙x(=x2); A4=A1+A2(=1–2∙x+x2); A5=2∙A3(=2∙x2); A6=A5∙A2(=2∙x2∙(1– 2∙x)); A7=A4+A6(=1–2∙x+x2+2∙x2(1–2∙x)). Amallar soni ikkitaga kamaydi. Bajariladigan amallarni 3-usulda guruhlash uchun uchun ifodani 1+x∙(–
2+x∙(3–4∙x)) (Gorner qoidasi [4]) kabi yozib olamiz: A1=4∙x; A2=3–A1(=3–
4∙x); A3=x∙A2(=x∙(3–4∙x)); A4=A3–2(=–2+x∙(3–4∙x)); A5=x∙A4(=x∙(–2+x∙(3– 4∙x))); A6=1+A5(=1+x∙(–2+x∙(3–4∙x))). Amallar soni uchtaga kamaydi. Agar biror usulda Gorner usulidagi amal sonidan kam amalda hisoblashni amalga oshirish mumkin bo‘lsa, demak, bunday usul samaradorroq bo‘ladi.

Dasturi (Gorner qoidasi):

Dasturi (Gorner qoidasi):

Var X, A1, A2, A3, A4, A5, A6: Real;
Begin
Write(‘X= ’); ReadLn(X);
A1:=4*X; A2:=3–A1; A3:=X*A2;
A4:=A3–2; A5:=X*A4; A6:=1+A5;
Write(‘A= ’, A6); ReadLn; End.

Var X, A: Real;
Begin
Write(‘X= ’); ReadLn(X);
A:=4*X; A:=3–A; A:=X*A;
A:=A–2; A:=X*A; A:=1+A;
Write(‘A= ’, A); ReadLn; End.


  1. x berilgan bo‘lsin. A=1+2∙x+3∙x2+4∙x3 ko‘phad qiymatini kamroq amal bajargan holda hisoblab javobini ekranga go‘zal chiqaring (yo‘llanma: avval Gorner qoidasi bo‘yicha amallar sonini aniqlab, keyin boshqa usullardagi amallar soni bilan taqqoslang).

  2. x berilgan bo‘lsin. A=2∙x4–3∙x3+4∙x2–5∙x+6 ko‘phad qiymatini kamroq amal bajargan holda hisoblab javobini ekranga go‘zal chiqaring (yo‘llanma: avval Gorner qoidasi bo‘yicha amallar sonini aniqlab, keyin boshqa usullardagi amallar soni bilan taqqoslang).

86*. Sutkaning A-sekundi o‘tayotgan bo‘lsa, shu vaqtgacha qancha to‘liq S soat va M minut o‘tganligini ekranga go‘zal chiqaring (masalan: A=21073 bo‘lsa, S=5, M=51, chunki 21073=5∙3600+51∙60+13).

Yechim:
Quyidagi bog‘lanishlardan foydalanamiz: 1 minut=60 sekund, 1 soat=60 minut=60∙60 sekund=3600 sekund. Masala shartida “sutkaning” so‘zi ishlatilgan, demak, A butun o‘zgaruvchining qiymati 0 sekunddan katta va (1 sutka=24 soat=24∙3600 sekund=) 86400 sekunddan kichik bo‘ladi. Shuning uchun A o‘zgaruvchini LongInt turda tavsiflaymiz. Butun S va M o‘zgaruvchilar qiymati esa, mos ravishda, 24 va 60 dan kichik bo‘lgani uchun Byte turida tavsiflaymiz. [a] belgilash a sonni butun qismi ekanini e’tiborga olgan holda bajaradigan amallarimizni quyidagi jadvalda aks ettiramiz:

Vaqt taqsimoti

Matematik ifoda

Misolda

Paskalda

Berilgan sekund

A

21073

A

To‘liq soat

S=[A/3600]

[21073/3600]=5

S:=Trunc(A/3600); yoki S:=A div 3600;

Qolgan sekund

Q=A–S∙3600

21073–5∙3600=3073

Q:=A–S*3600; yoki Q:=A mod 3600;

To‘liq minut

M=[Q/60]

[3073/60]=51

M:=Trunc(Q/60); yoki M:=Q div 60;

Qolgan sekund

Q=Q–M∙60

3073–51∙60=13

Q:=Q–M*60; yoki Q:=Q mod 60;

Dasturda qo‘shimcha Q o‘zgaruvchi kiritmay, uni o‘rniga A o‘zgaruvchidan foydalanish mumkin.

Dasturi:
Var
A: LongInt; S, M: Byte; Begin
Write(‘Sutkaning o`tayotgan sekundi qiymatini kiriting: ’); ReadLn(A); S:=A div 3600; A:=A mod 3600; M:=A div 60; A:=A mod 60;
Writeln(‘Sutkaning ’, S, ‘-soati ‘, M , ‘-minuti ’, A , ‘-sekundi o`tmoqda’); End.

87*. Berilgan 5 xonali A natural sonni raqamlarini chiqaring.

Yechim:
Quyidagi misolni ko‘raylik:
Son Matematik Misolda Paskalda
ifoda




A=1234
5

R5=A–
[A/10]∙10

R5=12345–[12345/10]∙10=
=12345–[1234,5]∙10=
=12345–1234∙10=
=12345–12340=5

R5:=A–
Trunc(A/10)*10; yoki R5:=A mod 10;




A=1234
5

A=[A/10]

A=[12345/10]= =[1234,5]=1234

A:=Trunc(A/10); yoki A:=A div 10;

A=1234
5

R4=A–
[A/10]∙10

R4=1234–[1234/10]∙10=
=1234–[123,4]∙10=
=1234–123∙10=
=1234–1230=4

R4:=A–
Trunc(A/10)*10; yoki R4:=A mod 10;

A=1234

A=[A/10]

A=[1234/10]= =[123,4]=123

A:=Trunc(A/10); yoki A:=A div 10;

A=123

R3=A–
[A/10]∙10

R3=123–[123/10]∙10=
=123–[12,3]∙10=
=123–12∙10=
=123–120=3

R3:=A–
Trunc(A/10)*10; yoki
R3:=A mod 10;

A=123

A=[A/10]

A=[123/10]= =[12,3]=12

A:=Trunc(A/10); yoki A:=A div 10;

A=12

R2=A–
[A/10]∙10

R2=12–[12/10]∙10=
=12–[1,2]∙10=
=12–1∙10=
=12–10=2

R2:=A–
Trunc(A/10)*10; yoki R2:=A mod 10;

A=12

A=[A/10]

A=[12/10]=


A:=Trunc(A/10); yoki A:=A div 10;

A=1

R1=A–
[A/10]∙10

R1:=A–
Trunc(A/10)*10; yoki R1:=A mod 10;

A=1 A=[A/10] A=[1/10]= A:=Trunc(A/10);
=[0,1]=0 yoki A:=A div 10;

Umuman, oxirgi qadam bajarilishi shart emas edi. Lekin ko‘p xonali A soni uchun algoritmni qachongacha bagarilishini ko‘rsatish uchun shu qadamni yozdik. 5 xonali eng katta son 99999 bo‘lgani uchun A sonni LongInt turda, raqamlarga mos o‘zgaruvchilarni Byte turda olish maqsadga muvofiq. Dasturi:
Var A: LongInt; R1, R2, R3, R4, R5: Byte;
Begin
Write(‘5 xonali A sonni qiymatini kiriting: ’); ReadLn(A);
R5:=A mod 10; A:=A div 10; R4:=A mod 10; A:=A div 10; R3:=A mod 10;
A:=A div 10; R2:=A mod 10; A:=A div 10; R1:=A mod 10;
Write(‘ 1-raqam=’, R1, ‘ 2-raqam=’, R2, ‘ 3-raqam=’, R3);
Write(‘ 4-raqam=’, R4, ‘ 5-raqam=’, R5); End.
88. Berilgan 5 xonali A natural sonni raqamlari yig‘indisini go‘zal chiqaring (yo‘llanma: sonni raqamlarini ajratib S o‘zgaruvchiga qo‘shib boriladi). 89*. Berilgan 5 xonali A natural sonni birinchi va oxirgi raqamlari o‘rnini almashtirib, hosil bo‘lgan yangi sonni chiqaring.

Yechim:
Agar A=12345 bo‘lsa, hosil qilinishi kerak bo‘lgan son 52341 bo‘ladi. Sonni R1, R2, R3, R4, R5 raqamlarini ajratib olamiz. A soning standart yoyilmasi ko‘rinishi quyidagicha edi:
A:=R1*10000+R2*1000+R3*100+R4*10+R5;
A son raqamlarga ajratilganda o‘z qiymatini yo‘qotadi, shu sababli yangi son uchun A o‘zgaruvchidan foydalanish mumkin. U holda hosil qilinishi kerak bo‘lgan son quyidagi ko‘rinishda bo‘ladi:
A:=R5*10000+R2*1000+R3*100+R2*10+R1;

Dasturi:
Var A : LongInt; R1, R2, R3, R4, R5: Byte;
Begin
Write(‘5 xonali A sonni qiymatini kiriting: ’); ReadLn(A);
R5:=A mod 10; A:=A div 10; R4:=A mod 10;
A:=A div 10; R3:=A mod 10; A:=A div 10;
R2:=A mod 10; A:=A div 10; R1:=A mod 10;
A:=R5*10000+R2*1000+R3*100+R2*10+R1;
Writeln(‘Hosil qilinishi kerak bo‘lgan son ’, A); End.

90*. Berilgan 5 xonali A natural sonni teskarilab, hosil bo‘lgan yangi sonni go‘zal chiqaring (yo‘llanma: sonni raqamlarini ajratib, sonni standart yoyilmasidan foydalaniladi, qiymatga ega bo‘lmagan birinchi nollar o‘z-o‘zidan yo‘qolib ketadi, ya’ni 50320 ni teskarisi 2305 bo‘ladi).
91*. Berilgan natural N (<46341) da S=1+2+3+…+N yig‘indi qiymatini hisoblang.

Yechim:
Bu kabi yig‘indilarni hisoblash dasturi chiziqli tuzilmali bo‘ladimi? degan savol berilishi tabiiy. Matemetika bilan tanish bo‘lganlar arifmetik progressiyani N ta hadi yig‘indisi formulasini qo‘llab quyidagi ayniyatni aniqlay oladi:
N
1+2+3+…+N N 1
2
Demak, bu masala yechimi ham chiziqli dastur bo‘ladi. Oxirgi ifodan Paskalda yozayotganda ikkita ketma-ket kelgan sondan biri aniq juft bo‘lishini e’tiborga olish yetarli, ya’ni S:=Trunc(N*(N+1)/2); yoki S:=(N*(N+1)) mod 2; aniq javobni hosil qiladi. Chegaraviy qiymat N=46341 da N*(N+1)> 2147483647 bo‘ladi.

Dasturi:
Var S: LongInt; N: Word;
Begin
Write(‘N ni qiymatini kiriting: ’); ReadLn(N);
S:=(N*(N+1)) div 2;
Writeln(‘Javob ’, S); End.

92*. Berilgan natural N (<1024) da S=12+22+32+…+N2 yig‘indi qiymatini
hisoblang (yo‘llanma: 12+22+32+…+N2  NN12N1 ). 6
93*. Berilgan natural N (<304) da S=13+23+33+…+N3 yig‘indi qiymatini
2
hisoblang (yo‘llanma: 13+23+33+…+N3 =(1+2+3+…+N)2NN 1).
 2 
94*. Berilgan natural N (<32) da S=15+25+35+…+N5 yig‘indi qiymatini hisoblang

5+25+35+…+N5  N2 N12 2N2  2N1).
(yo‘llanma: 1
12
95*. Berilgan natural N (<1024) da S=1+3+5+…+(2∙N–1) yig‘indi qiymatini hisoblang (yo‘llanma: 1+3+5+…+(2∙N–1) N2).
96*. Berilgan natural N (<46341) da S=1+3+5+…+(2∙N–1) yig‘indi qiymatini hisoblang.
Yechim:
Quyidagi tengliklarni tahlil etamiz: 1=12
1+3=22
1+3+5=32
1+3+5+7=42

1+3+5+7+9=52
Demak, 1+3+5+…+(2∙N–1) N2 ayniyat o‘rinli bo‘lar ekan [1].

Dasturi:
Var S: LongInt; N: Word;
Begin
Write(‘N ni qiymatini kiriting: ’); ReadLn(N);
S:=Sqr(N);
Writeln(‘Javob ’, S); End.

97*. Berilgan natural N (<813) da S=12+32+52+…+(2∙N–1)2 yig‘indi qiymatini
hisoblang. (yo‘llanma: 12+32+52+…+(2∙N–1)2  N 2 N 12 N 1 ). 3
98*. Berilgan natural N (<182) da S=13+33+53+…+(2∙N–1)3 yig‘indi qiymatini hisoblang. (yo‘llanma: 13+33+53+…+(2∙N–1)3N2∙(2∙N2–1)).
99*. Berilgan natural N (<513) da S=22+62+102+…+(4∙N–2)2 yig‘indi qiymatini
hisoblang. (yo‘llanma: 22+62+102+…+(4∙N–2)2  4 N 2 N 12 N 1). 3
100*. Berilgan natural N (<1290) da S=1∙2+2∙3+3∙4+…+N∙(N+1) yig‘indi qiymatini hisoblang (yo‘
101*. Berilgan natural N (<214) da S=1∙2∙3+2∙3∙4+…+N∙(N+1)∙(N+2) yig‘indi qiymatini hisoblang (yo‘llanma: 1∙2∙3+2∙3∙4+…+N∙(N+1)∙(N+2)

102*. Berilgan natural N (<2147483647) da kasrli ifodalardan tashkil topgan
S= 1 1 1 ...1 yig‘indi qiymatini hisoblang.
12 23 34 N(N 1)

Yechim:
Kasrlarni sodda kasrlarga yoyish va zarur qisqartirishlar bajarish orqali quyidagi ko‘rinishiga keltiramiz:
1 1 1 1 1 1   1 1 1 1   1 1 
  ...           ...   
12 23 34 N(N 1) 1 2  2 3  3 4  N N 1

  1. 1 1 1 1 1 1 1 1 1 N

1      ...   1 

  1. 2 3 3 4 4 N N N 1 N 1 N 1

O‘zgaruvchi N ni LongInt, S ni Real turda tanlash mumkin.

Dasturi:
Var S : Real; N : LongInt;
Begin
Write(‘N ni qiymatini kiriting: ’); ReadLn(N);
S:=N/(N+1); Writeln(‘Javob ’, S); End.

103*. Berilgan natural N (<536870912) da kasrli ifodalardan tashkil topgan
S= 1 1 1 ...1 yig‘indi qiymatini hisoblang
15 59 913 (4 N 3)(4 N 1)
(yo‘llanma: 1 1 1 ...1 N ).
15 59 913 (4 N 3)(4 N 1) 4 N 1
104*. Berilgan natural N (<2147483644) da kasrli ifodalardan tashkil topgan
S= ... yig‘indi qiymatini hisoblang (yo‘llanma:
1 1 1 1 N
 ... ayniyatni hosil qiling, oxirigi
45 56 67 (N  3)(N  4) 4(N  4)
ifodani Paskalda S:=(N/4)/(N+4) kabi yozing).
105*. Berilgan natural N (<715827882) da kasrli ifodalardan tashkil topgan
S= 1 1 1 ...1 yig‘indi qiymatini hisoblang
14 47 710 (3 N  2)(3 N 1)
(yo‘llanma: 1 1 1 ...1 N ).
14 47 710 (3 N  2)(3 N 1) 3 N 1
106*. Berilgan natural N (<2147483647) da kasrli ifodalardan tashkil topgan
S= 7 7 7 ...7 yig‘indi qiymatini hisoblang
18 815 1522 (7 N 6)(7 N 1)
(yo‘llanma: 7 7 7 ...7 7N ayniyatni hosil
18 815 1522 (7 N 6)(7 N 1) 7 N 1
qiling, oxirigi ifodani Paskalda S:=N/(N+1/7) kabi yozing).
107*. Berilgan natural N (<2147483647) da kasrli ifodalardan tashkil topgan
S= 1 1 1 ...1 yig‘indi qiymatini hisoblang (yo‘llanma:
48 812 1216 4 N(4 N  4)
1 1 1 1 N   ...  ).
48 812 1216 4 N(4 N  4) 16(N 1)
12 22 32 N2
108*. Berilgan natural N (<46341) da S=   ...
13 35 57 2 N 1(2 N 1)
yig‘indi qiymatini hisoblang (yo‘llanma: kasrlarni sodda kasrlarga yoyib, zarur
qisqartirishlar bajarib 12 22 32 ...N2 N N 1 ayni-
13 35 57 2 N 1(2 N 1) 22 N 1
yatni hosil qiling).
109*. Berilgan natural A (<1073741823) va natural N (<1073741823) da
S= 1 1 ...1 yig‘indi qiymatini hisoblang
A(A 1) (A 1)(A  2) (A  N 1)(A  N)
(yo‘llanma: 1 1 ...1 N ayni-
A (A 1) (A 1)(A  2) (A  N 1)(A  N) A (A  N)
yatni hosil qiling, oxirigi ifodani Paskalda S:=(N/A)/(A+N) kabi yozing).
110*. Berilgan 1 dan katta natural N (<2147483647) da

P=1 141 191 161 ...1 N12  ko‘paytma qiymatini hisoblang (yo‘llanma: 

1 141 191 161 ...1 N12 N2N1 ayniyatdan foydalaning, oxirigi ifodani

 


Paskalda P:=(N+1)/2/N kabi yozing).
111*. Berilgan natural 1 dan katta N (<2147483647) da
S= ...1 yig‘indi qiymatini hisoblang
(yo‘llanma: Ln2Ln4  Ln4Ln8  Ln8Ln16 Ln2N1Ln2N  N  Ln22 ).

112*. Berilgan natural N (<2147483647) da N ta ildiz qatnashgan son qiymatini hisoblang (yo‘llanma:
2cos 2N1 ayniyatdan foydalaning, oxirigi
ifodani Paskalda S:=2*Cos(Pi/Exp((N+1)*Ln(2))) kabi yozing).
113*. Berilgan natural N (<2147483647) da trigonometrik funksiya qatnashgan
S=sinsin 2...sin N yig‘indi qiymatini hisoblang (yo‘llanma:

3 3 3 sin sin 2 ...sin N 2sin Nsin(N 1)).
3 3 3 6 3
114*. Berilgan natural N (<2147483647) da trigonometrik funksiya qatnashgan S=arctg arctg ...arctg yig‘indi qiymatini hisoblang (yo‘llanma:

  1. 1 1 N arctg arctg ...arctg 2 arctg N 1 ).

  2. 8 2N


Download 2,24 Mb.

Do'stlaringiz bilan baham:
1   ...   46   47   48   49   50   51   52   53   54




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish