IFiZR Laboratorium 5 Info

Wielkość: px
Rozpocząć pokaz od strony:

Download "IFiZR Laboratorium 5 Info"

Transkrypt

1 IFiZR Laboratorium 5 Info File->New->Project->Windows Application (DevC++) Kurs WinAPI: #include <windows.h> #include <iostream> #include <stdlib.h> #include <math.h> Przykład 2 LPSTR NazwaKlasy = "Klasa Okienka"; MSG Komunikat; // definicja nazw kontrolek HWND hprzycisk1, hedit1, hedit2, hedit3, hedit4, hedit5, htekst1, htekst2; // definicja funkcji double CharToDouble(HWND okno); LRESULT CALLBACK Panel( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam ); // WinMain zamiast main int WINAPI WinMain( HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow ) { WNDCLASSEX wc; wc.cbsize = sizeof( WNDCLASSEX ); wc.style = 0; wc.lpfnwndproc = Panel; wc.cbclsextra = 0; wc.cbwndextra = 0; wc.hinstance = hinstance; wc.hicon = LoadIcon( NULL, IDI_APPLICATION ); wc.hcursor = LoadCursor( NULL, IDC_ARROW ); wc.hbrbackground =( HBRUSH )( COLOR_WINDOW+8); // kolor formatki poprzez zmiane liczby wc.lpszmenuname = NULL; wc.lpszclassname = NazwaKlasy; wc.hiconsm = LoadIcon( NULL, IDI_APPLICATION ); // rejestrowanie okna if(!registerclassex( & wc ) ) { MessageBox( NULL, "Blad rejestracji okna!", "Error.", MB_ICONEXCLAMATION MB_OK ); return 1;

2 //tworzenie panelu (okna) HWND hwnd=createwindowex( WS_EX_CLIENTEDGE, NazwaKlasy, "Panel obliczen", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 400, 400, NULL, NULL, hinstance, NULL ); if( hwnd == NULL ) { MessageBox( NULL, "Nie udalo sie utworzyc okna", "Error", MB_ICONEXCLAMATION ); return 1; ShowWindow( hwnd, ncmdshow ); UpdateWindow( hwnd ); // tworzenie kontrolek tj editow, buttonów itp htekst1=createwindowex( 0, "STATIC", "Podaj dane punktów P1(x1,y1) oraz P2 (x2,y2)", WS_CHILD WS_VISIBLE SS_CENTER, 90, 30, 200, 40, hwnd, NULL, hinstance, NULL ); htekst2=createwindowex( 0, "STATIC", "Wynik obliczen", WS_CHILD WS_VISIBLE, 110, 200, 120, 20, hwnd, NULL, hinstance, NULL ); hedit1 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_VISIBLE WS_BORDER, 50, 80, 60, 30, hwnd, NULL, hinstance, NULL ); hedit2 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_VISIBLE WS_BORDER, 110, 80, 60, 30, hwnd, NULL, hinstance, NULL ); hedit3 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_VISIBLE WS_VISIBLE, 200, 80, 60, 30, hwnd, NULL, hinstance, NULL ); hedit4 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_VISIBLE WS_VISIBLE, 260, 80, 60, 30, hwnd, NULL, hinstance, NULL ); hedit5 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_DISABLED WS_VISIBLE, 100, 250, 150, 30, hwnd, NULL, hinstance, NULL ); hprzycisk1 = CreateWindowEx( 0, "BUTTON", " Licz dlugosc odcinka ", WS_CHILD WS_VISIBLE, 90, 150, 180, 30, hwnd, NULL, hinstance, NULL ); // UWAGA! Pętla komunikatów - przechwytyje wszelkie komunikaty while( GetMessage( & Komunikat, NULL, 0, 0 ) ) { TranslateMessage( & Komunikat ); DispatchMessage( & Komunikat ); return Komunikat.wParam; // obsluga zdarzen - czyli co ma wydarzyc sie po uzyciu danej kontrolki - nacisnieciu, wpisaniu, wybraniu itp LRESULT CALLBACK Panel( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { switch( msg ) { // obsługa zdarzenia zamykania okna case WM_CLOSE: DestroyWindow( hwnd ); case WM_DESTROY: PostQuitMessage( 0 );

3 // obsluga zdarzen "nacisniecia" jednego z przycieskow case WM_COMMAND: double liczba1, liczba2, liczba3, liczba4, wynik; char wynikchar[20]; // kontrolki rozroznia sie po nazwie - uchwycie // kiedy zostanie nacisniety jeden z przyciskow if( (HWND)lParam == hprzycisk1 ) { int textlength1 = GetWindowTextLength(hEdit1) + 1; int textlength2 = GetWindowTextLength(hEdit2) + 1; int textlength3 = GetWindowTextLength(hEdit3) + 1; int textlength4 = GetWindowTextLength(hEdit4) + 1; if(textlength1==1 textlength2==1 textlength3==1 textlength4==1) { int odp=messagebox( NULL, "Wpisz dane", "Brak wszystkich danych", MB_OK MB_ICONWARNING); return 0; liczba1=chartodouble(hedit1); liczba2=chartodouble(hedit2); liczba3=chartodouble(hedit3); liczba4=chartodouble(hedit4); wynik=sqrt(pow(liczba3-liczba1, 2) + pow(liczba4-liczba2, 2)); sprintf(wynikchar,"%0.8f",wynik); SetWindowText( hedit5, wynikchar); default: return DefWindowProc( hwnd, msg, wparam, lparam ); return 0; // przykladowa funkcja - konwersja double CharToDouble(HWND okno) { int textlength= GetWindowTextLength(okno) + 1; char *textbuffer = new char[textlength]; GetWindowText(okno, textbuffer, textlength); double liczba=atof(textbuffer); delete []textbuffer; return liczba;

4 #include <windows.h> #include <iostream> #include <stdlib.h> #include "interval.h" Przykład 1 #define ID_RB1 101 #define ID_RB2 102 #define ID_CB1 103 #define ID_P6 104 #define ID_T3 105 LPSTR NazwaKlasy = "Klasa Okienka"; MSG Komunikat; // definicja nazw kontrolek HWND hprzycisk1, hprzycisk2, hprzycisk3, hprzycisk4, hprzycisk5, hprzycisk6, hedit1, hedit2, hedit3, hedit4, hedit5, htekst1, htekst2, htekst3, hrb1, hrb2, hcb1; // deklaracja własnej funkcji double CharToDouble(HWND okno); LRESULT CALLBACK Panel( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam ); // WinMain zamiast main int WINAPI WinMain( HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow ) { WNDCLASSEX wc; wc.cbsize = sizeof( WNDCLASSEX ); wc.style = 0; wc.lpfnwndproc = Panel; wc.cbclsextra = 0; wc.cbwndextra = 0; wc.hinstance = hinstance; wc.hicon = LoadIcon( NULL, IDI_APPLICATION ); wc.hcursor = LoadCursor( NULL, IDC_ARROW ); wc.hbrbackground =( HBRUSH )( COLOR_WINDOW+23); // kolor formatki poprzez zmiane liczby wc.lpszmenuname = NULL; wc.lpszclassname = NazwaKlasy; wc.hiconsm = LoadIcon( NULL, IDI_APPLICATION ); // rejestrowanie okna if(!registerclassex( & wc ) ) { MessageBox( NULL, "Blad rejestracji okna!", "Error.", MB_ICONEXCLAMATION MB_OK ); return 1; //tworzenie panelu (okna) HWND hwnd=createwindowex( WS_EX_CLIENTEDGE, NazwaKlasy, "Panel obliczen", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 800, 450, NULL, NULL, hinstance, NULL ); if( hwnd == NULL ) { MessageBox( NULL, "Nie udalo sie utworzyc okna", "Error", MB_ICONEXCLAMATION ); return 1;

5 ShowWindow( hwnd, ncmdshow ); UpdateWindow( hwnd ); // tworzenie kontrolek tj editow, buttonów itp htekst1=createwindowex( 0, "STATIC", "Podaj dane", WS_CHILD WS_VISIBLE SS_CENTER, 100, 50, 120, 20, hwnd, NULL, hinstance, NULL ); htekst2=createwindowex( 0, "STATIC", "Wynik obliczen", WS_CHILD WS_VISIBLE, 100, 200, 120, 20, hwnd, NULL, hinstance, NULL ); htekst3=createwindowex( 0, "STATIC", "", WS_CHILD WS_VISIBLE, 570, 100, 130, 20, hwnd, (HMENU) ID_T3, hinstance, NULL ); hedit1 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_VISIBLE WS_BORDER, 100, 100, 80, 30, hwnd, NULL, hinstance, NULL ); hedit2 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_VISIBLE WS_BORDER, 200, 100, 80, 30, hwnd, NULL, hinstance, NULL ); hedit3 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_DISABLED WS_VISIBLE, 100, 250, 150, 30, hwnd, NULL, hinstance, NULL ); hedit4 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_DISABLED WS_BORDER, 100, 280, 60, 30, hwnd, NULL, hinstance, NULL ); hedit5 = CreateWindowEx( WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD WS_DISABLED WS_BORDER, 170, 280, 60, 30, hwnd, NULL, hinstance, NULL ); hprzycisk1 = CreateWindowEx( 0, "BUTTON", "+", WS_CHILD WS_VISIBLE, 100, 150, 30, 30, hwnd, NULL, hinstance, NULL ); hprzycisk2 = CreateWindowEx( 0, "BUTTON", "-", WS_CHILD WS_VISIBLE, 140, 150, 30, 30, hwnd, NULL, hinstance, NULL ); hprzycisk3 = CreateWindowEx( 0, "BUTTON", "*", WS_CHILD WS_VISIBLE, 180, 150, 30, 30, hwnd, NULL, hinstance, NULL ); hprzycisk4 = CreateWindowEx( 0, "BUTTON", "/", WS_CHILD WS_VISIBLE, 220, 150, 30, 30, hwnd, NULL, hinstance, NULL ); hprzycisk5 = CreateWindowEx( 0, "BUTTON", "p^2", WS_CHILD WS_VISIBLE, 260, 150, 40, 30, hwnd, NULL, hinstance, NULL ); hprzycisk6 = CreateWindowEx( 0, "BUTTON", "Analizuj", WS_CHILD WS_VISIBLE, 420, 220, 120, 30, hwnd, (HMENU) ID_P6, hinstance, NULL ); hrb1 = CreateWindowEx(WS_EX_CLIENTEDGE, "BUTTON", "Opcja 1", WS_CHILD WS_VISIBLE BS_AUTORADIOBUTTON, 400, 100, 150, 20, hwnd, (HMENU) ID_RB1, hinstance, NULL ); hrb2 = CreateWindowEx(WS_EX_CLIENTEDGE, "BUTTON", "Opcja 2", WS_CHILD WS_VISIBLE BS_AUTORADIOBUTTON, 400, 135, 150, 20, hwnd, (HMENU) ID_RB2, hinstance, NULL ); hcb1 = CreateWindowEx(WS_EX_CLIENTEDGE, "BUTTON", "Checkbox", WS_CHILD WS_VISIBLE BS_AUTOCHECKBOX, 400, 180, 150, 20, hwnd, (HMENU) ID_CB1, hinstance, NULL ); // UWAGA! Pętla komunikatów - przechwytyje wszelkie komunikaty while( GetMessage( & Komunikat, NULL, 0, 0 ) ) { TranslateMessage( & Komunikat ); DispatchMessage( & Komunikat ); return Komunikat.wParam; // obsluga zdarzen - czyli co ma wydarzyc sie po uzyciu danej kontrolki - nacisnieciu, wpisaniu, wybraniu itp LRESULT CALLBACK Panel( HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { switch( msg ) { // obsługa zdarzenia zamykania okna case WM_CLOSE: DestroyWindow( hwnd ); case WM_DESTROY: PostQuitMessage( 0 ); // obsluga zdarzen "nacisniecia" jednego z przycieskow case WM_COMMAND: double liczba1, liczba2, wynik; char *wynikchar;

6 // kontrolki rozroznia sie po nazwie - uchwycie // kiedy zostanie nacisniety jeden z przyciskow if( (HWND)lParam == hprzycisk1 (HWND)lParam == hprzycisk2 (HWND)lParam == hprzycisk3 (HWND)lParam == hprzycisk4 (HWND)lParam == hprzycisk5) { int textlength1 = GetWindowTextLength(hEdit1) + 1; int textlength2 = GetWindowTextLength(hEdit2) + 1; if(textlength1==1 textlength2==1) { int odp=messagebox( NULL, "Wpisz dane", "Brak wszystkich danych", MB_YESNOCANCEL MB_ICONWARNING); if(odp==6) // 1-OK 2-Anuluj(Cancel) 3-Przerwij(Abort) 4-Ponów próbę(retry) 5-Ignoruj(Ignore) 6-Tak(Yes) 7-Nie(No) MessageBox(HWND_DESKTOP,"Nacisnąłeś przycisk TAK","Informacja",MB_OK); return 0; liczba1=chartodouble(hedit1); liczba2=chartodouble(hedit2); wynikchar=new char[textlength1+textlength2+10]; // ukrywanie i odkrywanie Editow 3->wynik + - * / 4 i 5 wynik operacji na przedziale if(( HWND ) lparam == hprzycisk5) { ShowWindow(hEdit4, SW_SHOW); ShowWindow(hEdit5, SW_SHOW); ShowWindow(hEdit3, SW_HIDE); else { ShowWindow(hEdit4, SW_HIDE); ShowWindow(hEdit5, SW_HIDE); ShowWindow(hEdit3, SW_SHOW); //realizacja obliczen if(( HWND ) lparam == hprzycisk1 ) wynik=liczba1+liczba2; if(( HWND ) lparam == hprzycisk2 ) wynik=liczba1-liczba2; if(( HWND ) lparam == hprzycisk3 ) wynik=liczba1*liczba2; if(( HWND ) lparam == hprzycisk4 ) wynik=liczba1/liczba2; // potegowanie przedzialu if(( HWND ) lparam == hprzycisk5 ) { SetWindowText( hedit4, szer_inter(liczba1, liczba2, 1) ); SetWindowText( hedit5, szer_inter(liczba1, liczba2, 2) ); delete []wynikchar; if( (HWND)lParam == hprzycisk1 (HWND)lParam == hprzycisk2 (HWND)lParam == hprzycisk3 (HWND)lParam == hprzycisk4 ) { sprintf(wynikchar,"%0.8f",wynik); SetWindowText( hedit3, wynikchar); delete []wynikchar;

7 // troszke inaczej - uwzgledninie identyfikatorów kontrolek zdefiniowanych poprzez #define if(( HWND ) lparam == hrb1 ( HWND ) lparam == hrb2 ( HWND ) lparam == hcb1 ( HWND ) lparam == hprzycisk6) { switch( wparam ) { case ID_RB1: SetWindowText( htekst3, "Aktywna opcja 1" ); case ID_RB2: SetWindowText( htekst3, "Aktywna opcja 2" ); case ID_CB1: if(isdlgbuttonchecked(hwnd, ID_CB1 ) == BST_CHECKED) { SetWindowText( htekst3, "Zaznaczono CB"); else SetWindowText( htekst3, "Odznaczono CB"); case ID_P6: if(isdlgbuttonchecked(hwnd, ID_RB1 ) == BST_CHECKED) MessageBox( hwnd, "Wybrano opcję 1", "Info", MB_ICONINFORMATION ); if(isdlgbuttonchecked(hwnd, ID_RB2 ) == BST_CHECKED) MessageBox( hwnd, "Wybrano opcję 2", "Info", MB_ICONINFORMATION ); default: MessageBox( hwnd, "Obiekt widmo;)", "Info", MB_ICONINFORMATION); //CheckDlgButton( hwnd, ID_CB1, BST_CHECKED ); //ustaw "fajeczkę" //CheckDlgButton( hwnd, ID_CB1, BST_UNCHECKED ); //usuń "fajeczkę" default: return DefWindowProc( hwnd, msg, wparam, lparam ); return 0;

8 // przykladowa funkcja - konwersja double CharToDouble(HWND okno) { int textlength= GetWindowTextLength(okno) + 1; char *textbuffer = new char[textlength]; GetWindowText(okno, textbuffer, textlength); double liczba=atof(textbuffer); delete []textbuffer; return liczba; ********************** plik nagłówkowy interval.h ******************* #ifndef INTERVAL_H #define INTERVAL_H #include<math.h> using namespace std; class interval { private: double pocz, kon; public: interval() {pocz=0; kon=0; interval(double x, double y) {pocz=x; kon=y; void ustal_pocz(double x) {pocz=x; void ustal_kon(double x) { kon=x; double zwroc_pocz() {return pocz; double zwroc_kon() {return kon; void wyswietl() { cout<<endl<<" ["<<pocz<<","<<kon<<"]"<<endl; ; interval operator+(interval A, interval B) { interval W; W.ustal_pocz(A.zwroc_pocz()+B.zwroc_pocz()); W.ustal_kon(A.zwroc_kon()+B.zwroc_kon()); return W;

9 interval operator*(interval A, interval B) { interval W; double Ap, Ak, Bp, Bk; Ap=A.zwroc_pocz(); Ak=A.zwroc_kon(); Bp=B.zwroc_pocz(); Bk=B.zwroc_kon(); W.ustal_pocz(min(Ap*Bp, min(ap*bk, min(ak*bp, Ak*Bk)))); W.ustal_kon(max(Ap*Bp, max(ap*bk, max(ak*bp, Ak*Bk)))); return W; char* szer_inter(double x, double y, int z) { interval A(x,y); A=A*A; char *W; W=new char[20]; if(z==1) { sprintf(w,"%0.3f",a.zwroc_pocz()); else sprintf(w,"%0.3f",a.zwroc_kon()); return W; delete []W; #endif

Podstawy programowania w języku C dla środowiska Windows

Podstawy programowania w języku C dla środowiska Windows Podstawy programowania w języku C dla środowiska Windows Część pierwsza Windows API wprowadzenie Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera

Bardziej szczegółowo

Projektowanie i programowanie aplikacji biznesowych. Wykład 2

Projektowanie i programowanie aplikacji biznesowych. Wykład 2 Projektowanie i programowanie aplikacji biznesowych Wykład 2 Kontrolki w Windows API Aby korzystać z kontrolek należy dołączyć plik nagłówkowy o nazwie commctrl.h oraz bibliotekę o nazwie libcomctl32.a.

Bardziej szczegółowo

Procedura okna: LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam);

Procedura okna: LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam); 1. Pierwszy program pod Windows 1/8 Procedura okna: LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam); UINT unsigned int DWORD 32-bitowy unsigned int. LPSTR - wskaźnik do

Bardziej szczegółowo

Programowanie w środowisku Windows. mgr inż. Krzysztof Mossakowski k.mossakowski@mini.pw.edu.pl http://www.mini.pw.edu.

Programowanie w środowisku Windows. mgr inż. Krzysztof Mossakowski k.mossakowski@mini.pw.edu.pl http://www.mini.pw.edu. Programowanie w środowisku Windows mgr inż. k.mossakowski@mini.pw.edu.pl Plan wykładu 1. Okna, komunikaty, czas, błędy 2. Typy, struktury, makra, mysz, klawiatura, wersje 3. GDI 4. Zasoby, okna dialogowe,

Bardziej szczegółowo

Podstawy programowania w języku C dla środowiska Windows

Podstawy programowania w języku C dla środowiska Windows Podstawy programowania w języku C dla środowiska Windows Część druga Windows API pierwsze kroki Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera

Bardziej szczegółowo

Podstawowy projekt OpenGL utworzony przy użyciu środowisk programistycznych firmy Microsoft.

Podstawowy projekt OpenGL utworzony przy użyciu środowisk programistycznych firmy Microsoft. Podstawowy projekt OpenGL utworzony przy użyciu środowisk programistycznych firmy Microsoft. Autor: Radosław Płoszajczak Spis treści I. Wymagania i utworzenie projektu w Visual Studio 2005...2 II. Absolutne

Bardziej szczegółowo

Programowanie w środowiskach RAD Język C++ w środowiskach RAD

Programowanie w środowiskach RAD Język C++ w środowiskach RAD Programowanie w środowiskach RAD Język C++ w środowiskach RAD Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Programowanie sterowane zdarzeniami Geneza, koncepcja, rodzaje, przykłady Jeszcze

Bardziej szczegółowo

Wprowadzenie do programowania w Windows

Wprowadzenie do programowania w Windows Wprowadzenie do programowania w Windows Sławomir Samolej Rzeszów, 1999 1. Wstęp Od kilku lat dominującym systemem operacyjnym na rynku komputerów osobistych jest Microsoft Windows. Wersje systemu Windows

Bardziej szczegółowo

Laboratorium Grafiki Komputerowej i Animacji. Ćwiczenie I. Wprowadzenie do programowania w Windows

Laboratorium Grafiki Komputerowej i Animacji. Ćwiczenie I. Wprowadzenie do programowania w Windows Laboratorium Grafiki Komputerowej i Animacji Ćwiczenie I Wprowadzenie do programowania w Windows Sławomir Samolej Rzeszów, 2012 1. Wstęp Od kilku lat dominującym systemem operacyjnym na rynku komputerów

Bardziej szczegółowo

1.1. Programowanie dla Windows. Programowanie dla Windows. Komunikaty w systemie Windows. Application Programming Interface

1.1. Programowanie dla Windows. Programowanie dla Windows. Komunikaty w systemie Windows. Application Programming Interface 1 Katedra Optoelektroniki i Systemów Elektronicznych 2 Oprogramowanie Systemów Elektronicznych Zagadnienia: Temat wykładu 1. 2. Etapy tworzenia okna 3. 4. 5. 6. 3 Application Programming Interface 4 jest

Bardziej szczegółowo

Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowych

Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowych Tworzenie aplikacji dla Windows. Od prostych programów do gier komputerowych Autor: Pawe³ Borkowski ISBN: 978-83-246-1881-1 Format: 158x235, stron: 456 Poznaj tajniki tworzenia aplikacji dla Windows Jak

Bardziej szczegółowo

1. Wstęp. 2. Szablon. 1 WinApi Wstęp i szablon. Czym jest API?

1. Wstęp. 2. Szablon. 1 WinApi Wstęp i szablon. Czym jest API? 1 WinApi Wstęp i szablon 1. Wstęp Czym jest API? API Windows to zestaw funkcji, które pozwalają zbudować praktycznie dowolną aplikację działającą w systemach Windows 95, 98, NT, 2000 oraz CE. Za ich pomocą

Bardziej szczegółowo

I - Microsoft Visual Studio C++

I - Microsoft Visual Studio C++ I - Microsoft Visual Studio C++ 1. Nowy projekt z Menu wybieramy File -> New -> Projekt -> Win32 Console Application w okienku Name: podajemy nazwę projektu w polu Location: wybieramy miejsce zapisu i

Bardziej szczegółowo

PROE wykład 8 Interfejs użytkownika (GUI) dr inż. Jacek Naruniec

PROE wykład 8 Interfejs użytkownika (GUI) dr inż. Jacek Naruniec PROE wykład 8 Interfejs użytkownika (GUI) dr inż. Jacek Naruniec Co to jest GUI? Graphical User Interface (GUI), czyli po prostu interfejs użytkownika (UI). Najpopularniejsze GUI dla C++: Qt WinAPI MFC

Bardziej szczegółowo

Programowanie pod Windows

Programowanie pod Windows Programowanie pod Windows Wersja 0.99 Uwaga: notatki są w fazie rozwoju. Brakujące elementy będą sukcesywnie uzupełniane. Dokument może być bez zgody autora rozpowszechniany, zabrania się jedynie czerpania

Bardziej szczegółowo

Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz

Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz Zagadnienia 1. Delegaty wiązane, właściwości indeksowane 2. Delegaty niewiązane 3. Nowa wersja kalkulatora, delegaty

Bardziej szczegółowo

Programowanie na poziomie sprzętu. Programowanie w Windows API

Programowanie na poziomie sprzętu. Programowanie w Windows API Programowanie w Windows API Windows API Windows Application Programming Interface (API) to zestaw funkcji systemu operacyjnego Windows, które umożliwiają aplikacjom korzystanie z wszystkich usług systemu.

Bardziej szczegółowo

Załącznik do ćwiczenia w środowisku MASM32 wersji 10. Tryb graficzny w systemie Windows

Załącznik do ćwiczenia w środowisku MASM32 wersji 10. Tryb graficzny w systemie Windows Załącznik do ćwiczenia w środowisku MASM32 wersji 10 7.7. Programowanie aplikacji graficznej Tryb graficzny w systemie Windows 7.7.1. Współdziałanie aplikacji graficznej z systemem Windows Aplikacja graficzna

Bardziej szczegółowo

Programowanie w języku C++ z użyciem Windows API

Programowanie w języku C++ z użyciem Windows API Programowanie w języku C++ z użyciem Windows API Autor: Mateusz Ferenc Data opracowania: 30 maja 2012 r. Windows API jest jedną z bibliotek programistycznych przeznaczonych do pisania programów na platformę

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM Laboratorium 3 Instrukcje wyboru 1 INSTRUKCJE WYBORU Instrukcje sterujące to takie instrukcje, które sterują przebiegiem programu w zależności od spełnienia

Bardziej szczegółowo

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość 2. Poprawna definicja wskażnika b to: a) float *a, **b = &a; b) float

Bardziej szczegółowo

Microsoft IT Academy kurs programowania

Microsoft IT Academy kurs programowania Microsoft IT Academy kurs programowania Podstawy języka C# Maciej Hawryluk Język C# Język zarządzany (managed language) Kompilacja do języka pośredniego (Intermediate Language) Kompilacja do kodu maszynowego

Bardziej szczegółowo

Projektowanie klas c.d. Projektowanie klas przykład

Projektowanie klas c.d. Projektowanie klas przykład Projektowanie klas c.d. ogólne wskazówki dotyczące projektowania klas: o wyodrębnienie klasy odpowiedź na potrzeby życia (obsługa rozwiązania konkretnego problemu) o zwykle nie uda się utworzyć idealnej

Bardziej szczegółowo

Obliczenie azymutu ze współrzędnych wersja C++ Builder

Obliczenie azymutu ze współrzędnych wersja C++ Builder Obliczenie azymutu ze współrzędnych wersja C++ Builder Specyfikacja problemu algorytmicznego Problem algorytmiczny: Obliczenie azymutów i długości, gdy dana jest tablica współrzędnych punktów (Nr X Y).

Bardziej szczegółowo

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16

Podstawy języka C++ Maciej Trzebiński. Praktyki studenckie na LHC IFJ PAN. Instytut Fizyki Jądrowej Polskiej Akademii Nauk. M. Trzebiński C++ 1/16 M. Trzebiński C++ 1/16 Podstawy języka C++ Maciej Trzebiński Instytut Fizyki Jądrowej Polskiej Akademii Nauk Praktyki studenckie na LHC IFJ PAN 6lipca2015 Uruchomienie maszyny w CC1 M. Trzebiński C++ 2/16

Bardziej szczegółowo

Do nich też i tylko do nich będzie się w tym rozdziale odnosić sam termin okno.

Do nich też i tylko do nich będzie się w tym rozdziale odnosić sam termin okno. 2 ANATOMIA OKNA Nauczycielem wszystkiego jest praktyka. Juliusz Cezar W systemie Windows składniki interfejsu użytkownika nazywamy oknami. Nadmieniłem w poprzednim rozdziale, iż określeniem tym obdarzamy

Bardziej szczegółowo

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład 02 NAJPROSTSZY PROGRAM /* (Prawie) najprostszy przykład programu w C */ /*==================*/ /* Między tymi znaczkami można pisać, co się

Bardziej szczegółowo

3 Przygotował: mgr inż. Maciej Lasota

3 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 3 1/8 Język C Instrukcja laboratoryjna Temat: Instrukcje warunkowe, pętle. 3 Przygotował: mgr inż. Maciej Lasota 1) Instrukcje warunkowe. Instrukcje warunkowe pozwalają zdefiniować warianty

Bardziej szczegółowo

Rodzina protokołów TCP/IP. Aplikacja: ipconfig.

Rodzina protokołów TCP/IP. Aplikacja: ipconfig. Rodzina protokołów TCP/IP. Aplikacja: ipconfig. dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Specyfikacja struktury FIXED_INFO Nazwa struktury:

Bardziej szczegółowo

Metody Metody, parametry, zwracanie wartości

Metody Metody, parametry, zwracanie wartości Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca

Bardziej szczegółowo

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe Wykład 15 Wprowadzenie do języka na bazie a Literatura Podobieństwa i różnice Literatura B.W.Kernighan, D.M.Ritchie Język ANSI Kompilatory Elementarne różnice Turbo Delphi FP Kylix GNU (gcc) GNU ++ (g++)

Bardziej szczegółowo

Programowanie strukturalne i obiektowe

Programowanie strukturalne i obiektowe Programowanie strukturalne i obiektowe Język C część I Opracował: Grzegorz Flesik Literatura: A. Majczak, Programowanie strukturalne i obiektowe, Helion, Gliwice 2010 P. Domka, M. Łokińska, Programowanie

Bardziej szczegółowo

Wykład 9 2014-06-20 09:37 PP2_W9

Wykład 9 2014-06-20 09:37 PP2_W9 Wykład 9 Przykłady programów z wykorzystaniem klas - przykład funkcji operatorowych - obiektowa implementacja listy jednokierunkowej kopiowanie obiektów - klasa "latający napis" Pozycjonowanie w plikach

Bardziej szczegółowo

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3 Modelowanie numeryczne w fizyce atmosfery Sylwester Arabas (ćwiczenia do wykładu dr. hab. inż. Lecha Łobockiego) Instytut Geofizyki, Wydział Fizyki Uniwersytetu Warszawskiego 3. listopada 2011 r. Schemat

Bardziej szczegółowo

Cechy systemu Windows

Cechy systemu Windows Cechy systemu Windows Wielozadaniowość Współdzielenie zasobów sprzętowych: ekran klawiatura mysz pamięć dysk Wymiana danych pomiędzy aplikacjami Niezależna sprzętowo grafika Zdefiniowany w systemie interfejs

Bardziej szczegółowo

Programowanie obiektowe język C++

Programowanie obiektowe język C++ Programowanie obiektowe język C++ Dr inż. Sławomir Samolej D108A, tel: 865 1486, email: ssamolej@prz-rzeszow.pl WWW: ssamolej.prz-rzeszow.pl Podziękowanie: Chcę podziękować dr inż.. Grzegorzowi Hałdasiowi

Bardziej szczegółowo

Rysowanie punktów na powierzchni graficznej

Rysowanie punktów na powierzchni graficznej Rysowanie punktów na powierzchni graficznej Tworzenie biblioteki rozpoczniemy od podstawowej funkcji graficznej gfxplot() - rysowania pojedynczego punktu na zadanych współrzędnych i o zadanym kolorze RGB.

Bardziej szczegółowo

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij. Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice

Bardziej szczegółowo

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle Pętle while, for, while, instrukcje break, continue, switch 1. Pętle Przykład 1 - Pętla while public class lab4_3 public static void main(string[] args) char ch = 'a'; String s, wynik=""; while ( ch!=

Bardziej szczegółowo

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje. Podstawowe elementy proceduralne w C++ Program i wyjście Zmienne i arytmetyka Wskaźniki i tablice Testy i pętle Funkcje Pierwszy program // Niezbędne zaklęcia przygotowawcze ;-) #include using

Bardziej szczegółowo

1.1. Programowanie w Visual C++ Programowanie w Visual C++ Środowisko programisty Visual C++ Środowisko programisty Visual C++

1.1. Programowanie w Visual C++ Programowanie w Visual C++ Środowisko programisty Visual C++ Środowisko programisty Visual C++ 1 Katedra Optoelektroniki i Systemów Elektronicznych 2 Programowanie w Organizacja i Oprogramowanie Systemów Elektronicznych Temat wykładu Programowanie w 1. Środowisko programisty 5. 6. 3 Środowisko programisty

Bardziej szczegółowo

Wykład 4: Klasy i Metody

Wykład 4: Klasy i Metody Wykład 4: Klasy i Metody Klasa Podstawa języka. Każde pojęcie które chcemy opisać w języku musi być zawarte w definicji klasy. Klasa definiuje nowy typ danych, których wartościami są obiekty: klasa to

Bardziej szczegółowo

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych Laboratorium OiOSE. Programowanie w środowisku MS Visual C++ 1 Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych Organizacja i Oprogramowanie Systemów Elektronicznych Michał Kowalewski

Bardziej szczegółowo

Wykład II. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład II. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład II - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2015 c Copyright 2015 Janusz Słupik Operacje dyskowe - zapis do pliku #include #include

Bardziej szczegółowo

Wstęp do Informatyki

Wstęp do Informatyki Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 11 1 / 52 Pętla for # i n c l u d e

Bardziej szczegółowo

Formaty plików graficznych - wprowadzenie

Formaty plików graficznych - wprowadzenie Formaty plików graficznych - wprowadzenie Obraz graficzny jest dwuwymiarową tablicą pikseli, zwana czasem rastrem. Kolor piksela może być reprezentowany w następujący sposób: Dla obrazów monochromatycznych

Bardziej szczegółowo

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik Wykład VII Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Kompilacja Kompilator C program do tłumaczenia kodu źródłowego na język maszynowy. Preprocesor

Bardziej szczegółowo

ECLIPSE wnioski z dwóch pierwszych laboratoriów

ECLIPSE wnioski z dwóch pierwszych laboratoriów PODSTAWY PROGRAMOWANIA 3-4 WYKŁAD 22-10-2015 ECLIPSE wnioski z dwóch pierwszych laboratoriów Dodanie pliku i konfiguracji startowej (każdy uruchamiany program powinien mieć własna konfigurację startową)

Bardziej szczegółowo

Wykład IX. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład IX. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład IX - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Biblioteka FLTK FLTK - Fast Light Toolkit - biblioteka GUI,

Bardziej szczegółowo

Tworzenie projektu asemblerowego dla środowiska Visual Studio 2008.

Tworzenie projektu asemblerowego dla środowiska Visual Studio 2008. Dwiczenie 5. TEMAT: CEL: Tworzenie projektu asemblerowego dla środowiska Visual Studio 2008. Celem dwiczenia jest poznanie możliwości VS 2008 w zakresie tworzenia i uruchamiania aplikacji z kodem mieszanym

Bardziej szczegółowo

/** Program demonstrujący działanie klasy GregorianCalendar import java.util.*; public class TestKalendarza // zbuduj d i zainicjalizuj z aktualną datą GregorianCalendar d = new GregorianCalendar(); int

Bardziej szczegółowo

1 WSTĘP. Źródło : http://www.winapi.rox.pl/ 1.1 Wymagania i terminologia

1 WSTĘP. Źródło : http://www.winapi.rox.pl/ 1.1 Wymagania i terminologia 1 Źródło : http://www.winapi.rox.pl/ 1 WSTĘP 1.1 Wymagania i terminologia Zakładam, że do tej pory dobrze poznałeś języki C/C++. Potrafisz zrobić całkiem ciekawą aplikację wyświetlaną w środowisku konsolowym.

Bardziej szczegółowo

Podstawy Programowania Obiektowego

Podstawy Programowania Obiektowego Podstawy Programowania Obiektowego Pojęcie struktury i klasy. Konstruktor i destruktor. Spotkanie 08 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Spotkanie 08 Klasy: definicja a deklaracja klasy dane składowe

Bardziej szczegółowo

Platforma.NET. Laboratorium nr 1 Podstawy języka C#

Platforma.NET. Laboratorium nr 1 Podstawy języka C# Platforma.NET Laboratorium nr 1 Podstawy języka C# Ćwiczenie 1 1. Utwórz nowy projekt a. Z menu File wybierz New/Project b. W oknie dialogowym New Project określ następujące właściwości: typu projektu:

Bardziej szczegółowo

Sieciowa komunikacja procesów - XDR i RPC

Sieciowa komunikacja procesów - XDR i RPC *** abc.x Przyklad pliku RPCGEN Obliczanie sumy, roznicy i iloczynu dwoch liczb calkowitych *** ************************************ Wywolanie procedury odleglej dopuszcza tylko jeden argument wywolania

Bardziej szczegółowo

Microsoft Foundation Classes

Microsoft Foundation Classes Microsoft Foundation Classes Piotr Janczyk Co to jest MFC? Jest to podstawowa biblioteka Visual C++, której klasy stanowią szkielet aplikacji dla programów pracujących w systemie Windows. Napisane w języku

Bardziej szczegółowo

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016

Kurs programowania. Wykład 2. Wojciech Macyna. 17 marca 2016 Wykład 2 17 marca 2016 Dziedziczenie Klasy bazowe i potomne Dziedziczenie jest łatwym sposobem rozwijania oprogramowania. Majac klasę bazowa możemy ja uszczegółowić (dodać nowe pola i metody) nie przepisujac

Bardziej szczegółowo

Funkcja (podprogram) void

Funkcja (podprogram) void Funkcje Co to jest funkcja? Budowa funkcji Deklaracja, definicja i wywołanie funkcji Przykłady funkcji definiowanych przez programistę Przekazywanie argumentów do funkcji Tablica jako argument funkcji

Bardziej szczegółowo

PARADYGMATY PROGRAMOWANIA Wykład 3

PARADYGMATY PROGRAMOWANIA Wykład 3 PARADYGMATY PROGRAMOWANIA Wykład 3 Definiowanie operatorów i ich przeciążanie Przykłady zastosowania operatorów: a) operator podstawienia ( = ) obiektów o złożonej strukturze, b) operatory działania na

Bardziej szczegółowo

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,

Bardziej szczegółowo

Zaawansowane środowiska programistyczne 2009/2010

Zaawansowane środowiska programistyczne 2009/2010 Zaawansowane środowiska programistyczne 2009/2010 Sprawy organizacyjne Forma zajęć Zaliczenie Literatura MFC Co to jest MFC? MFC Microsoft Foundation Classes Opakowanie dla WinAPI, zestaw klas C++ umożliwiających

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Język ludzki kod maszynowy

Język ludzki kod maszynowy Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza

Bardziej szczegółowo

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18

Języki i paradygmaty programowania Wykład 2. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/18 Literatura Języki i paradygmaty programowania Wykład 2 1. C. S. Horstman, G. Cornell, core Java 2 Podstawy, Helion 2003

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 2 Marcin Młotkowski 4 marca 2015 Plan wykładu 1 2 3 4 5 Marcin Młotkowski Programowanie obiektowe 2 / 47 Krótki opis C Obiektowy, z kontrolą typów; automatyczne odśmiecanie;

Bardziej szczegółowo

// Funkcja glowna int main() { // zmienne int kont='t'; double x1, y1, x2, y2, x3, y3, a, b, c, p1, p2, p3, pole, ha, hb, hc;

// Funkcja glowna int main() { // zmienne int kont='t'; double x1, y1, x2, y2, x3, y3, a, b, c, p1, p2, p3, pole, ha, hb, hc; // PTxy1.cpp // Obliczenie pola trojkąta ze wspolrzednych punktow // Dolaczenie bibliotek jezyka C #include #include #include #include #include #define clrscr()

Bardziej szczegółowo

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20

Programowanie obiektowe Wykład 1. Dariusz Wardowski. dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 O mnie prowadzący wykład: Dariusz Wardowski pokój: A334 dyżur: środa, godz. 10.00 12.00 e-mail: wardd@math.uni.lodz.pl

Bardziej szczegółowo

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016 Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa

Bardziej szczegółowo

Programowanie telefonów z Windows Phone 7, cz. 4

Programowanie telefonów z Windows Phone 7, cz. 4 Programowanie telefonów z Windows Phone 7, cz. 4 Piotr M. Szczypiński Instytut Elektroniki Politechniki Łódzkiej http://www.eletel.p.lodz.pl/pms/ piotr.szczypinski@p.lodz.pl Budynek B9, II piętro, pokój

Bardziej szczegółowo

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego

Bardziej szczegółowo

Wstęp do Programowania, laboratorium 02

Wstęp do Programowania, laboratorium 02 Wstęp do Programowania, laboratorium 02 Zadanie 1. Napisać program pobierający dwie liczby całkowite i wypisujący na ekran największą z nich. Zadanie 2. Napisać program pobierający trzy liczby całkowite

Bardziej szczegółowo

ALGORYTMY I STRUKTURY DANYCH

ALGORYTMY I STRUKTURY DANYCH Akademia Rolnicza im. Augusta Cieszkowskiego w Poznaniu - Instytut Inżynierii Rolniczej - ALGORYTMY I STRUKTURY DANYCH Prowadzący: dr inż. Radosław J. Kozłowski email: rjk@au.poznan.pl www: http://www.au.poznan.pl/~rjk

Bardziej szczegółowo

PROGRAMOWANIE W SYSTEMIE WINDOWS

PROGRAMOWANIE W SYSTEMIE WINDOWS PROGRAMOWANIE W SYSTEMIE WINDOWS NajwaŜniejsze cechy: Środowisko Windows umoŝliwia pracę wielozadaniową (z wieloma programami aplikacjami jednocześnie). Występuje współdzielenie zasobów komputera oraz

Bardziej szczegółowo

PROGRAMOWANIE w C prolog

PROGRAMOWANIE w C prolog PROGRAMOWANIE w C prolog dr inż. Jarosław Stańczyk Uniwersytet Przyrodniczy we Wrocławiu Wydział Biologii i Hodowli Zwierząt Katedra Genetyki 1 / jaroslaw.stanczyk@up.wroc.pl programowanie w c 17.10.2014

Bardziej szczegółowo

Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )

Jzyk C++ cz 3. Jarosław Gramacki Instytut Informatyki i Elektroniki ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2 ( $%%) )'20 )*0) 1 / ) Jzyk C++ cz 3 Jarosław Gramacki Instytut Informatyki i Elektroniki # $$%%& ' ( $)*)+' *, - ( ' )*'.' '',*/ *, ','*0) 1 / ) %*+ 2'' 2" ( $%%) )'20 )*0) 1 / )!" 2 # $$%%& ' ( $%%/,))3 ( %* 2 / 4 ( ( *' *''*,

Bardziej szczegółowo

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej Podstawy informatyki Informatyka stosowana - studia niestacjonarne Grzegorz Smyk Wydział Inżynierii Metali i Informatyki Przemysłowej Akademia Górniczo Hutnicza im. Stanisława Staszica w Krakowie, rok

Bardziej szczegółowo

Podstawy programowania w środowisku Windows. Oto identyfikatory najczęściej obsługiwanych meldunków (przedrostek WM to skrót od Windows message):

Podstawy programowania w środowisku Windows. Oto identyfikatory najczęściej obsługiwanych meldunków (przedrostek WM to skrót od Windows message): GRAFIKA KOMPUTEROWA Podstawy programowania w środowisku Windows 1. Struktura programu w środowisku MS Windows Program dla Windows powinien mieć przynajmniej jedno okno (chociaż może być ono niewidoczne).

Bardziej szczegółowo

Programowanie 2. Język C++. Wykład 2.

Programowanie 2. Język C++. Wykład 2. 2.1 Definicja, deklaracja, wywołanie funkcji.... 1 2.2 Funkcje inline... 4 2.3 Przekazanie do argumentu funkcji wartości, adresu zmiennej.... 5 2.4 Wskaźniki do funkcji... 8 2.5 Przeładowanie funkcji...

Bardziej szczegółowo

Podstawy programowania w języku C++

Podstawy programowania w języku C++ Podstawy programowania w języku C++ Część trzynasta Tablice struktur, pliki struktur Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Niniejsze opracowanie zawiera skrót treści

Bardziej szczegółowo

Dzisiejszy wykład. Przestrzenie nazw (namespaces) Funkcje o zmiennej liczbie argumentów

Dzisiejszy wykład. Przestrzenie nazw (namespaces) Funkcje o zmiennej liczbie argumentów Dzisiejszy wykład Przestrzenie nazw (namespaces) Funkcje o zmiennej liczbie argumentów 1 Przestrzenie nazw Globalna przestrzeń nazw jest jedna W programach pisanych przez wiele osób, lub korzystających

Bardziej szczegółowo

Programowanie 2. Język C++. Wykład 1.

Programowanie 2. Język C++. Wykład 1. 1.1 Wstęp... 1 1.2 Obiekty stałe... 3 1.3 Obiekty statyczne... 4 1.4 Wskaźniki... 5 1.5 Referencje... 8 1.6 Wskaźniki do wskaźników... 11 1.7 Definiowanie własnych typów danych, polecenie typedef... 17

Bardziej szczegółowo

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,

Bardziej szczegółowo

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,

Bardziej szczegółowo

Pobieranie argumentów wiersza polecenia

Pobieranie argumentów wiersza polecenia Pobieranie argumentów wiersza polecenia 2. Argumenty wiersza polecenia Lista argumentów Lista argumentów zawiera cały wiersz poleceń, łącznie z nazwą programu i wszystkimi dostarczonymi argumentami. Przykłady:

Bardziej szczegółowo

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wykład I. Programowanie II - semestr II Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład I - semestr II Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2015 c Copyright 2015 Janusz Słupik Zaliczenie przedmiotu Do zaliczenia przedmiotu niezbędne jest

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Wstęp do programowania 1

Wstęp do programowania 1 Wstęp do programowania 1 Struktury Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 12 Struktura dla dat - przykład #include struct Date { int y; short m; short

Bardziej szczegółowo

Laboratorium 1. Programowanie II - Kierunek Informatyka. dr inż. Janusz Słupik. Gliwice, 2015. Wydział Matematyki Stosowanej Politechniki Śląskiej

Laboratorium 1. Programowanie II - Kierunek Informatyka. dr inż. Janusz Słupik. Gliwice, 2015. Wydział Matematyki Stosowanej Politechniki Śląskiej Laboratorium 1 - Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2015 c Copyright 2015 Janusz Słupik Punkty Na laboratorium można zdobyć 60 punktów. Ocena ogólna z zajęć:

Bardziej szczegółowo

Wykład 7. Klasy i obiekty

Wykład 7. Klasy i obiekty Wykład 7. Klasy i obiekty 1. Strumieniowe wyjście i wejście 1.1. Operatory strumieniowe W części wykładu, która jest poświęcona programowaniu obiektowemu, zamiast funkcji printf i scanf będziemy stosować

Bardziej szczegółowo

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji?

Zadanie 04 Ktory z ponizszych typow danych w jezyku ANSI C jest typem zmiennoprzecinkowym pojedynczej precyzji? Zadanie 01 W przedstawionym ponizej programie w jezyku ANSI C w miejscu wykropkowanym brakuje jednej linii: #include... int main() { printf("tralalalala"); return 0; } A. B. "iostream" C.

Bardziej szczegółowo

Podstawy programowania obiektowego

Podstawy programowania obiektowego Podstaw programowania obiektowego wkład 5 klas i obiekt namespace ConsoleApplication1 // współrzędne punktu int, ; Jak, korzstając z dotchczasowej wiedz, zdefiniować w programie punkt? = 3; = 2; Może tak?

Bardziej szczegółowo

Wykład 12. Programowanie serwera MS SQL 2005 w C#

Wykład 12. Programowanie serwera MS SQL 2005 w C# Wykład 12 Programowanie serwera MS SQL 2005 w C# Budowa procedur składowanych w C# Budowa funkcji składowanych w C# Wykorzystanie funkcji składowanych w C# po stronie klienta Tworzenie typów definiowanych

Bardziej szczegółowo

Pliki wchodzące w skład projektu Rozmiar formatki, okna. Wyświetlanie okien komunikatów Rzutowanie Konwersja Tworzenie standardowych przycisków

Pliki wchodzące w skład projektu Rozmiar formatki, okna. Wyświetlanie okien komunikatów Rzutowanie Konwersja Tworzenie standardowych przycisków Pliki wchodzące w skład projektu Rozmiar formatki, okna. Wyświetlanie okien komunikatów Rzutowanie Konwersja Tworzenie standardowych przycisków Pliki wchodzące w skład projektu. Elementy projektu: plik

Bardziej szczegółowo

Języki i paradygmaty programowania

Języki i paradygmaty programowania Języki i paradygmaty programowania WYDZIAŁ ELEKTRONIKI i INFORMATYKI dr inż. Robert Arsoba Politechnika Koszalińska Wydział Elektroniki i Informatyki POLITECHNIKA KOSZALIŃSKA 2009/2010 Materiały do wykładu

Bardziej szczegółowo

Program 14. #include #include using namespace std;

Program 14. #include <iostream> #include <ctime> using namespace std; Program 14 Napisać: * funkcję słuŝącą do losowego wypełniania tablicy liczbami całkowitymi z podanego zakresu (*). Parametrami funkcji mają być tablica, jej długość oraz dwie liczby stanowiące krańce przedziału

Bardziej szczegółowo

Programowanie obiektowe i zdarzeniowe

Programowanie obiektowe i zdarzeniowe Programowanie obiektowe i zdarzeniowe wkład 2 klas i obiekt namespace ConsoleApplication1 // współrzędne punktu int, ; Jak zdefiniować w programie punkt? = 3; = 2; Może tak? // wpisanie informacji Console.WriteLine("

Bardziej szczegółowo

Polimorfizm, metody wirtualne i klasy abstrakcyjne

Polimorfizm, metody wirtualne i klasy abstrakcyjne Programowanie obiektowe Polimorfizm, metody wirtualne i klasy abstrakcyjne Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Polimorfizm,

Bardziej szczegółowo

Tworzenie i obsługa graficznego interfejsu uŝytkownika

Tworzenie i obsługa graficznego interfejsu uŝytkownika Tworzenie i obsługa graficznego interfejsu uŝytkownika Programowanie w środowisku rozproszonym. Wykład 3. Aplety aplikacje uruchamiane w środowisku przeglądarki - przykład import java.applet.applet; import

Bardziej szczegółowo

Spis tre Wst p... 2 Do czego słu zasoby... 2 Tworzenie zasobów... 4 Pisanie skryptu zasobów... 4 Korzystanie z zasobów w programach...

Spis tre Wst p... 2 Do czego słu zasoby... 2 Tworzenie zasobów... 4 Pisanie skryptu zasobów... 4 Korzystanie z zasobów w programach... Spis treści Wstęp... 2 Do czego słuŝą zasoby... 2 Tworzenie zasobów... 4 Pisanie skryptu zasobów... 4 Zasoby wczytywane z plików... 4 Menu... 5 Tablice łańcuchów... 9 Zasoby własne... 9 Preprocesor i skrypty

Bardziej szczegółowo