1. Sintaksisga kirish Dastur yaratish muhiti


- misol: «Guruh ro‘yxati»



Yüklə 1,17 Mb.
səhifə24/34
tarix19.09.2022
ölçüsü1,17 Mb.
#63802
1   ...   20   21   22   23   24   25   26   27   ...   34
1 kurslarga moljallangan Dasturlash 2 fanidan C Builder muhitida (2)

5 - misol: «Guruh ro‘yxati»

Dastur tasnifi


Strukturalar bilan ishlashni ko‘rsatish uchun bir xil ob’yektlar to‘plami haqida turli xil ma’lumotlarni qamrovchi, masalan, guruh o‘quvchilarining to‘plami, misol tavsiya qilinadi. Vazifa: Bitta guruh o‘quvchilari haqidagi ma’lumotlarni saqlovchi va qayta ishlovchi dastur tuzilsin. O‘quvchilar haqidagi ma’lumotlarni qo‘shish va o‘zgartirish imkoniyati ta’minlansin.

Zarur ko‘nikmalar


Berilgan misolni muvaffaqiyatli bajarish uchun strukturalar bilan, kamida ularning klassik qo‘llanilishi bilan, ishlashni bilish zarur. Strukturaning ma’lumotlar turlaridan boshqa narsa emasligini tushunish zarur, ya’ni ular yordamida strukturalar massivini va ularga ko‘rsatkichlar hosil qilish mumkin.


Yechish


Bu dasturni amalga oshirish uchun student nomli struktura hosil qilingan. U studentning familiyasini va ismini, hamda telefoni va guruhini saqlovchi maydonlarga ega. O‘ttizta elementdan iborat bunday strukturalar massivi ham hosil qilingan. N o‘zgaruvchi oxirgidan keyingi element nomeriga ega bo‘ladi. «Dobavit» yoki «Udalit» tugmachalari bosilganda N ning qiymati mos ravishda bitta birlikka ko‘payadi yoki kamayadi.


Shakl


Mazkur shaklda jadvalning ustunlari Memo maydoni sifatida tasvirlangan, boshqarish elementlari GroupBox ob’yekti yordamida ma’nosiga ko‘ra alohida guruhlarga yig‘ilgan, kiritish maydoni esa Lable ob’yekti bilan belgilangan.

Dastur kodi


#include


#pragma hdrstop

#include "Unit1.h"


//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
struct student
{
AnsiString name; // O‘quvchining FISh
AnsiString group; // Guruh
int phone; // Uy telefoni
};
student M[30];
int N = 0;
//---------------------------------------------------------------------------
void ShowAll()
{
Form1->Memo1->Text = "FISh";
Form1->Memo2->Text = "Telefon";
Form1->Memo3->Text = "Guruh";
Form1->Memo4->Text = "Nomer";
for (int i = 0; i < N; i++)
{
Form1->Memo4->Lines->Add(IntToStr(i+1));
Form1->Memo1->Lines->Add(M[i].name);
Form1->Memo2->Lines->Add(IntToStr(M[i].phone));
Form1->Memo3->Lines->Add(M[i].group);
}
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
ShowAll();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(N < 30)
{
M[N].name = Edit1->Text;
M[N].group = Edit2->Text;
M[N].phone = StrToInt(Edit3->Text);
N++;
}
ShowAll();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
int j = StrToInt(Edit4->Text);
for (int i = j; i < N; i++)
{
M[i-1] = M[i];
}
N--;
ShowAll();
}

6. Ko‘rsatkichlar bilan ishlash



Yüklə 1,17 Mb.

Dostları ilə paylaş:
1   ...   20   21   22   23   24   25   26   27   ...   34




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin