O’zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti qarshi filiali kompyuter injiniringi fakulteti


Download 24.87 Kb.
Sana03.11.2023
Hajmi24.87 Kb.
#1744286
Bog'liq
4-AMALIY DASTURLASH


O’ZBEKISTON RESPUBLIKASI
AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI
RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
QARSHI FILIALI


KOMPYUTER INJINIRINGI FAKULTETI
(5330600) DASTURIY INJINIRING YO’NALISHI
I-BOSQICH AX-11-22 GURUH TALABASI
ESANOV ASLIDDINNING
DASTURLASH
FANIDAN TAYYORLAGAN
4-AMALIY ISH

Bajardi: ESANOV ASLIDDIN

Qabul qildi: LAZIZ XUDOYORIVICH


QARSHI-2023
7 VARIANT

1- formada a[N][M] massiv elementlarini [N; M] oraliqdagi tasodifiy sonlar


bilan to‘ldiring. N va M ni TextBox komponetasi yordamida kiriting. Elementini qiymati 200 dan kattalari sonini 2- formaning label komponentasida chiqaring va ularning o‘rta arifmetigini 3- formaning label
komponentasida chiqaring.
Visual C++ muhitining komponentalari: CheskBox, ChekedListBox, ComboBox komponetalarining xossalari (Properties) va hodisalari(Events) foydalanib quyidagi namuna asosida o‘z variantingizdagi masalalarni dasturini tuzing

Sizga yordam berishdan mamnunman. Sizning so'rovingizga asoslangan C++ dasturini quyidagi ko'rinishda taqdim etaman:

#include
#include
#include
#include
#include
#include
#include
#include
#include

using namespace System;


using namespace System::Windows::Forms;

// Massivni tasodifiy sonlar bilan to'ldiruvchi funksiya


void FillArray(array^ arr)
{
Random^ rand = gcnew Random();

for (int i = 0; i < arr->GetLength(0); i++)


{
for (int j = 0; j < arr->GetLength(1); j++)
{
arr[i, j] = rand->Next(201, 1000); // 200 dan kattalari sonlar
}
}
}

// Massivning elementlarini chiqaruvchi funksiya


void PrintArray(array^ arr, Label^ label)
{
int sum = 0;
int count = 0;

for (int i = 0; i < arr->GetLength(0); i++)


{
for (int j = 0; j < arr->GetLength(1); j++)
{
sum += arr[i, j];
count++;
label->Text += arr[i, j].ToString() + ", ";
}
}

// Massivning o'rta arifmetigi


double average = static_cast(sum) / count;

label->Text = label->Text->TrimEnd(',', ' ');


label->Text += "\n\nO'rta arifmetik: " + average.ToString();
}

[STAThread]


void Main(array^ args)
{
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);

// Forma
Form^ form = gcnew Form();


form->Text = "Massiv elementlarini to'ldirish va o'rta arifmetigini chiqarish";

// TextBoxlar


TextBox^ textBoxN = gcnew TextBox();
textBoxN->Location = Point(10, 10);
textBoxN->Width = 100;
form->Controls->Add(textBoxN);

TextBox^ textBoxM = gcnew TextBox();


textBoxM->Location = Point(120, 10);
textBoxM->Width = 100;
form->Controls->Add(textBoxM);

// Label
Label^ label = gcnew Label();


label->Location = Point(10, 40);
label->Width = 300;
label->Height = 200;
label->BorderStyle = BorderStyle::FixedSingle;
form->Controls->Add(label);

// Button


Button^ button = gcnew Button();
button->Text = "Tasodifiy sonlar bilan to'ldirish";
button->Location = Point(10, 250);
button->Click += gcnew EventHandler([=](Object^ sender, EventArgs^ e) {
int n = Convert::ToInt32(textBoxN->Text);
int m = Convert::ToInt32(textBoxM->Text);

array^ arr = gcnew array(n, m);



FillArray(arr);
PrintArray(arr, label);
});
form->Controls->Add(button);
// Formani ochish
Application::Run(form);
}

Ushbu kodni Visual Studio yoki boshqa C++ dasturlash muhitida ishga tushiring va dasturni bajarish uchun "Start" tugmasini bosing. Dastur ishga tushganda, sizdan "N" va "M" qiymatlarini kiritish uchun TextBoxlar paydo bo'ladi. "Tasodifiy sonlar bilan to'ldirish" tugmasini bosish orqali massivni to'ldirish va chiqarish mumkin. Chiqarish natijalari Label komponentasida ko'rsatiladi.

Download 24.87 Kb.

Do'stlaringiz bilan baham:




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