මෙතෙක් අපි සරල දත්ත වර්ග සමඟ වැඩ කර ඇත - තාර්කික (බූලියන්), නිඛිල (පූර්ණ සංඛ්යාව, වචනය, බයිට්, දිගු), සැබෑ (සැබෑ), අක්ෂර (චාල්). මෙම මූලික වර්ග හතර භාවිතයෙන් ඕනෑම ඇල්ගොරිතමයක් වැඩසටහන්ගත කළ හැක. නමුත් විවිධත්වය පිළිබඳ තොරතුරු සැකසීමට සැබෑ ලෝකයවඩාත් සංකීර්ණ ව්යුහයක් සහිත දත්ත අවශ්ය වේ. සරලම පරිමාණ වර්ග මත පදනම් වූ එවැනි සංකීර්ණ ඉදිකිරීම් ව්යුහයන් ලෙස හැඳින්වේ. ව්යුහයක් යනු මූලික අදිශයන්ගෙන් සැදුම්ලත් සංයුක්ත දත්ත වර්ගයකි.ව්යුහයක් විස්තර කර ඇති වැඩසටහනේ සම්පූර්ණ ක්රියාව පුරාම එහි ව්යුහය වෙනස් නොකරන්නේ නම්, එවැනි ව්යුහයක් ස්ථිතික ලෙස හැඳින්වේ.
සෑම ක්රමලේඛන භාෂාවකම පාහේ ක්රියාත්මක වන වඩාත් පොදු ව්යුහය අරාවකි.
Arrays සීමිත සංරචක ගණනකින් සමන්විත වන අතර, array හි සියලුම සංරචක එකම වර්ගයක් ඇත, එය මූලික වර්ගය ලෙස හැඳින්වේ. අරා ව්යුහය සෑම විටම ඒකාකාරී වේ. අරාවක් ආකාරයේ පූර්ණ සංඛ්යාවක මූලද්රව්ය, තාත්වික හෝ අකුරු හෝ එම වර්ගයේම වෙනත් මූලද්රව්ය වලින් සමන්විත විය හැක. කෙසේ වෙතත්, අරාව සංරචක වලට තිබිය හැක්කේ පරිමාණ වර්ගයක් පමණක් බව මෙයින් නිගමනය නොකළ යුතුය.
Array එකක ඇති තවත් විශේෂත්වයක් නම් එහි ඇති ඕනෑම අංගයකට ඕනෑම ආකාරයකින් ප්රවේශ විය හැකි වීමයි. එයින් අදහස් කරන්නේ කුමක් ද? වැඩසටහනට එහි අනුක්රමික අංකය (දර්ශකය) මඟින් අවශ්ය මූලද්රව්යය වහාම ලබා ගත හැකිය.
අරා මූලද්රව්ය අංකය ලෙස හැඳින්වේ දර්ශකය. දර්ශකයක් යනු සාමාන්ය ආකාරයේ අගයකි, එය අර්ථ දක්වා ඇත දර්ශක වර්ගයමෙම අරාවේ. බොහෝ විට මෙය පූර්ණ සංඛ්යා වර්ගයකි (පූර්ණ සංඛ්යාව, වචනය හෝ බයිට), නමුත් එය තාර්කික සහ චරිතය ද විය හැකිය.
පැස්කල් හි අරාවක විස්තරය. පැස්කල් හි, අරාවක වර්ගය විශේෂ වචනයක් භාවිතා කර නියම කර ඇත අරාව(ඉංග්රීසි - අරාව), සහ වැඩසටහනේ එහි ප්රකාශය මේ ආකාරයට පෙනේ:
ටයිප් කරන්න< имя _ типа >= T හි අරාව [I];
I යනු අරාව දර්ශක වර්ගය වන අතර, T යනු එහි මූලද්රව්ය වර්ගය වේ.
වහාම විස්තර කළ හැකිය ආකාරයේ විචල්යයන්අරාව, i.e. විචල්ය විස්තර කොටසේ:
Var a,b: array [I ] of T;
සාමාන්යයෙන්, දර්ශක වර්ගයක් ඕනෑම සාමාන්ය වර්ගයක නිශ්චිත පරාසයක අගයන් මගින් සංලක්ෂිත වේ: I 1 .. I n . උදාහරණයක් ලෙස, දර්ශක 1..20 හෝ " a ".." n " පරාසය තුළ වෙනස් විය හැක.
මෙම අවස්ථාවේදී, පැස්කල් අරාවේ දිග ප්රකාශනය මගින් සංලක්ෂිත වේ:
ord (I n)- ord (I 1)+1.
මෙන්න, උදාහරණයක් ලෙස, වර්ග දෙකක ප්රකාශනයකි: දෛශිකය නිඛිල 10 ක පැස්කල් අරාවක් ලෙස සහ අක්ෂර 256 ක අරාවක් ලෙස නූල්:
ටයිප් කරන්න
Vector=නිඛිල අරාව;
Stroka=අරා අරා;
array index භාවිතා කරමින්, ඔබට ඕනෑම array එකක තනි මූලද්රව්ය සාමාන්ය විචල්යයක් ලෙසින් ප්රවේශ විය හැක: ඔබට එම මූලද්රව්යයේ අගය ලබා ගත හැක, එයට වෙන වෙනම අගයක් ලබා දී එය ප්රකාශන වල භාවිතා කල හැක.
දෛශික සහ නූල් වර්ගවල විචල්යයන් විස්තර කරමු:
පැස්කල් හි අරාවක දර්ශකය පැහැදිලිව සඳහන් කළ යුතු නොවේ. ඔබට අරා දර්ශකයක් ලෙස දර්ශක වර්ගයට අනුරූප වන විචල්යයක් හෝ ප්රකාශනයක් භාවිතා කළ හැක. වෙනත් වචන වලින් කිවහොත්, දර්ශක ගණනය කළ හැකිය.
මෙම යාන්ත්රණය ඉතා ප්රබල ක්රමලේඛන මෙවලමකි. නමුත් එය පොදු දෝෂයක් නිර්මාණය කරයි: ගණනය කිරීමේ ප්රතිඵලය වලංගු දර්ශක අගයන් පරාසයෙන් පිටත විය හැකිය, එනම්, නොපවතින මූලද්රව්යයකට ප්රවේශ වීමට උත්සාහයක් දරනු ඇත. මෙම පොදු දෝෂය "අරාව සීමාවෙන් පිටත" ලෙස හැඳින්වේ.
Pascal array දෝෂ සහිත උදාහරණ වැඩසටහනවැඩසටහන ප්රයිමර්_දෝෂය;
ටයිප් කරන්න
vector=වචන මාලාව;
var
n:integer;
a: vector;
ආරම්භය
n:=45;
a:=25;
අවසානය.
වුවද මෙම වැඩසටහනභාෂාවේ වාක්ය ඛණ්ඩයට සම්පූර්ණයෙන්ම අනුරූප වන අතර පරිවර්තකයාට එය "මිස්" වනු ඇත; ක්රියාත්මක කිරීමේ අදියරේදී, පැස්කල් අරාව සීමාවෙන් බැහැර වූ විට දෝෂයක් සිදුවනු ඇත. n = 45, n * 2 = 90 යන ප්රකාශනය වන විට, පරිගණකය අරා මූලද්රව්ය a වෙත ප්රවේශ වීමට උත්සාහ කරයි, නමුත් 80 මාන අරාවක් විස්තර කර ඇති බැවින් එවැනි මූලද්රව්යයක් නොමැත.
අපි එය උපකල්පනය කරමු හොඳ වැඩසටහනක්නොපවතින අරා මූලද්රව්ය වෙත ප්රවේශ වීමට උත්සාහයක් දරන්නේ නම් අනතුරු ඇඟවීමේ පණිවිඩයක් පෙන්විය යුතුය. අරාවේ දකුණු සහ වම් මායිම් දෙකෙන්ම විය හැකි පිටවීම් පරීක්ෂා කිරීම අතිරික්ත නොවේ, මන්ද ප්රකාශනයේ අගය ගණනය කිරීමේ ප්රති result ලයක් ලෙස, ප්රති result ලය මායිමේ වම් පසින් පිහිටා ඇති සංඛ්යාවක් විය හැකි බැවිනි. පැස්කල්ගේ අරාවේ.
මේ සියල්ලෙන් අපට නිගමනය කළ හැකිය: අරා දර්ශක සමඟ වැඩ කිරීමේදී ක්රමලේඛකයා ඉතා ප්රවේශම් විය යුතුය.
ඔබ දන්නා පරිදි, දත්ත වර්ගයක් නිර්වචනය කිරීම යනු අවසර ලත් අගයන් පරාසය සීමා කිරීම, පරිගණකයක අභ්යන්තර නිරූපණය මෙන්ම මෙම වර්ගයේ දත්ත මත අවසර ලත් මෙහෙයුම් සමූහයකි. අපි දත්ත වර්ගය Pascal array එකක් ලෙස අර්ථ දක්වා ඇත. මෙම දත්ත වර්ගය මත අර්ථ දක්වා ඇති මෙහෙයුම් මොනවාද? සම්පූර්ණ අරා මත සිදු කළ හැකි එකම ක්රියාව, සහ අරාව එකම වර්ගයේ නම් පමණක් පැවරීම වේ. වැඩසටහනක් එකම වර්ගයේ විචල්ය දෙකක් විස්තර කරන්නේ නම්, උදාහරණයක් ලෙස,
Var
a , b: array of real ;
එවිට ඔබට විචල්යයක් භාවිතා කළ හැක ඒවිචල්යයකට අගයක් ලබා දෙන්න බී(අ:= ආ). මෙම අවස්ථාවේදී, අරාවේ එක් එක් මූලද්රව්යය ඒඅරාවෙන් අනුරූප අගය පවරනු ලැබේ බී. පැස්කල් අරා වල අනෙකුත් සියලුම ක්රියා මූලද්රව්ය මගින් මූලද්රව්ය අනුව සිදු කෙරේ (එය වැදගත් වේ!) .
අරා මූලද්රව්යවල අගයන් ඇතුළත් කිරීම සඳහා, ඔබ දර්ශක අගය අනුක්රමිකව වෙනස් කළ යුතුය, පළමු සිට අවසාන අගය දක්වා අනුරූපී මූලද්රව්යය ඇතුළත් කරන්න. මෙම ක්රියාවන් ක්රියාත්මක කිරීම සඳහා, දී ඇති පුනරාවර්තන සංඛ්යාවක් සහිත ලූපයක් භාවිතා කිරීම පහසුය, i.e. සරල අංක ගණිත පුඩුවක්, ලූප පරාමිතිය විචල්යයක් වනු ඇත - පැස්කල් අරාවේ දර්ශකය. මූලද්රව්ය අගයන් යතුරුපුවරුවෙන් ඇතුළත් කළ හැකිය හෝ පැවරුම් ක්රියාකරු භාවිතයෙන් නියම කළ හැක.
Pascal array input program එකක උදාහරණ ඛණ්ඩයක්Var
A: නිඛිල අරාව;
ආරම්භය
i සඳහා:=1 සිට 10 දක්වා කරන්න
Readln(a[i]); (i-th මූලද්රව්යය යතුරු පුවරුවෙන් ඇතුල් කර ඇත)
පැස්කල් අරාව ස්වයංක්රීයව පුරවන විට අපි දැන් නඩුව සලකා බලමු අහඹු සංඛ්යා, මේ සඳහා අපි කාර්යය භාවිතා කරමු අහඹු (N).
අහඹු අංක සහිත පැස්කල් අරාවක් පිරවීම සඳහා වැඩසටහනක උදාහරණ ඛණ්ඩයක්Var
මම: බයිට්; (I යන විචල්යය අරා දර්ශකයක් ලෙස ඇතුළත් කර ඇත)
ආරම්භය
i සඳහා:=1 සිට 10 දක්වා කරන්න
A[i]:= අහඹු (10); (අරාවේ ith මූලද්රව්යයට 0 සිට 10 දක්වා පරාසයක "අහඹු" පූර්ණ සංඛ්යාවක් පවරා ඇත)
පැස්කල් හි අරාවක ප්රතිදානය ද මූලද්රව්ය අනුව මූලද්රව්ය මඟින් සිදු කරනු ලැබේ, පරාමිතිය අරා දර්ශකය වන අතර, පළමු සිට අන්තිම දක්වා සියලු අගයන් අනුක්රමිකව ගනිමින්.
Pascal array output program එකක උදාහරණ ඛණ්ඩයක්Var
A: නිඛිල අරාව;
මම: බයිට්; (I යන විචල්යය අරා දර්ශකයක් ලෙස ඇතුළත් කර ඇත)
ආරම්භය
i සඳහා:=1 සිට 10 දක්වා කරන්න
ලියන්න (a[i]," "); (අරාව පේළියකට ප්රතිදානය කරයි, එක් එක් මූලද්රව්යයට පසුව ඉඩක් මුද්රණය කෙරේ)
ප්රතිදානය අනුරූප දර්ශකය දැක්වෙන තීරුවක ද කළ හැකිය. නමුත් මෙම අවස්ථාවේදී, ඔබ අරාව විශාල නම්, සියලු මූලද්රව්ය තිරය මත නොගැලපෙන අතර අනුචලනය සිදුවනු ඇති බව ඔබ සැලකිල්ලට ගත යුතුය, i.e. තිරයේ සියලුම පේළි පිරවූ විට, ඊළඟ මූලද්රව්යය මුද්රණය කරනු ලබන අතර, ඉහළ එක තිරයෙන් ඉවතට මාරු කරනු ලැබේ.
තීරුවක පැස්කල් අරාවක් පෙන්වීම සඳහා උදාහරණ වැඩසටහනක්Var
A: නිඛිල අරාව;
මම: බයිට්; (I යන විචල්යය අරා දර්ශකයක් ලෙස ඇතුළත් කර ඇත)
ආරම්භය
i සඳහා:=1 සිට 10 දක්වා කරන්න
Writeln("a[", i,"]=", a[i]); (තීරුවක අරා මූලද්රව්ය පෙන්වමින්)
තිරය මත අපට පෙනෙනු ඇත, උදාහරණයක් ලෙස, පහත අගයන්:
a =2
a =4
a =1, ආදිය.
කාර්ය: n-මාන දෛශික දෙකක් ලබා දී ඇත. මෙම දෛශික එකතුව සොයන්න.
ගැටලුවේ විසඳුම:
var a, b: නිඛිල අරාව;
ගැටළුව විසඳීමේ ප්රගතිය:
c [i ]= a [i ]+ b [i];
වැඩසටහන් පෙළ:
උදාහරණ දෛශික එකතුව වැඩසටහනවැඩසටහන් සාරාංශය;
Var
a, b, c: නිඛිල අරාව;
I, n: byte;
ආරම්භය
ලියන්න ("අරා ප්රමාණය ඇතුලත් කරන්න:");
Readln(n);
i:=1 සිට n do දක්වා
Readln(a[i]); (අරා ආදානය a)
i:=1 සිට n do දක්වා
Readln(b[i]); (අරා ආදානය b)
i:=1 සිට n do දක්වා
C[i]:=a[i]+b[i]; (අරාවන්ගේ එකතුව ගණනය කිරීම)
i:=1 සිට n do දක්වා
ලියන්න(c[i]," "); (අරා ප්රතිදානය සමඟ)
අවසානය.
1 ක්රමය (යතුරු පුවරුව පිරවීම. ගතිකආදානයදත්ත)
M: නිඛිල අරාව;
I සඳහා:=1 සිට 10 දක්වා ආරම්භ කරන්න
ලියන්න ("",I," අගය ඇතුලත් කරන්න ");
2 ක්රමය (අහඹු සංඛ්යා උත්පාදක යන්ත්රයක් භාවිතා කිරීම)
M: නිඛිල අරාව;
I සඳහා:=1 සිට 25 දක්වා ආරම්භ කරන්න
M[I]:=Random(50);
3 ක්රමය (ස්ථිතික දත්ත ආදානය)
M: නිඛිල අරාව = (31,28,31,30,31,30,31,31,30,31,30,31);
I සඳහා:=1 සිට 9 දක්වා කරන්න
1.4 ගැටළු විසඳීමේ උදාහරණ
1. අරා මූලද්රව්ය සෙවීම සහ අගයන් පැවරීම සඳහා ඇල්ගොරිතම
1. යතුරුපුවරුවෙන් ඇතුල් කරන ලද පූර්ණ සංඛ්යා වලින් පුරවා ඇති මානයන් අරාවක් සැකසීම සඳහා වැඩසටහනක් සාදන්න. ධන අරා මූලද්රව්යවල දර්ශක සහ අගයන් මුද්රණය කරන්න.
A: INTEGER ARRAY;
(අරාව පිරවීම)
මම සඳහා:=1 කිරීමට NO ආරම්භය
ලියන්න ("Enter ",I," array element "); ReadLn(A[I]);
(අරා මූලද්රව්ය සැකසීම)
මම සඳහා:=1 කිරීමට NO
A[I]>0 එසේ නම් WriteLn("ධන මූලද්රව්යය = ",A[I]," එහි දර්ශකය = ",I);
2. Y=sin(x-1)/2x ශ්රිතයේ අගයන් ගණනය කිරීම සහ මුද්රණය කිරීම සඳහා වැඩසටහනක් සාදන්න. මූලද්රව්ය 6කින් සමන්විත X අරාවක තර්ක අගයන් සකසන්න. Y array එකට ශ්රිත අගයන් ලියන්න.
X,Y: ARRAY OF Real;
මම සඳහා:=1 සිට 6 දක්වා ආරම්භ කරන්න
ලියන්න ("",I," තර්ක අගය ඇතුලත් කරන්න "); ReadLn(X[I]);
මම සඳහා:=1 සිට 6 දක්වා ආරම්භ කරන්න
Y[I]:=SIN(X[I]-1)/(2*X[I]);
WriteLn(" X= ",X[I]:4:1," Y=",Y[I]:5:2);
3. මූලද්රව්ය 30 කින් සමන්විත M අරාවක් ලබා දී ඇත. අරා මූලද්රව්ය අත්තනෝමතික නිඛිල වේ. සෑම පස්වන සහ ධනාත්මක මූලද්රව්යයේ අගය පෙන්වන්න. නිශ්චිත මූලද්රව්ය තන්තුවකට ප්රතිදානය කරන්න.
එම්: පූර්ණ සංඛ්යාවේ ARRAY;
ClrScr; සසම්භාවී කරන්න;
WriteLn("අරා මූලද්රව්ය අගයන්");
මම සඳහා:=1 සිට 30 දක්වා ආරම්භ කරන්න
M[I]:=අහඹු(20)-4; ලියන්න (M[I]:3);
WriteLn ("සෑම පස්වන සහ ධන අරා මූලද්රව්යවල අගයන්");
අතරතුර අයි<=30 DO Begin
M[I] > 0 නම් ලියන්න (M[I]:3);
ස්වාධීන විසඳුම් සඳහා උදාහරණ:
යතුරුපුවරුවෙන් ඇතුළු කරන ලද පූර්ණ සංඛ්යා වලින් පුරවා ඇති මානය 10 හි ඒකමාන අරාවක් ලබා දී ඇති අතර, N අගය N. N සමඟ සෘණ මූලද්රව්ය ප්රතිස්ථාපනය කරන්න. වෙනස් කළ අරාව එක පේළියකින් පෙන්වන්න.
-15 සිට 20 දක්වා පරාසයක අහඹු සංඛ්යා වලින් පුරවා ඇති මානයේ ඒකමාන අරාවක් ලබා දී ඇත. නිරපේක්ෂ අගය >10 වන අරා මූලද්රව්යවල අගයන් පෙන්වන්න.
සසම්භාවී සංඛ්යා වලින් පුරවා ඇති N මානයේ ඒකමාන අරාවක් ලබා දී ඇත. මූලද්රව්යය සෘණ නම් අරාවේ සෑම තෙවැනි මූලද්රව්යයක්ම වර්ග කරන්න. වෙනස් කළ අරාව තිරය මත පෙන්වන්න.
Y=(sinx+1)cos4x ශ්රිතයේ අගයන් ගණනය කිරීම සහ මුද්රණය කිරීම සඳහා වැඩසටහනක් සාදන්න. මූලද්රව්ය 10 කින් සමන්විත X අරාවක තර්ක අගයන් සකසන්න. Y array එකට ශ්රිත අගයන් ලියන්න.
මූලද්රව්ය 25 කින් සමන්විත A අරාවේ මූලද්රව්ය වලින්, රීතියට අනුව එකම මානයක අරාව D සාදයි: පළමු මූලද්රව්ය 10 Di=Ai+i සූත්රයට අනුව ද, ඉතිරිය - Di=Ai සූත්රයට අනුව ද හමු වේ. -මම.
පැස්කල් හි ඒකමාන අරා සමඟ වැඩ කරන්නේ කෙසේද, අහඹු සංඛ්යා උත්පාදකයක් භාවිතා කරන්නේ කෙසේද - ශ්රිතය පාඩමෙන් පැහැදිලි කරයි. අහඹුපැස්කල්හි. Fibonacci සංඛ්යා ව්යුත්පන්න කරන්නේ කෙසේද යන්න පිළිබඳ උදාහරණයක් සලකා බලනු ලැබේ.
වෙබ් අඩවියේ ඇති ද්රව්ය පැස්කල් ක්රමලේඛන භාෂාවේ ප්රායෝගික ප්රවීණතාවය අරමුණු කර ගෙන ඇත. කෙටි න්යායික තොරතුරු මාතෘකාව පිළිබඳ තොරතුරු සම්පූර්ණ ආවරණයක් ලෙස ප්රකාශ නොකරයි; අවශ්ය තොරතුරු අන්තර්ජාලයේ සොයාගත හැකිය විශාල ප්රමාණවලින්. අපගේ කාර්යයන් අතර පැස්කල් හි ප්රායෝගික ක්රමලේඛන කුසලතා ලබා ගැනීමට අවස්ථාව ලබා දීම ඇතුළත් වේ. විසඳන ලද දෘශ්ය උදාහරණ සහ කාර්යයන් සංකීර්ණත්වය වැඩි කිරීම සඳහා ඉදිරිපත් කර ඇති අතර එමඟින් මුල සිටම ද්රව්ය අධ්යයනය කිරීම පහසු කරයි.
පැස්කල්හි අරා වර්ග දෙකක් තිබේ: ඒකමාන සහ ද්විමාන.
පැස්කල්හි ඒකමාන අරාවක් නිර්වචනය කිරීමශබ්දය මේ වගේ: ඒකමාන අරාවක් යනු එකම නමක් ඇති එකම දත්ත වර්ගයට අයත් නිශ්චිත මූලද්රව්ය සංඛ්යාවක් වන අතර සෑම මූලද්රව්යයකටම තමන්ගේම දර්ශකයක් ඇත - අනුක්රමික අංකයකි.
පැස්කල් හි අරාවක විස්තරය (ප්රකාශනය) සහ එහි මූලද්රව්ය වෙත ප්රවේශය පහත පරිදි වේ:
අරා ප්රකාශය
var දිග: නිඛිලයේ අරාව [1 .. 3 ]; ආරම්භක දිග[ 1 ] : = 500 ; dlina[ 2 ] : = 400 ; dlina[ 3 ] : = 150 ; ... var දිග: නිඛිල අරාව; ආරම්භක දිග: = 500; දිග:=400; දිග:=150; ...
නිවේදනය කරන්න ප්රමාණය නියතයක් හරහා භාවිතා කළ හැක:
ඊට අමතරව, අරාවම විය හැකිය නියත, i.e. වැඩසටහනේ එහි සියලුම අංග කලින් තීරණය කර ඇත. එවැනි අරාවක විස්තරය මේ වගේ ය::
const a: array [1 .. 4 ] integer = (1 , 3 , 2 , 5 ) ; |
const a: නිඛිල අරාව = (1, 3, 2, 5);
අඛණ්ඩ අංක සමඟ පිරවීම:
ප්රතිඵලය: A = 8, A = 9, A = 10, ..., A[N] = A + 1
යතුරුපුවරු ආදානය:
උදාහරණයක්:පැස්කල් හි අරාවක් ඇතුළත් කරන්නේ කෙසේදැයි බලමු:
writeln ("මූලද්රව්ය ගණන ඇතුලත් කරන්න:"); readln(n); (ප්රමාණය කලින් නොදන්නේ නම්, අපි එය ඉල්ලා සිටිමු) i:= 1 සිට n දක්වා ලිවීම ආරම්භ කරන්න("a[", i, "]="); කියවන්න (a[i]); ...අවසානය; ...
✍ උදාහරණ ප්රතිඵලය:
මූලද්රව්ය ගණන ඇතුළත් කරන්න: 3 a=5 a=7 a=4
උදාහරණයක්:පැස්කල් හි අරාවක් පෙන්වන්නේ කෙසේදැයි බලමු:
1 2 3 4 5 6 7 8 9 10 11 12 13 | var a: array [ 1 .. 5 ] integer; (මූලද්රව්ය පහක අරාව) i:integer ; ආරම්භ a[ 1 ] : = 2 ; a[ 2 ] : = 4 ; a[ 3 ] : = 8 ; a[ 4 ] : = 6 ; a[5]: = 3; writeln("Araray A:"); i සඳහා: = 1 සිට 5 දක්වා ලියන්න (a[i]: 2); (අරා මූලද්රව්යවල ප්රතිදානය)අවසානය. |
var a: පූර්ණ සංඛ්යාවේ අරාව; (මූලද්රව්ය පහක අරාව) i: පූර්ණ සංඛ්යාව; ආරම්භ a:=2; a:=4; a:=8; a:=6; a:=3; writeln ("අරාව A:"); i:= 1 සිට 5 දක්වා ලියන්න (a[i]:2); (ප්රතිදාන අරාව මූලද්රව්ය) අවසානය.
✍ උදාහරණ ප්රතිඵලය:
අරාව A: 2 4 8 6 3
අරා සමඟ වැඩ කිරීම සඳහා, එය බොහෝ විට පැස්කල් හි පරාමිතියක් සමඟ භාවිතා වේ, මන්ද ඔබ සාමාන්යයෙන් අරාවේ මූලද්රව්ය කීයක් ඇත්දැයි දන්නා අතර ඔබට මූලද්රව්යවල දර්ශක ලෙස ලූප් කවුන්ටරයක් භාවිතා කළ හැකිය.
Array 0 කාර්යය.ඔබ සැබෑ මානයන් මාලාවක් සඳහන් කළ යුතුය 6 (එනම්, මූලද්රව්ය හයක්); ආදාන අගයන් සමඟ අරාව පුරවා තිරය මත මූලද්රව්ය පෙන්වන්න. ලූප දෙකක් භාවිතා කරන්න: පළමු මූලද්රව්ය ආදාන සඳහා, දෙවන ප්රතිදානය සඳහා.
Pascal හි අරාවන් සැකසීම මෙන්ම අරාවක් පිරවීම සාමාන්යයෙන් සිදු වන්නේ for loop භාවිතා කරමිනි.
අරා මූලද්රව්යවල අගයන් නිරන්තරයෙන් ඉල්ලා නොසිටීම සඳහා, අහඹු ශ්රිතය මඟින් ක්රියාත්මක වන පැස්කල් හි අහඹු සංඛ්යා උත්පාදකයක් භාවිතා කරයි. ඇත්ත වශයෙන්ම, ව්යාජ-අහඹු සංඛ්යා ජනනය වේ, නමුත් එය කාරණය නොවේ.
0 සිට n දක්වා සංඛ්යා උත්පාදනය කිරීම සඳහා (n හි අගය ඇතුළත් නොවේ, පූර්ණ සංඛ්යාවේ අන්තරයේ නිඛිල; i:integer; සසම්භාවී කිරීම ආරම්භ කරන්න; i:=1 සිට 10 දක්වා f[i]:=random(10); ( interval ) write(f[i]," "); end; end.
✍ උදාහරණ ප්රතිඵලය:
9 8 9 2 0 3 6 9 5 0
පරතරය තුළ සැබෑ සංඛ්යා සඳහාසහ තිරය මත මූලද්රව්ය පෙන්වන්න: එක් එක් මූලද්රව්ය පෙන්වීම සඳහා ස්ථාන තුනක් නිර්වචනය කරන්න.
අරාවක් සමඟ වැඩ කිරීමේ වඩාත් පොදු උදාහරණය වන්නේ පැස්කල් හි ෆිබොනාච්චි අංක මාලාවක ප්රතිදානයයි. අපි එය සලකා බලමු.
උදාහරණයක්: Fibonacci අංක මාලාව: 1 1 2 3 5 8 13…
f[ 0 ] : = 1 ; f[ 1 ] : = 1 ; f[ 2 ] : = 2 ; ... f:=1; f:=1; f:=2; ...
f[ 2 ] : = f[ 0 ] + f [ 1 ] ; f[ 3 ] : = f[ 1 ] + f [ 2 ] ;
f[ i] : = f[ i- 2 ] + f[ i- 1 ] ; f[i]:=f+f;
මාලාවේ මූලද්රව්ය සඳහා සූත්රය අපට ලැබුණි.
උදාහරණයක්:පළමු Fibonacci අංක 20 ගණනය කර මුද්රණය කරන්න.
1 2 3 4 5 6 7 8 9 10 11 | var i: පූර්ණ සංඛ්යාව ; f: නිඛිලයේ අරාව [0 .. 19]; ආරම්භ f[ 0 ] : = 1 ; f[ 1 ] : = 1 ; i සඳහා: = 2 සිට 19 දක්වා f[i] ආරම්භ කරන්න: = f[ i- 1 ] + f[ i- 2 ] ; writeln (f[i]) අවසානය; අවසානය. |
var i:integer; f: නිඛිල අරාව; ආරම්භ f:=1; f:=1; i සඳහා:=2 සිට 19 දක්වා f[i]:=f+f; writeln(f[i]) අවසානය; අවසානය.
මෙම උදාහරණයේ දී, සංඛ්යා ශ්රේණි සමඟ වැඩ කිරීමේ මූලධර්මය පැහැදිලි වේ. සාමාන්යයෙන්, සංඛ්යා ශ්රේණියක් ව්යුත්පන්න කිරීම සඳහා, මෙම ශ්රේණියේ එක් එක් මූලද්රව්ය නිර්ණය කිරීම සඳහා සූත්රයක් සොයා ගනී. එබැවින්, Fibonacci සංඛ්යා සම්බන්ධයෙන්, මෙම සූත්ර රීතිය f[i]:=f+f ලෙස පෙනේ. එබැවින්, අරා මූලද්රව්ය සෑදීමේදී එය for loop එකක භාවිතා කළ යුතුය.
Array 2 කාර්යය. 10 පේළියක් ලබා දී ඇත හිතුවක්කාරසංඛ්යා: a, a, ... , a (අහඹු() ශ්රිතය භාවිතා කරන්න). යාබද සංඛ්යාවල ත්රිත්ව එකතුව ගණනය කර මුද්රණය කරන්න: a+a+a , a+a+a , a+a+a , …… , a+a+a
ව්යාජ කේතය:
එහි දර්ශකය අනුව උපරිම මූලද්රව්යය සොයා ගැනීම:
Array_min කාර්යය:අරාවේ අවම මූලද්රව්යය සොයන්න. මූලද්රව්යය සහ එහි දර්ශකය මුද්රණය කරන්න.
Array 4 කාර්යය.නිඛිල මූලද්රව්ය 10 ක අරාවක් ලබා දී ඇත. සෘණ ගණන සොයාගෙන තිරය මත අංකය පෙන්වන්න.
Array 5 කාර්යය.ඇතුළත් කළ n හි අවම සහ උපරිම සංඛ්යා (අරාව) සොයන්න. මෙම මූලද්රව්ය අතර දුර තීරණය කරන්න. 3 2 6 1 3 4 7 2 >>> min = 1, max = 7, දුර = 3
Array 6 කාර්යය.ප්රමාණයේ පූර්ණ සංඛ්යා මාලාවක් ලබා දී ඇත එන්. සියල්ල අඩංගු ප්රතිදානය මෙම අරාවඔවුන්ගේ දර්ශකවල අවරෝහණ අනුපිළිවෙලෙහි ඉරට්ටේ සංඛ්යා, මෙන්ම ඔවුන්ගේ සංඛ්යාව කේ. N=4 mas: 8 9 2 5 >>> 2 8 quantity= 2
Array 7 කාර්යය.යතුරුපුවරුවෙන් මූලද්රව්ය 5 ක අරාවක් ඇතුළත් කරන්න, එහි ඇති උපරිම මූලද්රව්ය දෙක සහ ඒවායේ සංඛ්යා සොයා ගන්න.
උදාහරණයක්:
ආරම්භක අරාව: 4 -5 10 -10 5 උපරිම A=10, A=5
ඒකමාන අරා සමඟ වැඩ කිරීමේ සංකීර්ණ උදාහරණයක් බලමු:
උදාහරණයක්:අංක 10 ක අරාවක් ලබා දී ඇත. පරිශීලකයා විසින් ඇතුළත් කළ අංකය අරාව තුළ තිබේද යන්න තීරණය කරන්න. තිබේ නම්, ප්රතිදානය "සොයාගත්", එසේ නොවේ නම් - "හමු වුණේ නැහැ".
කාර්යයේ දුෂ්කරතාවය වන්නේ වචන මුද්රණය කිරීමයි "සොයාගත්"හෝ "හමු වුණේ නැහැ"වරක් අවශ්ය වේ.
විසඳුම පෙන්වන්න
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | var f: array [ 1 .. 10 ] integer ; කොඩිය:බූලියන් ; i, c: නිඛිල ; අහඹු ලෙස ආරම්භ කරන්න; i සඳහා: = 1 සිට 10 දක්වා f[ i]: = සසම්භාවී (10 ) ; ලියන්න (f[i] , ""); අවසානය ; කොඩිය: = බොරු ; රයිට්ල්න්( "නියැදිය ඇතුල් කරන්න"); readln(c); i සඳහා: = 1 සිට 10 දක්වා කරන්න f[ i] = c පසුව ලියන්න පටන් ගන්න ("සොයාගත්" ); කොඩිය: = ඇත්ත ; කඩන්න ; අවසානය ; flag= බොරු නම්, writeln ("සොයා නැත" ); අවසානය. |
var f: නිඛිල අරාව; කොඩිය:බූලියන්; i,c:integer; අහඹු ලෙස ආරම්භ කරන්න; i සඳහා:=1 සිට 10 දක්වා f[i]:=random(10); ලියන්න(f[i]," "); අවසානය; කොඩිය:=බොරු; writeln ("නියැදිය ඇතුල් කරන්න"); readln(c); i සඳහා:=1 සිට 10 දක්වා කරන්න f[i]=c පසුව writeln("සොයාගත්"); කොඩිය:=ඇත්ත; කැඩීම; අවසානය; flag=false නම් writeln("සොයා නැත"); අවසානය.
අපි සලකා බලමු ඵලදායී විසඳුම:
කාර්ය:අරාවේ X ට සමාන මූලද්රව්යයක් සොයා ගන්න, නැතහොත් එය නොපවතින බව තහවුරු කරන්න.
ඇල්ගොරිතම:
පැස්කල් විකල්පයේ විසඳුම 2. ලූප් අතරතුර:
අරාවක මූලද්රව්යයක් සෙවීමේ සවිස්තරාත්මක වීඩියෝ විශ්ලේෂණයක් නැරඹීමට අපි ඔබට ආරාධනා කරමු (ඵලදායී ඇල්ගොරිතමයක්):
Array 8 කාර්යය.අන්තරයේ අහඹු සංඛ්යා සහිත මූලද්රව්ය 10 ක අරාවක් පුරවා X ට සමාන සියලුම මූලද්රව්යවල සංඛ්යා මුද්රණය කරන්න.
උදාහරණයක්:
ආරම්භක අරාව: 4 0 1 2 0 1 3 4 1 0 අප සොයන්නේ කුමක් ද? 0 A, A, A
උදාහරණයක්:අරා මූලද්රව්ය වමට 1 ස්ථානයකින් මාරු කරන්න, පළමු මූලද්රව්යය අවසාන එක ප්රතිස්ථාපනය කරයි.
ඇල්ගොරිතම:
A:=A; A:=A;... A:=A[N];
වැඩසටහන:
Array 9 කාර්යය.[-10..10] අන්තරයේ අහඹු සංඛ්යා සහිත මූලද්රව්ය 10 ක අරාවක් පුරවා වමට චක්රීය මාරුවක් සිදු කරන්න පළමු මූලද්රව්යය නොමැතිව.
උදාහරණයක්:ආරම්භක අරාව: 4 -5 3 10 -4 -6 8 -10 1 0 ප්රතිඵලය: 4 3 10 -4 -6 8 -10 1 0 -5
අපි බලමු array එකක් rearranged හෝ reverse කරන්නේ කොහොමද කියලා.
උදාහරණයක්:අරා මූලද්රව්ය ප්රතිලෝම අනුපිළිවෙලින් නැවත සකස් කරන්න
විසඳුමක්:
ඇල්ගොරිතම:
ව්යාජ කේතය:
වැඩසටහන:
Array 10 කාර්යය.[-10..10] අන්තරයේ අහඹු සංඛ්යා සහිත මූලද්රව්ය 10 ක අරාවක් පුරවා අවසාන එක හැර අනෙකුත් සියලුම මූලද්රව්ය ආපසු හරවන්න.
උදාහරණයක්:මූලාශ්ර අරාව: -5 3 10 -4 -6 8 -10 1 0 4 ප්රතිඵලය: 0 1 -10 8 -6 -4 10 3 -5 4
උදාහරණයක්:යම් කොන්දේසියක් සපුරාලන අරාවක මූලද්රව්ය සොයා (උදාහරණයක් ලෙස, සෘණ) සහ ඒවා වෙනත් අරාවකට පිටපත් කරන්න
විසඳුමක්:
විසඳුමක්:ගණන් කිරීමේ කවුන්ටරය භාවිතයෙන් සොයාගත් මූලද්රව්ය ගණන ගණන් කරන්න, ඊළඟ මූලද්රව්යය B ස්ථානයේ ස්ථාපනය කරන්න. විචල්යයක් භාවිතා කරමින් ගණන් කරන්නපැවරිය යුතුය 1 .
අරාවේ ප්රතිදානය B:
writeln ("තෝරාගත් අයිතම"); i:=1 සිට ගණන් කිරීමට-1 ලියන්න (B[i], "")
Array task 11.පරතරය තුළ අහඹු සංඛ්යා සහිත අරාවක් පුරවා 0 න් අවසන් වන සියලුම සංඛ්යා වෙනත් අරාවකට ලියන්න.
උදාහරණයක්:මූලාශ්ර අරාව: 40 57 30 71 84 0: 40 30 සමඟ අවසන් වේ
බුබුලු වර්ග කිරීම
පැස්කල් හි ක්රියාත්මක කිරීම:
1 2 3 4 5 6 7 8 | සඳහා i: = 1 සිට N- 1 දක්වා j සඳහා ආරම්භ කරන්න: = N- 1 දක්වා මම A[ j] > A[ j+ 1 ] නම් කරන්නෙමි ඉන්පසු : = A[ j] සමඟ ආරම්භ කරන්න; A[ j] : = A[ j+ 1 ] ; A[ j+ 1 ] : = с; අවසානය ; අවසානය ; |
i සඳහා:=1 සිට N-1 දක්වා j සඳහා ආරම්භ කරන්න:=N-1 දක්වා මම A[j] > A නම් කරන්නෙමි ඉන්පසු ආරම්භ කරන්න:= A[j]; A[j] := A; A:= c; අවසානය; අවසානය;
Array 12 කාර්යය.අන්තරයේ අහඹු සංඛ්යා සහිත මූලද්රව්ය 10 ක අරාවක් පුරවා අරාවේ පළමු භාගය ආරෝහණ අනුපිළිවෙලින් සහ දෙවැන්න අවරෝහණ අනුපිළිවෙලින් (‘බුබුල’ ක්රමය භාවිතයෙන්) වර්ග කරන්න. උදාහරණයක්:මූලාශ්ර අරාව: 14 25 13 30 76 58 32 11 41 97 ප්රතිඵලය: 13 14 25 30 76 97 58 41 32 11
තේරීම අනුව වර්ග කිරීම
i:= 1 සිට N-1 දක්වා ආරම්භ කරන්න min:= i ; j සඳහා:= i+1 සිට N කිරීමට A[j] නම් කරන්න< A then min:=j; if min <>මම පසුව c:=A[i]; A[i]:=A; A:=c; අවසානය; අවසානය;
Array 13 කාර්යය:අන්තරයේ අහඹු සංඛ්යා සහිත මූලද්රව්ය 10 ක අරාවක් පුරවා එය ඉලක්කම්වල එකතුවෙන් ආරෝහණ අනුපිළිවෙලට වර්ග කරන්න උදාහරණයක්:මූලාශ්ර අරාව: 14 25 13 12 76 58 21 87 10 98 ප්රතිඵලය: 10 21 12 13 14 25 76 58 87 98
ඉක්මන් වර්ග කිරීම හෝ ඉක්මන් වර්ග කිරීම
ඇල්ගොරිතම:
පැස්කල් හි ක්රියාත්මක කිරීම:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | ක්රියා පටිපාටිය QSort (පළමු, අවසාන: පූර්ණ සංඛ්යාව); var L, R, c, X: පූර්ණ සංඛ්යාව ; පළමු නම් ආරම්භ කරන්න< last then begin X: = A[ (first + last) div 2 ] ; L: = first; R: = last; while L <= R do begin while A[ L] < X do L: = L + 1 ; while A[ R] >X do R: = R - 1 ; එල් නම්<= R then begin c: = A[ L] ; A[ L] : = A[ R] ; A[ R] : = c; L: = L + 1 ; R: = R - 1 ; end ; end ; QSort(first, R) ; QSort(L, last) ; end ; end . |
ක්රියා පටිපාටිය QSort (පළමු, අවසාන: පූර්ණ සංඛ්යාව); var L, R, c, X: පූර්ණ සංඛ්යාව; පළමු නම් ආරම්භ කරන්න< last then begin X:= A[(first + last) div 2]; L:= first; R:= last; while L <= R do begin while A[L] < X do L:= L + 1; while A[R] >X do R:= R - 1; එල් නම්<= R then begin c:= A[L]; A[L]:= A[R]; A[R]:= c; L:= L + 1; R:= R - 1; end; end; QSort(first, R); QSort(L, last); end; end.
Array 14 කාර්යය:
[-50..50] පරාසයේ අහඹු සංඛ්යා සහිත මූලද්රව්ය 10 ක අරාවක් පුරවා ඉක්මන් වර්ග කිරීමේ ඇල්ගොරිතම භාවිතයෙන් එය වර්ග කරන්න.
අපට ඒකමාන අරාවක මූලද්රව්ය අගයන් සමඟ පිරවිය හැකිය: යතුරුපුවරුවෙන් අගයන් ඇතුළත් කිරීමෙන්; අහඹු ලෙස; සූත්රය අනුව. ඒකමාන අරාවන් නියම කිරීමේ ක්රම සංඛ්යාත්මක අරා අගයන් ආදානය කිරීමට සහ ප්රතිදානය කිරීමට ලූප භාවිතා කරයි. ක්රියා පටිපාටිය යොමුව අනුව පරාමිතියක්, ලබා දී ඇති වර්ගයක Mssiv අරාවක් සහ පිරවිය යුතු අරා සෛල ගණනට වගකිව යුතු පූර්ණ සංඛ්යා විචල්යයක් n ගනී. අහඹු ලෙස ඒකමාන අරාවක් සෑදීම.
මෙම කාර්යය ඔබට නොගැලපේ නම්, පිටුවේ පතුලේ සමාන කෘති ලැයිස්තුවක් ඇත. ඔබට සෙවුම් බොත්තම ද භාවිතා කළ හැකිය
පිරවීම.
අපට ඒකමාන අරාවක මූලද්රව්ය අගයන් සමඟ පිරවිය හැක:
යතුරුපුවරුවෙන් අගයන් ඇතුළත් කිරීම;
අහඹු ලෙස;
සූත්රය අනුව.
සංඛ්යාත්මක අරා අගයන් ආදානය කිරීමට සහ ප්රතිදානය කිරීමට ලූප භාවිතා වේ.
ආකාර දෙකකින් ඒකමාන අරාවක් සාදන ක්රියා පටිපාටි සලකා බලමු
1) අහඹු ලෙස,
2) යතුරු පුවරුවෙන් මූලද්රව්ය ඇතුල් කිරීම
අපි උපකල්පනය කරමු අපි පූර්ණ සංඛ්යා මාලාවක් සමඟ වැඩ කරන බව. 50 ට සමාන උපරිම මූලද්රව්ය සංඛ්යාවක් තිබීම අපට ප්රමාණවත් වේ. ක්රියා පටිපාටිය යොමුව පරාමිතියක්, දී ඇති වර්ගයක Massiv අරාවක් සහ පූර්ණ සංඛ්යා විචල්යයක් ගනී. n , පිරවිය යුතු අරා සෛල ගණනට වගකිව යුතු ය. අපට දේශීය විචල්යයක් ද අවශ්ය වේමම , එය ලූප පරාමිතියක් ලෙස ක්රියා කරන අතර අරාවේ මූලද්රව්යයේ පිහිටීම තීරණය කරන අංකයක් නියම කිරීමට භාවිතා කරයි.
1. අහඹු ලෙස ඒකමාන අරාවක් සෑදීම. එක් එක් මූලද්රව්යයේ අගය සසම්භාවී ශ්රිතයේ ප්රතිඵලයට සසම්භාවී Random(10) සකසමු. සසම්භාවී සංඛ්යාව සසම්භාවී (10) ශ්රිතය මගින් ගණනය කරනු ලබන ශරීරයේ, ක්රියාකරු සඳහා චක්රීය භාවිතා කරමින් අරාව පිරවීම අපි සකසන්නෙමු, ඉන්පසු මෙම අගය ඊළඟට පවරනු ලැබේ.මම -අරාවේ මූලද්රව්යය.
ක්රියා පටිපාටිය InsertMas1(Var massiv:mas; n:integer);
මම: පූර්ණ සංඛ්යාව;
ආරම්භය
සසම්භාවී කරන්න;
i:=1 සිට n do දක්වා
මැසිව්[i] := සසම්භාවී(10);
අවසානය ;
2. යතුරුපුවරුවෙන් මූලද්රව්ය ඇතුළත් කිරීමෙන් ඒකමාන අරාවක් සෑදීම.
ක්රියා පටිපාටිය InsertMas2(Var massiv:mas; n:integer);
මම: පූර්ණ සංඛ්යාව;
ආරම්භය
i:=1 සිට n do දක්වා
ආරම්භය
ලියන්න ("ඇතුල් කරන්න", i ,"th array element ");
readln(array[i]);
අවසානය;
අවසානය;
අරාව පහත පරිදි තිරය මත දිස්වේ:
ක්රියා පටිපාටිය PrintMas(massiv:mas; n:integer);
මම: පූර්ණ සංඛ්යාව;
ආරම්භය
i:=1 සිට n දක්වා
ලියන්න (අරාව[i]:5);
අවසානය.
මෙම අවස්ථා තුනේදීම චක්රයක් සංවිධානය කිරීමකින් තොරව අපට කළ නොහැකි බව අප මතක තබා ගත යුතුය.
අරාවක උපරිම (අවම) මූලද්රව්යය සොයා ගැනීම.
අපට ඒකමාන අරාවක් ඇත:
20,-2, 4, 10,7, 21,-12, 0, 4, 17.
උපරිම මූලද්රව්යය සොයා ගැනීමට අවශ්ය නම් සිදු කළ යුතු මෙහෙයුම් මොනවාදැයි සිතා බලමු. ස්වාභාවිකවම, සංසන්දනය කිරීමේ මෙහෙයුම අපි සෑම විටම යුගලයක් සංසන්දනය කරන අතර, අරාවේ සියලුම අංග හරහා "ධාවනය" කිරීම ගැන අපි සිතන්නේ නැත. සංසන්දනාත්මක ක්රියාව අවශ්ය වාර ගණන පුනරුච්චාරණය කරමින් සංඛ්යා යුගලයක් සංසන්දනය කරන ආකාරයෙන් උපරිම (අවම) මූලද්රව්යය සෙවීම සඳහා ඇල්ගොරිතම අපි ගොඩනඟමු.
එබැවින් අපි ප්රශ්න දෙකකට පිළිතුරු දිය යුතුය:
1) සම්බන්ධතා මෙහෙයුම සෑදෙන යුගලයේ ඇතුළත් කර ඇති අංක මොනවාද;
2) සැසඳීමේ මෙහෙයුම කොපමණ වාර ගණනක් නැවත නැවතත් කළ යුතුද? අපි max නමින් අතිරේක විචල්යයක් හඳුන්වා දෙමු. එය සංඛ්යා වලින් එකක් වනු ඇත, දෙවන අංකය අරාවේ ඊළඟ මූලද්රව්යය වේ. පළමු සංසන්දනාත්මක මෙහෙයුම සිදු කිරීම සඳහා, විචල්ය උපරිමයට යම් ආරම්භක අගයක් පැවරීම අවශ්ය වේ. මෙහි විකල්ප දෙකක් තිබිය හැක:
1) විචල්ය උපරිමයට අරාවේ පළමු මූලද්රව්යය පවරන්න;
2) අරාවේ සියලුම මූලද්රව්යවලට වඩා පැහැදිලිවම අඩු සංඛ්යාවක් පවරන්න.
පළමු වසරේ එක් එක් කණ්ඩායමේ සිසුන් සංඛ්යාව පිළිබඳ තොරතුරු අරාවෙහි අඩංගු වේ. කණ්ඩායම් අංකය අරාවේ ඇති අංකයේ අනුක්රමික අංකයට අනුරූප වේ යැයි උපකල්පනය කරමින් උපරිම සිසුන් සංඛ්යාව සහිත කණ්ඩායම තීරණය කරන්න (එවැනි කණ්ඩායමක් පමණක් ඇතැයි අපි උපකල්පනය කරමු).
වෙනත් වචන වලින් කිවහොත්, අපි උපරිම මූලද්රව්යය සහ එහි අංකය සොයාගත යුතුය.
වැඩසටහන max_num;
බයිට් වර්ගය mas=array[ 1.. 10];
var a: mas;
num, i: byte;
උපරිම: බයිට්;
ආරම්භය
(පිරවුම් වාරණ)
i:=l සිට 7 do දක්වා
readln(a[i]);
(උපරිම සහ එහි අංකය සොයන්න)
උපරිම:==0;
(මෙම අරාව සඳහා කුඩාම අංකය ඇතුළත් කරන්න)
i:=l කිරීමට n do සඳහා
a[i]>උපරිම නම් ආරම්භ කරන්න
num:=i;
උපරිම:=a[i]
අවසානය;
writeln("උපරිම සිසුන් සංඛ්යාව=",උපරිම);
writeln("කණ්ඩායම් අංකය=",num);
අවසානය.
3) අරාවේ ඉරට්ටේ මූලද්රව්ය අතර අවම මූලද්රව්යය සොයන්න.
පැහැදිලි කිරීම: අපට අරාවේ පළමු මූලද්රව්යය min විචල්යයට පැවරිය නොහැක, මන්ද එය අමුතු විය හැක. එමනිසා, අපි මෙම දත්ත වර්ගය සඳහා ඉතා විශාල සංඛ්යාවක් තෝරාගත යුතුය.
අපි නිවේදනය කරනවා නම් අරාවේ මුලද්රව්ය නිඛිල වේ, එවිටමෙවැනි අංකය +32767 වනු ඇත.
වැඩසටහන min_even;
a:array of integer;
i:integer;
min:integer;
ආරම්භය
i:=l සිට 10 do beein සඳහා
writeln("ඊළඟ අරා මූලද්රව්ය ඇතුලත් කරන්න");
readln(a[i]) ;
අවසානය;
min:=32767;
i:=l සිට 10 do දක්වා
නම් (අ[i] min=32767 නම්, writeln ("අරාවේ ඒකාකාර මූලද්රව්ය නොමැත") else writein ("අරාවේ ඉරට්ටේ මුලද්රව්ය අතර අවම මූලද්රව්යය=",min) අවසානය. කරුණාකර සටහන් කරන්න: min විචල්යයේ අගය වෙනස් වී ඇත්දැයි පරීක්ෂා කිරීම අවශ්ය වේ, මන්ද මූලද්රව්ය පවා නොතිබිය හැකිය. ඔබ උනන්දු විය හැකි වෙනත් සමාන කෘති.vshm> මාලාවෙන් පාඩම: " ක්රමලේඛන භාෂාව පැස්කල්» අරාවක් ප්රකාශ කිරීමෙන් පසු, ඔබට එය සමඟ වැඩ කළ හැකිය. උදාහරණයක් ලෙස, අරා මූලද්රව්ය සඳහා අගයන් පවරන්න සහ සාමාන්යයෙන් ඒවා සාමාන්ය විචල්යයන් ලෙස සලකන්න. නිශ්චිත මූලද්රව්යයකට ප්රවේශ වීමට, ඔබ විසින් අරාව හඳුනාගැනීම (නම) සහ මූලද්රව්ය දර්ශකය වර්ග වරහන් තුළ සඳහන් කළ යුතුය. උදාහරණයක් ලෙස, Mas, A ප්රවේශය ඔබට MAS අරාවේ දෙවන මූලද්රව්ය සහ A අරාවේ දහවන මූලද්රව්ය වෙත ප්රවේශ වීමට ඉඩ සලසයි. ද්විමාන අරාවක් සමඟ වැඩ කරන විට, n-මාන අරාවක් සමඟ දර්ශක දෙකක් නියම කරනු ලැබේ - n. දර්ශක. උදාහරණයක් ලෙස, M අරාවේ සිව්වන තීරුවේ සිව්වන පේළියේ ඇති මූලද්රව්යයේ අගය සැකසීම සඳහා Matr ප්රවේශය ලබා දේ. අරාවක සුචිගත මූලද්රව්ය සුචිගත විචල්ය ලෙස හැඳින්වේ. ඔබට අරාවේ සීමාවෙන් ඔබ්බට යා නොහැක. එනම්, Mas array හි මූලද්රව්ය පහක් තිබේ නම්, හයවන හෝ අටවන මූලද්රව්යයට ප්රවේශ වීම දෝෂයක් ඇති කරයි. ඒකමාන අරා සමඟ වැඩ කිරීමේදී පැන නගින සාමාන්ය මෙහෙයුම් දෙස බලමු. අරාවක් පිරවීම සහ ප්රතිදානය කිරීමමූලද්රව්යයෙන් මූලද්රව්ය පමණක් කළ හැකිය, එනම්, ඔබට පළමුව පළමු මූලද්රව්යයට අගයක් පැවරිය හැකිය, පසුව දෙවැන්න සහ යනාදිය, එය තිරය මත ප්රදර්ශනය කිරීමත් සමඟම - අපි පළමු, දෙවන, තෙවන, සහ එසේ අවසන් වන තුරු. පැස්කල් සතුව එකවර අරා මූලද්රව්ය ආදාන/ප්රතිදානය කිරීමේ මාධ්යයන් නොමැත, එබැවින් අගයන් මූලද්රව්ය අනුව ඇතුළත් වේ. පැවරුම් ක්රියාකරු භාවිතයෙන් අරා මූලද්රව්යයකට අගයන් පැවරිය හැකිය, නැතහොත් කියවීම හෝ Readln ක්රියාකරුවන් භාවිතයෙන් යතුරුපුවරුවෙන් ඇතුළත් කළ හැකිය. for loop එකක ඇති array එකක ඇති සියලුම අංග හරහා පුනරාවර්තනය කිරීම ඉතා පහසු වේ. ඒක මාන අරාව පිරවිය හැකි ක්රම: 1. යතුරුපුවරුවෙන් අරා මූලද්රව්යවල අගයන් ඇතුළත් කිරීම. Readln ක්රියාකරු භාවිතා කර ඇති නිසා, සෑම අගයක්ම නව රේඛාවකට ඇතුල් කරනු ලැබේ. 2. Array එකක් පිරවීමසංඛ්යා පරතරයෙන් අහඹු ලෙස ජනනය වේ. අපි අහඹු සංඛ්යා සංවේදකයක් සම්බන්ධ කරමු - අහඹු ශ්රිතය. 3. පිරවීම අරාවසූත්රය අනුව. සෑම අරා මූලද්රව්යයකටම සූත්රයක් භාවිතයෙන් ගණනය කළ අගයක් පවරනු ලැබේ. අරාවේ සෑම මූලද්රව්යයක්ම එහි සාමාන්ය අංකයේ (දර්ශක) අගය තුන් ගුණයකට සමාන නම්, ක්රියා පටිපාටිය මේ ආකාරයෙන් පෙනෙනු ඇත: 4. ගොනුවකින් අංක කියවීම. ඔබ කල්තියා පෙළ ගොනුවක් සෑදිය යුතුය, එහි පේළි කිහිපයක් ලියන්න, ඒ සෑම එකක්ම අංක 30 ක් අඩංගු වේ. නිගමනයමූලද්රව්ය අගයන් අරාවතිරයට ආදානය සිදු කරනු ලැබේ, ආදානය මෙන්, ලූපයක මූලද්රව්ය මගින් මූලද්රව්යය. ප්රතිදානය සඳහා අපි Write හෝ Writeln ක්රියාකරුවන් භාවිතා කරමු. ආදාන පරාමිති ලෙස, අපි ක්රියා පටිපාටියට අරාව පමණක් නොව, ප්රතිදානය කළ යුතු මූලද්රව්ය ගණන ද, පළමු සිට ආරම්භ කරන්නෙමු (අපි අරාවේ මූලද්රව්ය ඉවත් කර එකතු කරන විට අපට මෙය අවශ්ය වේ). උදාහරණ 1.යතුරුපුවරුවෙන් අරාව පුරවා තිරය මත පෙන්වන්න. විසඳුමක්. වැඩසටහන ක්රියා පටිපාටි දෙකක් භාවිතා කරයි: Init1 ක්රියා පටිපාටිය (යතුරුපුවරුවෙන් අරාව පිරවීම) සහ මුද්රණ ක්රියා පටිපාටිය (තිරය මත අරාව පෙන්වීම). උදාහරණ 2.පෙළ ගොනුවකින් අරාවක් පුරවා එය තිරය මත පෙන්වන්න. පෙළ ගොනුවේ පේළි කිහිපයක් ඇත, සෑම පේළියකම අංක 30 ක් අඩංගු වේ. ඔබ ඒකමාන අරාවක් පුරවා එය තිරය මත පෙන්වන්නේ කෙසේදැයි ඉගෙන ගෙන ඇත. මීළඟ පාඩමේදී අපි ඒකමාන අරාවන් සැකසීම සඳහා ඇල්ගොරිතම සමඟ දිගටම දැන හඳුනා ගනිමු.8729.
පරිමිත යන්ත්රයක නිර්වචනය සහ පිරිවිතර ක්රම. සංශ්ලේෂණ ගැටළුව. මූලික යන්ත්ර
189.1 කි.බ
පරිමිත රාජ්ය යන්ත්රයක් නියම කිරීමේ නිර්වචනය සහ ක්රම. පරිමිත යන්ත්රයක නිර්වචනය සහ පිරිවිතර ක්රම. සීමිත රාජ්ය යන්ත්රයක් අර්ථ දැක්වීම. සීමිත රාජ්ය යන්ත්රයක් නියම කිරීම සඳහා ක්රම.
3552.
රසායන විද්යාවේ තනි ගෙදර වැඩ. රසායන විද්යාව ගෙදර වැඩ
475.47 කි.බ
මාර්ගෝපදේශවලට පහත මාතෘකා පිළිබඳ තනි පුද්ගල ගෙදර වැඩ ඇතුළත් වේ: අකාබනික සංයෝග, රසායනික සමාන, පරමාණුක ව්යුහය, රසායනික බන්ධන, රසායනික තාප ගති විද්යාව, රසායනික චාලක විද්යාව, ද්රාවණ සාන්ද්රණය, අයනික ප්රතික්රියා සහ ලවණවල ජල විච්ඡේදනය, රෙඩොක්ස් ප්රතික්රියා, විද්යුත් රසායනික ක්රියාවලීන්, ලෝහවල ගුණ.
12127.
ෆෙනොස්කැන්ඩියන් පලිහට ඊසාන දෙසින් පිහිටි පැලියෝප්රොටෙරෝසොයික් ස්ථර මාෆික් ස්කන්ධවල උපාය මාර්ගික ඛනිජ (PGM, Ni, Co, Cr, Cu)
17.77 කි.බ
සංවර්ධනය පිළිබඳ කෙටි විස්තරයක්. ප්රතිසමයන් හා සසඳන විට සංවර්ධනයේ වාසි. සංවර්ධනයේ වැදගත් අංගයක් වන්නේ ඔත්තු බැලීමේ සහ අපේක්ෂා කිරීමේ අදියරේදී බර පතල් කැණීම් සහ කැණීම් උපකරණ පුළුල් ලෙස භාවිතා කිරීම තියුනු ලෙස අඩු කිරීමෙන් පරිසරයට සිදුවන negative ණාත්මක තාක්ෂණික බලපෑම අවම කිරීමේ හැකියාවයි. සංවර්ධනයේ වාණිජ භාවිතයේ ක්ෂේත්ර.
9554.
ගණිතය. ක්රමවේද මාර්ගෝපදේශය සහ කාර්යයන්
268.34 කි.බ
අධ්යයන විනය "ගණිතය" ද්විතීයික වෘත්තීය අධ්යාපනයේ උපාධිධාරීන්ගේ අවම අන්තර්ගතය සහ පුහුණු මට්ටම සඳහා රාජ්ය අවශ්යතා ක්රියාත්මක කිරීමට අදහස් කෙරේ.
18129.
පරිකල්පනය වර්ධනය කිරීමේ මාධ්යයක් ලෙස නිර්මාණාත්මක කාර්යයන්
91.06 කි.බ
අධ්යාපන ක්රියාවලියේදී සිසුන්ගේ නිර්මාණාත්මක ක්රියාකාරකම් සංවිධානය කිරීම සඳහා විද්යාත්මක අදහස්වල විවිධත්වය සහ ප්රායෝගික ප්රවේශයන් මෙම අධ්යයනයන් පිළිබිඹු කරයි; කෙසේ වෙතත්, පරිකල්පනය වර්ධනය කිරීමේ මාධ්යයක් ලෙස ඉගෙනීමේ ක්රියාවලියේදී තරුණ පාසල් දරුවන්ට හිතාමතාම නිර්මාණාත්මක කාර්යයන් සැපයීමේ අංගය තවමත් ප්රමාණවත් නොවේ. අධ්යයනය කළා. දාර්ශනික මනෝවිද්යාත්මක හා අධ්යාපනික සාහිත්යය විශ්ලේෂණය කිරීමේදී හඳුනාගත් ප්රතිවිරෝධතා මත පදනම්ව, ප්රාථමික පාසල්වල අත්දැකීම් අධ්යයනය කිරීමේ ප්රති result ලයක් ලෙස, න්යායාත්මක ...
19517.
බුක්වා ගබඩාවේ ස්වයංක්රීයකරණය සඳහා තාක්ෂණික පිරිවිතර සංවර්ධනය කිරීම
155.63 කි.බ
සේවාදායක අවශ්යතා මත පදනම්ව භාණ්ඩ නිසි ලෙස විකිණීම, එනම් විශේෂඥයින් සමඟ උපදේශනය. එබැවින්, ගබඩාවට වෙළඳපල තත්ත්වය පිළිබඳ තොරතුරු ලබා ගැනීම සහ පවතින භාණ්ඩ හා සේවා පිළිබඳ තොරතුරු වෙළඳපොළට ලබා දීම අවශ්ය වේ. මාධ්ය සමඟ අන්තර් ක්රියා කිරීම ගබඩාවෙන් තමා, එහි භාණ්ඩ සහ සේවා පිළිබඳ දත්ත සපයනු ලැබේ; පසුව, මෙම දත්ත වලින්, ලැප්ටොප් වෙළඳසැල සඳහා වෙළඳ දැන්වීම් ජනනය කරනු ලැබේ, එය භාණ්ඩ හා සේවා සඳහා වෙළඳපල විසින් වටහා ගනු ලැබේ. නිෂ්පාදන වර්ග පුළුල් කිරීම ගබඩා වාසි: පුළුල් අත්දැකීම්...
3548.
රසායන විද්යාව ගෙදර වැඩ සහ ඒවා සම්පූර්ණ කිරීම සඳහා මාර්ගෝපදේශ
229.61 කි.බ
මෙම ගෙදර වැඩ පැවරුම් විෂය මාලාවට අනුකූලව රසායන විද්යා පාඨමාලාවේ සියලුම විශේෂතාවල සිසුන්ගේ ක්රමානුකූල වැඩ සඳහා අදහස් කෙරේ. පැවරුම් සම්පූර්ණ කිරීම සිසුන්ට ස්වාධීන වැඩ කුසලතා වර්ධනය කිරීමට උපකාරී වේ.
19091.
සංවර්ධිත නිර්මාණය සඳහා තාක්ෂණික පිරිවිතර සහ මූලික තාක්ෂණික අවශ්යතා විශ්ලේෂණය
911.42 කි.බ
සේවාදායක කාමරය (සේවාදායක කාමරය හෝ සරලව සේවාදායක කාමරය) යනු සේවාදායක සහ විදුලි සංදේශ උපකරණ ස්ථානගත කිරීම සහ ක්රියාත්මක කිරීම සඳහා විශේෂයෙන් නිර්මාණය කර නඩත්තු කරන ලද කොන්දේසි සහිත කැපවූ තාක්ෂණික කාමරයකි. සේවාදායක කාමරයේ අවසර ලත් උෂ්ණත්වය විය යුතුය
1763.
තොරතුරු ගබඩා කිරීම සඳහා C++ සම්මත සැකිලි පුස්තකාලය (STL) කන්ටේනරය භාවිතයෙන් පන්තියක් ලෙස කාර්යයක් ක්රියාත්මක කිරීම
190.6 කි.බ
C++ හි වාක්ය ඛණ්ඩය C භාෂාවෙන් උරුම වී ඇත.එක් නිර්මාණ මූලධර්මයක් වූයේ C සමග ගැළපීම පවත්වා ගැනීමයි.කෙසේ වෙතත්, C++ දැඩි ලෙස C හි සුපිරි කට්ටලයක් නොවේ; C සම්පාදක දෙකටම සමානව සාර්ථකව පරිවර්තනය කළ හැකි බොහෝ වැඩසටහන්...
10124.
ප්රචාරණ සේවා, පිරිසිදු කිරීමේ සේවා, ආරක්ෂාව සහ කාර්ය මණ්ඩලය සැපයීම සඳහා තාක්ෂණික පිරිවිතරයන් සංවර්ධනය කිරීම
31.88 කි.බ
ප්රචාරණ සේවා සඳහා තාක්ෂණික පිරිවිතර සංවර්ධනය: ප්රචාරණ සේවා නීතිමය නියාමනය. පිරිසිදු කිරීමේ සේවා සඳහා තාක්ෂණික පිරිවිතර සංවර්ධනය: මූලික සංකල්ප සහ සේවා වර්ග. ආරක්ෂක සේවා සඳහා තාක්ෂණික පිරිවිතර සංවර්ධනය: නීතිමය නියාමනය. පුද්ගල සේවා සඳහා තාක්ෂණික පිරිවිතර සංවර්ධනය: මූලික සංකල්ප.
අගයන් සහිත ඒකමාන අරාවක් පිරවීම
අරා මූලද්රව්යවල අගයන් තිරය මත පෙන්වීම