• Amaliy topshiriqlar
  • amaliy mashg’ulot : Oyna bilan bog’liq hodisalar




    Download 15,08 Mb.
    bet87/135
    Sana22.05.2024
    Hajmi15,08 Mb.
    #250347
    1   ...   83   84   85   86   87   88   89   90   ...   135
    Bog'liq
    Fizik jarayonlarni kompyuterda modellashtirish

    8 amaliy mashg’ulot : Oyna bilan bog’liq hodisalar.
    Amaliy mashg’ulotning texnik ta’minoti: video proyektor, kompyuter Pentium 4, Visal Studio Express muhiti.
    Amaliy mashg’ulotning maqsadi: Microsoft Visual Studio Express muhitida oynalar bilan bog’liq hodisalar.
    Amaliy mashg’ulotning nazariy bayoni: nazariy qismini konspekt qiling.
    Takrorlash operatorlarining bajarilishida shunday holatlar yuzaga kelishi mumkinki, unda qaysidir qadamda, takrorlashni yakuniga yetkazmasdan takrorlashdan chiqish zarurati bo‘lishi mumkin. Boshqacha aytganda takrorlashni «uzish» kerak bo‘lishi mumkin. Bunda break operatoridan foydalaniladi. Break operatorini takrorlash operatori tanasining ixtiyoriy (zarur) joylariga qo‘yish orqali shu joylardan takrorlashdan chiqishni amalga oshirish mumkin.

    int I;
    int Summa=0;
    for (int i=10; i<=12; i++)
    {
    Summa+=i;break;

    }
    cout<


    Ekranda qanday natija chiqadi?




    Amaliy topshiriqlar:
    1.Mana bu dasturni o’rganing,har bir qatorida niam bajarilishini talqin qiling.:
    int WINAPI WinMain(
    HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nShowCmd
    );
    2. Windows- dasturi uchun zarur sarlavha faylni yo’qamiz
    #include
    // oyna funktsiyasini e’lon qilish (oyna protsedurasinin)
    LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);

    HINSTANCE hInst; // ilova identifikatori


    // belgilarning o’zgarmas satriga ko’rsatkich – oynan dasturi va klassining nomi
    LPCSTR AppName = "MyProgramm";
    // dasturga kirish nuqtasi - WinMain funktsiya
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
    {
    HWND hWnd; // (handle)oynasining unikal identifikatori
    MSG msg; // ma’lumotlar bilan ishlash uchun MSG turidagi strukturani e’lon qilish
    hInst = hInstance; // ilova indifikatorinin saqlaymiz
    // WNDCLASS strukturani to’ldirmaiz
    WNDCLASS wc;
    // Struktura uchun ajratilgan hotirani initsalizatsiya qilamiz
    ZeroMemory(&wc, sizeof(wc));
    wc.style = CS_HREDRAW | CS_VREDRAW;
    wc.lpfnWndProc = (WNDPROC)WndProc;
    wc.hInstance = hInst;
    wc.hIcon = LoadIcon(hInst, IDI_APPLICATION);
    wc.hCursor = LoadCursor(NULL, IDC_ARROW);
    wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
    wc.lpszClassName = AppName;
    RegisterClass(&wc); // oyna sinfini yaratmiz va registratsiya qilamiz
    // Dasturning oynasini tuzamiz
    hWnd = CreateWindow(
    AppName, // Oyna klassi nomi
    AppName, // Oyna nomi
    WS_OVERLAPPEDWINDOW, // Oyna stillari
    CW_USEDEFAULT, 0, // oynaning gorizontal va vertical pozitsiyasi
    300, 300, // oynaning kengligi va balandligi
    NULL, //Ona oynasining hendli
    NULL, // Hendl menyu
    hInst, // Ilova identifikatori
    NULL); // oynaning qushimcha berilganlari
    ShowWindow(hWnd, SW_SHOW); // Отображаем окно
    UpdateWindow(hWnd); // Перерисовываем окно
    // Ma’lumotlarni ishlab chiqishni standart tsikli
    while(GetMessage(&msg, NULL, 0, 0))
    {
    TranslateMessage(&msg);
    DispatchMessage(&msg);
    }

    return msg.wParam;


    }
    // Oyna protsedurasi
    LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
    {
    switch(msg)
    {
    case WM_DESTROY:
    PostQuitMessage(0);
    break;

    default:
    return DefWindowProc(hWnd, msg, wParam, lParam);


    }

    return 0;


    }


    Download 15,08 Mb.
    1   ...   83   84   85   86   87   88   89   90   ...   135




    Download 15,08 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    amaliy mashg’ulot : Oyna bilan bog’liq hodisalar

    Download 15,08 Mb.