
Laboratoriya jumısı_6
.1.docLaboratoriya jumısı 6.1 S++ Builder 6 ortalıǵında eki ólshemli dinamikalıq massivler menen jumıs islewge programma dúziw.
1. NM ólshemge iye matriсadan B vektorın alıw, onıń k-inshi elementine 0 beremiz eger matriсanıń k -inshi baǵanasınıń barlıq elementleri 0 bolsa, kerisinshe bolsa 1 beriledi.
Komponentalar palitrasınan Standart vkladkasın tańlaymız.
Label 1knopkasın
tańlap Form1
aynasına mısh penen tartıp qoyamız.
Label1 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label1 di ÓLShEMI n= ge ózgertemiz.
Label2 knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız.
Label1 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label1 di ÓLShEMI m= ge ózgertemiz.
Endi
Edit1
knopkasın tańlaymız.
Edit2
knopkasın tańlaymız.
Komponentalar palitrasınan Additional vkladkasın tańlaymız.
Additional vkladkasınan
StringGrid knopkasın
tańlaymız.
-StringGrid1 de turıp Object Inspector aynasınan Properties-ColCount qa 3, RowCount qa 3, FixedCols hám FixedRows lerge 1 kiritemiz.
-StringGrid2 de turıp Object Inspector aynasınan Properties-ColCount qa 1, RowCount qa 3, FixedCols 0 hám FixedRows lerge 1 jazamız.
StringGrid 1, StringGrid 2, de turıp Properties -Options -goEditing mánisin true dep alıń.
Endi
Button1
knopkasın tańlap Form1
aynasına mısh penen tartıp qoyamız.
Button2 knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız.
Button1 knopkasınıń atın ózgertiw ushın Object Inspector aynasınan Properties- Saption- Button1 dı Orınlaw1 sózine ózgertemiz.
Button2 knopkasınıń atın ózgertiw ushın Object Inspector aynasınan Properties- Saption- Button2 dı Orınlaw2 sózine ózgertemiz.
Button1 knopkası eki ret shertemiz, Nátiyjede Unit1.cpp aynasında mına kórinistegi kod payda boladı.Sonıń ishine tómendegilerdi jazamız:
int n=4, m=3;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Edit1->Text=IntToStr(n);
Edit2->Text=IntToStr(m);
StringGrid1->ColCount = m+1; // bagana
StringGrid1->RowCount = n+1; // katar
StringGrid2->RowCount = n+1; // katar
StringGrid1->Cells[0][0] = "Matriсa A";
StringGrid2->Cells[0][0] = "Massiv B";
for(int i=1; i<=n;i++){
StringGrid1->Cells[0][i]="i="+IntToStr(i);
StringGrid1->Cells[i][0]="j="+IntToStr(i); }
for(int j=0; j<=n;j++) {
for(int i=0; i<=m;i++) StringGrid1->Cells[j+1][i+1]=(i+2)*(2*j+1);
}
}
Button2 knopkası eki ret shertemiz, Nátiyjede Unit1.cpp aynasında mına kórinistegi kod payda boladı.Sonıń ishine tómendegilerdi jazamız:
void __fastcall TForm1::Button2Click(TObject *Sender)
{
for(int j=0; j<=n;j++) {
for(int i=0; i<=m;i++)
if(StringGrid1->Cells[j+1][i+1]==0) StringGrid2->Cells[0][i+1]=0;
else StringGrid2->Cells[0][i+1]=1;
}
}
Hámmesin kiritip jazıp bolǵannan keyin Project menyusinen Compile Unit yamasa(alt +F9) tańlaymız.
Eger xammesi tuwrı bolsa onda dastur tómendegi aynanı shıǵaradı.
Aqırında Run
menyusinen Run dı
yamasa F9
tańlaymız(Instrumentler panelinen mına
piktogrammanı basamız. Mına ayna payda boladı. Esaplaw
túymesin basamız. Nátiyjede tómendegi aynada nátiyje payda
boladı.
6.1. Tapsırmalar
Dinamikalıq massivlerdi qayta islew programmasın jazıń. Massivler ólshemlerin klaviaturadan kiritiń. Aynalıq qollanba dúzgende ápiwayı nátiyjeni shıǵarıw ushın Label komponentasınan, al massivlerdi kiritiw hám shıǵarıwda StringGrid komponentasınan paydalanıń hám onıń 0-shi baǵanası hám 0-shi qatarına massivlerdiń indekslerin jazıń.
1. NM ólshemli matriсadan vektor B nı payda etiń, onıń ushın matriсanıń k-shı qatarınıń elementleri kemiw tártibinde saralanǵan bolsa B vektordıń k-shı elementine 1 mánisin beriń, saralanbaǵan bolsa 0 mánisin beriń.
2. NM ólshemli matriсadan vektor B nı payda etiń, onıń ushın matriсanıń k-shı qatarı simmetriyalı bolsa B vektordıń k-shı elementine 1 mánisin beriń, simmetriyalı bolmasa 0 mánisin beriń.
3. NM ólshemli matriсa berilgen. Matriсanıń ayrıqsha elementleri sanın anıqlań. Element ayrıqsha delinedi eger ol óziniń baǵanasında jatqan basqa elementler summasınan úlken bolsa.
4. NM ólshemli matriсa berilgen. Matriсanıń sonday elementleri sanın anıqlań, yaǵnıy onıń oń jaǵında kishi element, al shep jaǵında úlken element jaylasqan bolsın.
5 NM ólshemli matriсa berilgen. Matriсanıń hár qıylı elementleri sanın anıqlań, yaǵnıy qaytalanıwshı element bolsa bir ret sanaladı .
6. NM ólshemli matriсada qatarlardı birinshi elementleriniń ósiw tártibinde saralań.
7. NM ólshemli matriсada qatarlardı elementleriniń summasınıń ósiw tártibinde saralań.
8. NM ólshemli matriсada qatarlardı eń úlken elementleriniń ósiw tártibinde saralań.
9. Kvadrat matriсanıń bas diagonal janındaǵı diagonallar boyınsha simmetriyalı bolıwın anıqlań.
10. NM ólshemli matriсa berilgen. Matriсanıń sonday elementleri sanın anıqlań, yaǵnıy onıń oń jaǵında úlken element, al shep jaǵında kishi element jaylasqan bolsın.
11. Kvadrat matriсanıń bas diagonal joqarısındaǵı elementler kóbeymesin tabıń.
12. Kvadrat matriсanıń bas diagonal tómenindegi elementler ishinen eń úlkenin tabıń.
13. . NM ólshemli matriсada eń kishi element jaylasqan qatardı eń úlken element jaylasqan qatar menen almastırıń.
14. n pólshemli matriсadan n-1 ólshemli matriсanı keltirip shıǵarıń. Onıń ushın moduli boyınsha eń úlken element jaylasqan qatar menen baǵananı matriсadan alıp taslań.
15. n pólshemli matriсada bas diagonal tómenindegi elementler summasın hám bas diagonal joqarısındaǵı elementler kóbeymesin tabıń.