Biblioteki graficzne MPI - MPE
|
|
- Alina Markowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 Biblioteki graficzne MPI - MPE Michał Sajkowski Mirosław Kupczyk
2 literatura [Chan1998] A. Chan, W. Gropp, E. Lusk, User s Guide formpe: Extensions to MPI Programs, ANL Web pages for MPI and MPE: [Chan2005] A. Chan, D. Ashton, R. Lusk, W. Gropp, Jumpshot-4 Users Guide, ANL, May
3 literatura [Gropp1999] W. Gropp, E. Lusk, A. Skjellum, Using MPI. Portable Parallel Programming with the Message Passing Interface, 2nd edition, The MIT Press 1999 [PerfVis] Performance Visualization for Parallel Programs, 3
4 literatura [Meglicki2004] Z. Meglicki, High Performance Data Management and Processing, I590, Section 7462, Indiana University, April 2004, 407 pages. 4
5 co to jest MPE? MPE (Multi-Processing Environment) jest to pakiet zapewniajcy programicie kompletny zestaw narzdzi analizy wydajnoci programów MPI pakiet ten zawiera: biblioteki profilujce programy uytkowe narzdzia wizualizacji 5
6 biblioteki profilujce zawieraj programy do tworzenia plików dziennika (logi) pliki te mona tworzy na trzy sposoby: rcznie za pomoc wywoła MPE w programie MPI automatycznie przez linkowanie bibliotek MPE łcznie oboma sposobami 6
7 biblioteki profilujce MPE oferuje obecnie trzy biblioteki profilujce: bibliotekladów (Tracing Library) bibliotek animacji (Animation Library) bibliotek dzienników (Logging Library) 7
8 biblioteka ladów ledzi wszystkie wywołania MPI kade wywołanie MPI jest poprzedzone lini zawierajc numer procesu w MPI_COMM_WORLD procesu wywołujcego, po której jest linia wskazujca e wywołanie si zakoczyło wiele programów nadawania i obioru wskazuje warto licznika, etykiety i partnera (dest/source) wyjcie jest kierowane na wyjcie standardowe 8
9 biblioteka animacji prosty program animacji w czasie rzeczywistym wymaga X-window 9
10 biblioteka dzienników najczciej wykorzystywana biblioteka w MPE tworzy podstawy dla generowania dzienników z programów MPI formaty plików dziennika: CLOG, ALOG i SLOG 10
11 formaty plików dziennika CLOG format domylny, zbiór zdarze etykietowanych czasem ALOG dla kompatybilnoci wstecznej SLOG Scalable LOG, najmocniejszy, przekształcany z CLOG (preferowane), albo generowany przy wykonywaniu programu MPI (zmienna MPE_LOG_FORMAT ustawiona na SLOG) 11
12 programy uytkowe konwertery formatu dziennika (clog2slog) programy wydruku dziennika (slog_print) 12
13 narzdzia wizualizacji programy do wywietlania dziennika (upshot dla ALOG, jumpshot-2 dla CLOG i jumpshot-3 dla SLOG) 13
14 mechanizmy tworzenia dziennika dziennik zdarze: kady element dziennika ma tylko etykiet czasow dziennik stanów: kady element dziennika zawiera etykiet czasow zdarzenia pocztkowego i zdarzenia kocowego dziennik graficzny: element dziennika to w pełni graficzny obiekt 14
15 formaty plików dziennika dziennik zdarze: ALOG, BLOG, CLOG dziennik stanów: SLOG-1 dziennik graficzny: SLOG-2 15
16 ALOG przykład: plik ASCII zdarze i stanów [Meglicki2004]: cyan:boxes BCAST purple:2x2 REDUCE 16
17 SLOG-2 przykład [Meglicki2004]: Number of Drawables = 16 Number of Unmatched Events = 0 Total ByteSize of the logfile = 3688 timeelapsed between 1 & 2 = 873 msec timeelapsed between 2 & 3 = 50 msec 17
18 cele biblioteki MPE analiza i wizualizacja programu MPI wizualizacja danych obsługiwanych przez program MPI 18
19 wyposaenie programu MPI w mechanizmy MPE omówimy teraz, korzystajc z analizy przedstawionej w [Meglicki2004], sposób wyposaenia programu MPI w mechanizmy MPE 19
20 wyposaenie programu MPI w mechanizmy MPE jak wyposay program jak czyta dziennik wykorzystywane narzdzia wizualizacji przykład zaczerpnity z [Meglicki2004] 20
21 wyposaenie programu MPI w mechanizmy MPE MPE zapewnia zaawansowane narzdzia do zapisu zdarze i stanów programu do dziennika dzienniki s tworzone na bieco i zapisywane w pamici, aby zminimalizowa wpływ zapisu na działanie programu po zakoczeniu programu zapisywany jest plik dziennika 21
22 wyposaenie programu MPI w mechanizmy MPE zapisowi do dziennika towarzysz dokładne etykiety czasowe pozwala to okreli i rozwiza problemy z synchronizacj, komunikacj oraz zapewni optymalizacj tych działa moemy w ten sposób wpływa na wykonanie programu 22
23 wyposaenie programu MPI w mechanizmy MPE tworzenie dziennika z etykietami czasowymi, zwane tworzeniem dziennika MPE, jest realizowane domylnie obowizuje zasada, e wszystko, co zdarzy si w programie, jest zapisywane w dzienniku dziennik mona potem dostosowa do potrzeb 23
24 wyposaenie programu MPI w mechanizmy MPE aby uruchomi tworzenie dziennika MPE, przy kompilacji programu naley dolinkowa bibliotek lmpe: jeeli programem kompilowanym jest program MPI wyliczania liczby π, o nazwie cpi, mamy: mpicc c cpi cpi.c llmpe -lmpe 24
25 wyposaenie programu MPI w mechanizmy MPE wtedy po wykonywaniu programu cpi: mpiexec n 8 cpi w treci wyniku działania programu pojawi si dwie linie: Writing logfile. Finished writing logfile. a w katalogu plik dziennika cpi.clog 25
26 wyposaenie programu MPI w mechanizmy MPE mona przekształci plik dziennika clog w plik slog2, poleceniem: clogt0slog2 cpi.clog i otrzyma bardziej czytelny plik cpi.slog2 a nastpnie uruchomi program jumpshot na pliku slog2 26
27 wyposaenie programu MPI w mechanizmy MPE jumpshot jest stosunkowo duym programem w jzyku Java, który czyta plik slog2 i wywietla zdarzenia i stany programu w postaci wielu długich, poziomych termometrów, gdzie kady termometr odpowiada jednemu procesowi 27
28 wyposaenie programu MPI w mechanizmy MPE przesyłanie komunikatów jest oznaczane za pomoc strzałek, łczcych róne termometry w ten sposób łatwo zobaczy, kiedy komunikat został nadany, a kiedy odebrany rónym stanom procesu odpowiadaj róne kolory termometru 28
29 wyposaenie programu MPI w mechanizmy MPE przykład z jumpshot-4 [Chan2005]: 29
30 wyposaenie programu MPI w mechanizmy MPE obliczanie moe by oznaczone kolorem czerwonym, czekanie na dane kolorem czarnym, itp. okno wywietlajce termometry nazywa si Timeline Window duy program moe dawa nieczytelny rysunek, który mona oglda za pomoc opcji szkła powikszajcego 30
31 wyposaenie programu MPI w mechanizmy MPE w celu dopasowania zapisu dziennika, naley program MPI jawnie wyposay w odpowiednie mechanizmy zacytujemy przykład wyposaenia programu MPI w mechanizmy MPE, podany w [Meglicki2004], analizujcy znany program cpi.c, znajdujcy si w dokumentacji MPICH2 31
32 wyposaenie programu MPI w mechanizmy MPE #include <mpi.h> #include <mpe.h> #include <math.h> #include <stdio.h> double f( double ); double f(double a) { return (4.0 / (1.0 + a*a)); } 32
33 wyposaenie programu MPI w mechanizmy MPE int main( int argc, char *argv[]) { int n, myid, numprocs, i, j; double PI25DT = double mypi, pi, h, sum, x; double startwtime = 0.0, endwtime; int namelen; int event1a, event 1b, event2a, event2b, event3a, event3b, event4a, event4b; char processor_name[mpi_max_processor_name]; MPI_Init(&argc, &argv); 33
34 wyposaenie programu MPI w mechanizmy MPE MPI_Comm_size(MPI_COMM_WORLD, &numprocs); MPI_Comm_Size(MPI_COMM_WORLD, &myid); MPI_Get_processor_name(processor_name, &namelen); printf(stderr,"process %d running on%s\n", myid, processor_name); MPE_Init_log(); 34
35 wyposaenie programu MPI w mechanizmy MPE /* we event ID z MPE, uytkownik nie powinien przydziela event ID */ event1a = MPE_Log_get_event_number(); event1b = MPE_Log_get_event_number(); event2a = MPE_Log_get_event_number(); event2b = MPE_Log_get_event_number(); event3a = MPE_Log_get_event_number(); event3b = MPE_Log_get_event_number(); event4a = MPE_Log_get_event_number(); event4b = MPE_Log_get_event_number(); 35
36 wyposaenie programu MPI w mechanizmy MPE if (myid == 0) { MPE_Describe_state(event1a, event1b, "Broadcast", "red"); MPE_Describe_state(event2a, event2b, "Compute", "blue"); MPE_Describe_state(event3a, event3b, "Reduce", "green"); MPE_Describe_state(event4a, event4b, "Sync", "orange"); } if (myid == 0) { n = ; startwtime = MPI_Wtime(); } 36
37 wyposaenie programu MPI w mechanizmy MPE MPI_Barrier(MPI_COMM_WORLD); MPE_Start_log(); for (j = 0; j < 5; j++) { MPE_Log_event(event1a, 0, "start broadcast"); MPI_Bcast(&n, 1, MPI_INT, 0, MPI_COMM_WORLD); MPE_Log_event(event1b, 0, "end broadcast"); 37
38 wyposaenie programu MPI w mechanizmy MPE MPE_Log_event(event4a, 0, "Start Sync"); MPI_Barrier(MPI_COMM_WORLD); MPE_Log_event(event4b, 0, "End Sync"); MPE_Log_event(event2a, 0, "start compute"); h = 1.0 / (double) n; sum = 0.0; for (i = myid + 1; i <=n; i += numprocs) { x = h * ((double)i 0.5); sum += f(x); } 38
39 wyposaenie programu MPI w mechanizmy MPE mypi = h * sum; MPE_Log_event(event2b, 0, "end compute"); MPE_Log_event(event3a, 0, "start reduce"); MPI_Reduce(&mypi, &pi,1, MPI_DOUBLE, MPI_SUM, 0, MPI_COMM_WORLD); MPE_Log_event(event3b, 0, "end reduce"); } MPE_Finish_log("cpilog "); if (myid == 0) { 39
40 wyposaenie programu MPI w mechanizmy MPE if (myid == 0) { endwtime = MPI_Wtime(); printf("pi is approximately %.16f, Error is %.16f\n", pi, fabs(pi PI25DT)); printf("wall clock time = %f\n", endwtime-startwtime); } } MPI_Finalize(); return(0); 40
41 wyposaenie programu MPI w mechanizmy MPE program ten mona zlinkowa z bibliotek lmpe nastpujco: mpicc o cpilog cpilog.c lmpe po uruchomieniu, generuje si plik cpilog.clog, który nastpnie jest przetwarzany za pomoc clogt0slog2 i ogldany programem jumpshot 41
42 wyposaenie programu MPI w mechanizmy MPE przyjrzyjmy si bliej programowi wyposaonemu w mechanizmy MPE wywołanie funkcji MPE_Init_log() inicjuje podsystem tworzenia dziennika ta funkcja jest wywołana jawnie, kiedy program jest zlinkowany z bibliotek -lmpe 42
43 wyposaenie programu MPI w mechanizmy MPE zalet jawnego zapisu dziennika jest moliwo wyboru, co si zapisuje przy linkowaniu programu z bibliotekami llmpe lmpe, funkcja ta jest wywołana przez bibliotek llmpe zaraz na pocztku programu, w sposób niejawny wtedy wszystko jest zapisywane w dzienniku 43
44 wyposaenie programu MPI w mechanizmy MPE po inicjacji zapisu dziennika, definiuje si zdarzenia, przydzielajc dynamicznie generowane liczby całkowite zdarzeniom: event1a = MPE_Log_get_event_number(); event1b = MPE_Log_get_event_number(); event2a = MPE_Log_get_event_number(); event2b = MPE_Log_get_event_number(); event3a = MPE_Log_get_event_number(); event3b = MPE_Log_get_event_number(); event4a = MPE_Log_get_event_number(); event4b = MPE_Log_get_event_number(); 44
45 wyposaenie programu MPI w mechanizmy MPE nastpnie definiuje si stany wywołujc funkcje MPE_Describe_state: if (myid == 0) { MPE_Describe_state(event1a, event1b, "Broadcast", "red"); MPE_Describe_state(event2a, event2b, "Compute", "blue"); MPE_Describe_state(event3a, event3b, "Reduce", "green"); MPE_Describe_state(event4a, event4b, "Sync", "orange"); } 45
46 wyposaenie programu MPI w mechanizmy MPE definicje nie podaj jeszcze czym s te zdarzenia, ale teraz programista musi podj decyzj zdarzenia event1a i event1b to pocztek i koniec rozgłaszania (broadcast) kiedy dziennik jest analizowany przez program jumpshot, czas trwania rozgłaszania jest oznaczony czerwonym paskiem 46
47 wyposaenie programu MPI w mechanizmy MPE podobnie, obliczenie moe by oznaczone na niebiesko, MPI_Reduce na zielono, a czas trwania MPI_Barrier na pomaraczowo std działania oznaczone na niebiesko maj tu znaczenie pozytywne, a innym kolorem negatywne 47
48 wyposaenie programu MPI w mechanizmy MPE definicja stanu jest okrelana dla jednego procesu, pozostałe j akceptuj sam zapis dziennika rozpoczyna si wywołaniem funkcji MPE_Start_log() wtedy podajemy, co oznacza dane zdarzenie, poczynajc od zdarzenia event1a do zdarzenia event4b 48
49 wyposaenie programu MPI w mechanizmy MPE funkcja MPE_Log_event zapisuje zdarzenie event1a, oznaczajce start broadcast, tu przed wywołaniem MPI_Bcast : MPE_Log_event(event1a, 0, "start broadcast"); MPI_Bcast(&n, 1, MPI_INT, 0, MPI_COMM_WORLD); MPE_Log_event(event1b, 0, "end broadcast"); i zdarzenie event1b, oznaczajce end broadcast tu po zakoczeniu MPI_Bcast jumpshot pokazuje ten czas na czerwono 49
50 wyposaenie programu MPI w mechanizmy MPE podobnie moemy zakreli wywołanie funkcji MPI_Barrier zdarzeniami event4a i event4b : MPE_Log_event(event4a, 0, "Start Sync"); MPI_Barrier(MPI_COMM_WORLD); MPE_Log_event(event4b, 0, "End Sync"); 50
51 wyposaenie programu MPI w mechanizmy MPE równie moemy oznaczy całe obliczanie zdarzeniami event2a i event2b : MPE_Log_event(event2a, 0, "start compute"); h = 1.0 / (double) n; sum = 0.0; for (i = myid + 1; i <=n; i += numprocs) { x = h * ((double)i 0.5); sum += f(x); } mypi = h * sum; MPE_Log_event(event2b, 0, "end compute"); 51
52 wyposaenie programu MPI w mechanizmy MPE i na koniec zaznaczamy wywołanie MPI_Reduce zdarzeniami event3a i event3b : MPE_Log_event(event3a, 0, "start reduce"); MPI_Reduce(&mypi, &pi,1, MPI_DOUBLE, MPI_SUM, 0, MPI_COMM_WORLD); MPE_Log_event(event3b, 0, "end reduce"); 52
53 wyposaenie programu MPI w mechanizmy MPE wywołanie funkcji MPE_Finish_log("cpilog "); zamyka dziennik i zapisuje go do pliku cpilog.clog to wywołanie jest wydane jawnie, kiedy stosuje si linkowanie jedynie z bibliotek lmpe kiedy jest linkowanie z bibliotekami llmpe i lmpe, wtedy plik jest generowany automatycznie 53
54 wyposaenie programu MPI w mechanizmy MPE poniewa programista moe si pomyli, wtedy lepiej stosowa automatyczny zapis do dziennika 54
55 grafika MPE stworzono j dla równoległego wywietlania danych z wielu procesów w jednym oknie X zawiera programy rysujce i dwa programy odczytujce pozycj myszki oraz prostokt zakrelany myszk pokaemy przykład grafiki MPE z wykorzystaniem programu cxgraphics.c z ksiki [Meglitski2004] 55
56 grafika MPE oto kod programu cxgraphics.c : #include <stdio.h> #include <stdlib.h> #include "mpe.h" #include "mpe_graphics.h" int main( int argc, char** argv ) { MPE_XGraph graph; int ierr, mp_size, my_rank; MPE_Color my_color; char ckey; 56
57 grafika MPE MPI_Init( &argc, &argv ); MPI_Comm_size( MPI_COMM_WORLD, &mp_size ); MPI_Comm_rank( MPI_COMM_WORLD, &my_rank ); ierr = MPE_Open_graphics( &graph, MPI_COMM_WORLD, NULL, if ( ierr!= MPE_SUCCESS ) { } -1, -1, 400, 400, 0 ); fprintf( stderr, "%d : MPE_Open_graphics() fails\n", my_rank ); ierr = MPI_Abort( MPI_COMM_WORLD, 1 ); 57
58 grafika MPE my_color = (MPE_Color) (my_rank + 1); if ( my_rank == 0 ) ierr = MPE_Draw_string( graph, 187, 205, MPE_BLUE, "Hello" ); ierr = MPE_Draw_circle( graph, 200, 200, 20+my_rank*5, my_color ); ierr = MPE_Update( graph ); if ( my_rank == 0 ) { fprintf( stdout, "Hit any key then return to continue " ); fscanf( stdin, "%s", &ckey ); fprintf( stdout, "\n" ); } 58
59 grafika MPE MPI_Barrier( MPI_COMM_WORLD ); ierr = MPE_Close_graphics( &graph ); MPI_Finalize(); } return 0; 59
60 grafika MPE program ten linkuje i kompiluje si poleceniem: mpicc -o cxgraphics cxgraphics.c -lmpe -L/usr/X11R6/lib -lx11 lm nastpnie mona go uruchomi poleceniem: mpiexec n 16 cxgraphics program ten rysuje proste figury geometryczne i wywietla napisy w kolorze 60
61 grafika MPE wyjanijmy wpierw procedury graficzne w programie: po inicjacji MPI: MPI_Init( &argc, &argv ); MPI_Comm_size( MPI_COMM_WORLD, &mp_size ); MPI_Comm_rank( MPI_COMM_WORLD, &my_rank ); program otwiera okno X11: ierr = MPE_Open_graphics( &graph, MPI_COMM_WORLD, NULL, -1, -1, 400, 400, 0 ); 61
62 grafika MPE ierr = MPE_Open_graphics( &graph, MPI_COMM_WORLD, NULL, -1, -1, 400, 400, 0 ); &graph to wskanik do zmiennej MPE_Xgraph, po otwarciu okna, procedury rysujce odnosz si do rysunku graph komunikator nazwa ekranu, moe bynull rozmiar okna 400pixels x 400pixels 0, to tryb niekolektywny funkcji 62
63 grafika MPE poniewa jest to tryb niekolektywny, wiele procesów zwraca róne odpowiedzi testuje si jak inne błdy były obsługiwane fragmentem programu: if ( ierr!= MPE_SUCCESS ) { } fprintf( stderr, "%d : MPE_Open_graphics() fails\n", my_rank ); ierr = MPI_Abort( MPI_COMM_WORLD, 1 ); 63
64 grafika MPE if ( ierr!= MPE_SUCCESS ) { } fprintf( stderr, "%d : MPE_Open_graphics() fails\n", my_rank ); ierr = MPI_Abort( MPI_COMM_WORLD, 1 ); proces, któremu nie udało si uzyska dostpu do ekranu X11 i otworzy swojej czci okna X11, pisze komunikat o błdzie i rezygnuje, co moe zakoczy cały program MPI 64
65 grafika MPE zakładajc, e tak si nie stało, proces definiuje swój kolor: my_color = (MPE_Color) (my_rank + 1); a proces o numerze 0 wywietla słowo hello w oknie: if ( my_rank == 0 ) ierr = MPE_Draw_string( graph, 187, 205, MPE_BLUE, "Hello" ); 65
66 grafika MPE if ( my_rank == 0 ) ierr = MPE_Draw_string( graph, 187, 205, MPE_BLUE, "Hello" ); pierwszy argument funkcji MPE_Draw_string to graph zwracany przez MPE_Open_graphics drugi i trzeci to współrzdne pocztku łacucha w pikselach, wzgldem lewego górnego rogu okna, czwarty to kolor łacucha, ostatni to sam łacuch (tekst) 66
67 grafika MPE teraz kady proces rysuje koło własnego koloru, o rodku w punkcie (200,200): ierr = MPE_Draw_circle( graph, 200, 200, 20+my_rank*5, my_color ); argumenty funkcji to: graph, współrzdne rodka, promie koła w pikselach, kolor nastpnie wywoływana jest funkcja: ierr = MPE_Update( graph ); 67
68 grafika MPE nastpnie wywoływana jest funkcja: ierr = MPE_Update( graph ); zapewniajca, e wszystko co jest rysowane na obiekcie graph jest przekazane do okna X11 68
69 grafika MPE w tym momencie program czeka na uytkownika, a co napisze na klawiaturze w przeciwnym razie obraz zniknie prawie natychmiast: if ( my_rank == 0 ) { } fprintf( stdout, "Hit any key then return to continue " ); fscanf( stdin, "%s", &ckey ); fprintf( stdout, "\n" ); MPI_Barrier( MPI_COMM_WORLD ); 69
70 grafika MPE zauwamy, e to process 0 jest odpowiedzialny za konsol inne procesy czekaj na barier bariera musi by, gdy mamy potem: ierr = MPE_Close_graphics( &graph ); 70
71 grafika MPE gdyby tak nie było, inne procesy mogłyby pobra swoje czci rysunku, ale poniewa jest bariera, mog to zrobi dopiero po napisaniu czego przez uytkownika na klawiaturze program koczy si standardowo: MPI_Finalize(); } return 0; 71
72 grafika MPE Wszystkie procesy współdziel ten sam obiekt graph. Kady proces ma dostp do dowolnego piksela to zaley od programisty, czy one sobie nie przeszkadzaj 72
73 Jumpshot-4 [Chan2005] 73
74 Jumpshot-4 [Chan2005] 74
Komunikacja kolektywna w środowisku MPI
Komunikacja kolektywna w środowisku MPI Zakres ćwiczenia W tym ćwiczeniu dowiesz się, co to jest komunikacja kolektywna i w jaki sposób napisać swój pierwszy program wykorzystujący komunikację kolektywną
Bardziej szczegółowoProgramowanie Równoległe Wykład 5. MPI - Message Passing Interface. Maciej Matyka Instytut Fizyki Teoretycznej
Programowanie Równoległe Wykład 5 MPI - Message Passing Interface Maciej Matyka Instytut Fizyki Teoretycznej Dorobiliśmy się strony WWW www.ift.uni.wroc.pl/~koma/pr/index.html MPI, wykład 2. Plan: - komunikacja
Bardziej szczegółowoProgramowanie Równoległe Wykład 4. MPI - Message Passing Interface. Maciej Matyka Instytut Fizyki Teoretycznej
Programowanie Równoległe Wykład 4 MPI - Message Passing Interface Maciej Matyka Instytut Fizyki Teoretycznej Jak używać w MPI? Donald Knuth: We should forget about small efficiencies, say about 97% of
Bardziej szczegółowoProces tworzenia programu:
Temat 1 Pojcia: algorytm, program, kompilacja i wykonanie programu. Proste typy danych i deklaracja zmiennych typu prostego. Instrukcja przypisania. Operacje wejcia/wyjcia. Przykłady prostych programów
Bardziej szczegółowoOperacje grupowego przesyłania komunikatów. Krzysztof Banaś Obliczenia równoległe 1
Operacje grupowego przesyłania komunikatów Krzysztof Banaś Obliczenia równoległe 1 Operacje grupowego przesyłania komunikatów Operacje, w ramach których ten sam komunikat lub zbiór komunikatów przesyłany
Bardziej szczegółowoŁącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi.
Przykład: $ ls more Łącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi. Tworzenie łącza #include int pipe(int filedes[2]); Przykład: int
Bardziej szczegółowoProgramowanie współbieżne... (5)
Programowanie współbieżne... (5) Andrzej Baran 2010/11 LINK: http://kft.umcs.lublin.pl/baran/prir/index.html 6 FUNKCJI Proste programy MPI można pisać używając tylko 6 funkcji Programowanie współbieżne...
Bardziej szczegółowoTemat: Programowanie zdarzeniowe. Zdarzenia: delegacje, wykorzystywanie zdarze. Elementy Windows Application (WPF Windows Presentation Foundation).
Temat: Programowanie zdarzeniowe. Zdarzenia: delegacje, wykorzystywanie zdarze. Elementy Windows Application (WPF Windows Presentation Foundation). 1. Programowanie zdarzeniowe Programowanie zdarzeniowe
Bardziej szczegółowoProgramowanie w modelu przesyłania komunikatów specyfikacja MPI. Krzysztof Banaś Obliczenia równoległe 1
Programowanie w modelu przesyłania komunikatów specyfikacja MPI Krzysztof Banaś Obliczenia równoległe 1 Model przesyłania komunikatów Paradygmat send receive wysyłanie komunikatu: send( cel, identyfikator_komunikatu,
Bardziej szczegółowoProgramowanie w modelu przesyłania komunikatów specyfikacja MPI, cd. Krzysztof Banaś Obliczenia równoległe 1
Programowanie w modelu przesyłania komunikatów specyfikacja MPI, cd. Krzysztof Banaś Obliczenia równoległe 1 MPI dynamiczne zarządzanie procesami MPI 2 umożliwia dynamiczne zarządzanie procesami, choć
Bardziej szczegółowoProgramowanie współbieżne... (4) Andrzej Baran 2010/11
Programowanie współbieżne... (4) Andrzej Baran 2010/11 LINK: http://kft.umcs.lublin.pl/baran/prir/index.html Przykład Zaczniemy od znanego już przykładu: Iloczyn skalarny różne modele Programowanie współbieżne...
Bardziej szczegółowo1. Wprowadzenie do C/C++
Podstawy Programowania :: Roman Grundkiewicz :: 014 Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Bardziej szczegółowoArgumenty wywołania programu, operacje na plikach
Temat zajęć: Argumenty wywołania programu, operacje na plikach Autor: mgr inż. Sławomir Samolej Zagadnienie 1. (Zmienne statyczne) W języku C można decydować o sposobie przechowywania zmiennych. Decydują
Bardziej szczegółowoWykł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ółowoznajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.
Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo
Bardziej szczegółowo1. Wprowadzenie do C/C++
Podstawy Programowania - Roman Grundkiewicz - 013Z Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub
Bardziej szczegółowoRysowanie 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ółowoSposoby przekazywania parametrów w metodach.
Temat: Definiowanie i wywoływanie metod. Zmienne lokalne w metodach. Sposoby przekazywania parametrów w metodach. Pojcia klasy i obiektu wprowadzenie. 1. Definiowanie i wywoływanie metod W dotychczas omawianych
Bardziej szczegółowoProgramowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411b Plan wykładu Operacje wejścia-wyjścia Dostęp do plików Struktury
Bardziej szczegółowoPARADYGMATY I JĘZYKI PROGRAMOWANIA. Programowanie współbieżne... (w13)
PARADYGMATY I JĘZYKI PROGRAMOWANIA Programowanie współbieżne... (w13) Treść 2 Wstęp Procesy i wątki Szybkość obliczeń prawo Amdahla Wyścig do zasobów Synchronizacja i mechanizmy synchronizacji semafory
Bardziej szczegółowoW2 Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy :
Wprowadzenie do klas C++ Klasa najważniejsze pojęcie C++. To jest mechanizm do tworzenia obiektów. Deklaracje klasy : class nazwa_klasy prywatne dane i funkcje public: publiczne dane i funkcje lista_obiektów;
Bardziej szczegółowoPodstawowe obiekty AutoCAD-a
LINIA Podstawowe obiekty AutoCAD-a Zad1: Narysowa lini o pocztku w punkcie o współrzdnych (100, 50) i kocu w punkcie (200, 150) 1. Wybierz polecenie rysowania linii, np. poprzez kilknicie ikony. W wierszu
Bardziej szczegółowoCzęść 4 życie programu
1. Struktura programu c++ Ogólna struktura programu w C++ składa się z kilku części: część 1 część 2 część 3 część 4 #include int main(int argc, char *argv[]) /* instrukcje funkcji main */ Część
Bardziej szczegółowoOperacje grupowego przesyłania komunikatów
Operacje grupowego przesyłania komunikatów 1 Operacje grupowego przesyłania komunikatów Operacje, w ramach których ten sam komunikat lub zbiór komunikatów przesyłany jest pomiędzy więcej niż dwoma procesami
Bardziej szczegółowoLaboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą
Bardziej szczegółowoPobieranie 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ółowoI - 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// Potrzebne do memset oraz memcpy, czyli kopiowania bloków
ZAWARTOŚCI 3 PLIKOW W WORDZIE: MAIN.CPP: #include #include #include pamięci // Potrzebne do memset oraz memcpy, czyli kopiowania bloków #include "Rysowanie_BMP.h" using
Bardziej szczegółowoBiblioteka standardowa - operacje wejścia/wyjścia
Biblioteka standardowa - operacje wejścia/wyjścia Przemysław Gawroński D-10, p. 234 Wykład 6 15 stycznia 2019 (Wykład 6) Biblioteka standardowa - operacje wejścia/wyjścia 15 stycznia 2019 1 / 14 Outline
Bardziej szczegółowoPodział programu na moduły
Materiały Podział programu na moduły Informatyka Szczegółowe informacje dotyczące wymagań odnośnie podziału na moduły: http://www.cs.put.poznan.pl/wcomplak/bfiles/c_w_5.pdf Podział programu na moduły pozwala
Bardziej szczegółowoProgramowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni Wykład 6 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Wskaźnik do pliku Dostęp do pliku: zapis, odczyt,
Bardziej szczegółowoJęzyki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.
Typy, operatory, wyrażenia. Wejście i wyjście. Typy, operatory, wyrażenia Zmienna: [] [ '[' ']' ] ['=' ]; Zmienna to fragment pamięci o określonym
Bardziej szczegółowoOptymalizacja komunikacji w systemach rozproszonych i równoległych
Optymalizacja komunikacji w systemach rozproszonych i równoległych Szkolenie PCSS, 16.12.2001 literatura W. Gropp, E. Lusk, An Introduction to MPI, ANL P.S. Pacheco, A User s Guide to MPI, 1998 Ian Foster,
Bardziej szczegółowoDodawanie grafiki i obiektów
Dodawanie grafiki i obiektów Word nie jest edytorem obiektów graficznych, ale oferuje kilka opcji, dzięki którym można dokonywać niewielkich zmian w rysunku. W Wordzie możesz zmieniać rozmiar obiektu graficznego,
Bardziej szczegółowoZadania do wykonaj przed przyst!pieniem do pracy:
wiczenie 3 Tworzenie bazy danych Biblioteka tworzenie kwerend, formularzy Cel wiczenia: Zapoznanie si ze sposobami konstruowania formularzy operujcych na danych z tabel oraz metodami tworzenia kwerend
Bardziej szczegółowoProgramowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw
Programowanie Obiektowo Zorientowane w języku c++ Przestrzenie nazw Mirosław Głowacki 1 1 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Ktrakowie Wydział Inżynierii Metali i Informatyki Stosowanej
Bardziej szczegółowoProgramowanie w standardzie MPI
Programowanie w standardzie MPI 1 2 Podstawy programowania z przesyłaniem komunikatów Model systemu równoległego w postaci p procesów, każdy z nich z własną przestrzenią adresową, nie współdzieloną z innymi
Bardziej szczegółowoPodstawy programowania w C++
Podstawy programowania w C++ Strumienie wejścia cin>> i wyjścia cout
Bardziej szczegółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowo1. Klasa typu sealed. Przykład 1. sealed class Standard{ class NowyStandard:Standard{ // błd!!!
Temat: Klasy typu sealed. Klasy abstrakcyjne. Deklaracja i implementacja interfejsu. Typ Object i operatory is oraz as. Czas ycia obiektu. Destruktory. 1. Klasa typu sealed Przykład 1 Klasa typu sealed
Bardziej szczegółowoEnterprise, czyli instytutowy klaster obliczeniowy
Enterprise, czyli instytutowy klaster obliczeniowy Janusz Szwabiński szwabin@ift.uni.wroc.pl Enterprise, czyli instytutowy klaster obliczeniowy p.1/28 Plan wykładu Klastry komputerowe Enterprise od podszewki
Bardziej szczegółowoPrzegldanie stron wymaga odpowiedniej mikroprzegldarki w urzdzeniu mobilnym lub stosownego emulatora.
I. Temat wiczenia Podstawy tworzenia stron WAP II. Wymagania Podstawowe wiadomoci z technologii Internetowych. III. wiczenie 1. Wprowadzenie WAP (ang. Wireless Application Protocol) - to protokół umoliwiajcy
Bardziej szczegółowoWstę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ółowoOperacje wejścia/wyjścia odsłona pierwsza
Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2005 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu na temat programowania obiektowego.
Bardziej szczegółowo3. Instalator rozpocznie proces instalacji
Uwaga! Podana instrukcja instalacji została przygotowana w oparciu o pliki instalacyjne SQL 2005 Express pobrany ze strony Microsoftu oraz oddzielny plik Service Pack 2 dedykowany pod SQL Express równie
Bardziej szczegółowoSchematy blokowe. Algorytmy Marek Pudełko
Schematy blokowe Algorytmy Marek Pudełko Metody zapisu algorytmów Algorytmy można zapisywać w postaci słownej, listy kroków lub symbolicznej - używając metajęzyków. Metajęzyk to język bardzo ogólny - opisujący
Bardziej szczegółowoLaboratorium 9 (Więcej Aktywności, w Androidzie)
Dr Mirosław Łątka Informatyka dla medycyny Jesień 2012 Laboratorium 9 (Więcej Aktywności, w Androidzie) Aplikacje systemu Android składają się z luźnego zbioru aktywności (ang. activities), z których każda
Bardziej szczegółowoISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje
Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych
Bardziej szczegółowogeometry a w przypadku istnienia notki na marginesie: 1 z 5
1 z 5 geometry Pakiet słuy do okrelenia parametrów strony, podobnie jak vmargin.sty, ale w sposób bardziej intuicyjny. Parametry moemy okrela na dwa sposoby: okrelc je w polu opcji przy wywołaniu pakiety:
Bardziej szczegółowoWykł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ółowo1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.
1. Pierwszy program // mój pierwszy program w C++ #include using namespace std; cout
Bardziej szczegółowoMETODY 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ółowoISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje
Funkcje (podprogramy) Mianem funkcji określa się fragment kodu, który może być wykonywany wielokrotnie z różnych miejsc programu. Ogólny zapis: typ nazwa(argumenty) ciało funkcji typ określa typ danych
Bardziej szczegółowo5 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 5 1/6 Język C Instrukcja laboratoryjna Temat: Funkcje, parametry linii poleceń, typ wyliczeniowy. 5 Przygotował: mgr inż. Maciej Lasota 1) Parametry linii poleceń. Język C oprócz wprowadzania
Bardziej szczegółowoProgram SMS4 Monitor
Program SMS4 Monitor INSTRUKCJA OBSŁUGI Wersja 1.0 Spis treci 1. Opis ogólny... 2 2. Instalacja i wymagania programu... 2 3. Ustawienia programu... 2 4. Opis wskaników w oknie aplikacji... 3 5. Opcje uruchomienia
Bardziej szczegółowoFunkcje zawarte w bibliotece < io.h >
PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece
Bardziej szczegółowoWstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9
Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9 Uruchamianie edytora OpenOffice.ux.pl Writer 9 Dostosowywanie środowiska pracy 11 Menu Widok 14 Ustawienia dokumentu 16 Rozdział 2. OpenOffice
Bardziej szczegółowoWskaźniki w C. Anna Gogolińska
Wskaźniki w C Anna Gogolińska Zmienne Zmienną w C można traktować jako obszar w pamięci etykietowany nazwą zmiennej i zawierający jej wartość. Przykład: kod graficznie int a; a a = 3; a 3 Wskaźniki Wskaźnik
Bardziej szczegółowo1.Wstęp. 2.Generowanie systemu w EDK
1.Wstęp Celem niniejszego ćwiczenia jest zapoznanie z możliwościami debuggowania kodu na platformie MicroBlaze oraz zapoznanie ze środowiskiem wspomagającym prace programisty Xilinx Platform SDK (Eclipse).
Bardziej szczegółowoPROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO
PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO LABORATORIUM Temat: QNX Neutrino Interrupts Mariusz Rudnicki 2016 Wstęp W QNX Neutrino wszystkie przerwania sprzętowe przechwytywane są przez jądro systemu. Obsługę
Bardziej szczegółowoPodstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
Bardziej szczegółowoProgramowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40
Programowanie w C++ Wykład 5 Katarzyna Grzelak 26 marca 2018 9 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40 Pojęcia z poprzedniego wykładu Podział programu na funkcje podział na niezależne
Bardziej szczegółowoINSTYTUT TECHNIKI Zakad Elektrotechniki i Informatyki mdymek@univ.rzeszow.pl FLASH
Interfejs programu INSTYTUT TECHNIKI FLASH 1. Górne menu, z którego mo%na wybiera( polecenia. Niektóre polecenia w menu skrywaj, kolejne zestawy polece- (podmenu). Inne te, po których nazwie wyst1puje
Bardziej szczegółowoWstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 3. Karol Tarnowski A-1 p.
Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy Laboratorium 3 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Dyrektywy preprocesora #include #define Interakcja
Bardziej szczegółowoPodstawy 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ółowoUtworzenie pliku. Dowiesz się:
Dowiesz się: 1. Jak rozpocząć pisanie programu 2. Jak wygląda szkielet programu, co to są biblioteki i funkcja main() 3. Jak wyświetlić ciąg znaków w programie 4. Jak uruchamiać (kompilować) napisany program
Bardziej szczegółowoTablice (jedno i wielowymiarowe), łańcuchy znaków
Tablice (jedno i wielowymiarowe), łańcuchy znaków wer. 8 z drobnymi modyfikacjami! Wojciech Myszka Katedra Mechaniki i Inżynierii Materiałowej 2017-04-07 09:35:32 +0200 Zmienne Przypomnienie/podsumowanie
Bardziej szczegółowoLekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz
Lekcja 8 - ANIMACJA 1 Polecenia Za pomoc Baltiego mo»emy tworzy animacj, tzn. sprawia by obraz na ekranie wygl daª jakby si poruszaª. Do animowania przedmiotów i tworzenia animacji posªu» nam polecenia
Bardziej szczegółowoFunkcje zawarte w bibliotece < io.h >
PLIKOWE OPERACJE WEJŚCIA - WYJŚCIA Język C/C++ nie ma wbudowanych żadnych instrukcji umożliwiających wykonywanie operacji wejścia-wyjścia! Służą do tego funkcje biblioteczne. Funkcje zawarte w bibliotece
Bardziej szczegółowo1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza
165 1) Grafy eulerowskie własnoci algorytmy 2) Problem chiskiego listonosza 166 Grafy eulerowskie Def. Graf (multigraf, niekoniecznie spójny) jest grafem eulerowskim, jeli zawiera cykl zawierajcy wszystkie
Bardziej szczegółowoKONKURS PRZEDMIOTOWY INFORMATYCZNY DLA UCZNIÓW GIMNAZJUM
... piecztka WKK KONKURS PRZEDMIOTOWY INFORMATYCZNY DLA UCZNIÓW GIMNAZJUM ETAP WOJEWÓDZKI Drogi Uczniu, witaj w II etapie konkursu informatycznego. Przeczytaj uwanie instrukcj i postaraj si prawidłowo
Bardziej szczegółowoPraktyka programowania projekt
Praktyka programowania projekt Zadanie projektowe nr. 2 Gra PacMan K. M. Ocetkiewicz, T Goluch 19 listopada 2012 Plan prezentacji Opis 2 zadania projektowego Plan prezentacji Opis 2 zadania projektowego
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowoProgramowanie w C++ Wykład 9. Katarzyna Grzelak. 14 maja K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30
Programowanie w C++ Wykład 9 Katarzyna Grzelak 14 maja 2018 K.Grzelak (Wykład 9) Programowanie w C++ 1 / 30 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe plus
Bardziej szczegółowoINFORMATYKA Studia Niestacjonarne Elektrotechnika
INFORMATYKA Studia Niestacjonarne Elektrotechnika Wydział Elektrotechniki i Informatyki dr inż. Michał Łanczont Wydział Elektrotechniki i Informatyki p. E419 tel. 81-538-42-93 m.lanczont@pollub.pl http://lanczont.pollub.pl
Bardziej szczegółowoZmienne, stałe i operatory
Zmienne, stałe i operatory Przemysław Gawroński D-10, p. 234 Wykład 2 4 marca 2019 (Wykład 2) Zmienne, stałe i operatory 4 marca 2019 1 / 21 Outline 1 Zmienne 2 Stałe 3 Operatory (Wykład 2) Zmienne, stałe
Bardziej szczegółowoĆwiczenie nr 3. Temat: Definicje i wykorzystanie funkcji, parametry funkcji
Ćwiczenie nr 3 Temat: Definicje i wykorzystanie funkcji, parametry funkcji Zagadnienia: Definicja funkcji składnia podstawowa. Sposoby przekazania parametrów (argumentów) funkcji: przez wartość, przez
Bardziej szczegółowoWstęp do programowania
Wstęp do programowania Przemysław Gawroński D-10, p. 234 Wykład 1 8 października 2018 (Wykład 1) Wstęp do programowania 8 października 2018 1 / 12 Outline 1 Literatura 2 Programowanie? 3 Hello World (Wykład
Bardziej szczegółowoProgramowanie w modelu przesyłania komunikatów specyfikacja MPI, cd. Krzysztof Banaś Obliczenia równoległe 1
Programowanie w modelu przesyłania komunikatów specyfikacja MPI, cd. Krzysztof Banaś Obliczenia równoległe 1 Środowisko przesyłania komunikatów MPI Rodzaje procedur: blokujące nieblokujące Tryby przesyłania
Bardziej szczegółowoModele programowania równoległego. Programowanie z przekazywaniem komunikatów Message-Passing Programming Rafał Walkowiak dla PR PP
Modele programowania równoległego Programowanie z przekazywaniem komunikatów Message-Passing Programming Rafał Walkowiak dla PR PP MPP - Cechy charakterystyczne 1 Prywatna, wyłączna przestrzeń adresowa.
Bardziej szczegółowoZadanie 2: Arytmetyka symboli
1 Cel ćwiczenia Zadanie 2: Arytmetyka symboli Wykształcenie umiejętności abstrahowania operacji arytmetycznych. Zapoznanie się i przećwiczenie mechanizmu tworzenia przeciążeń funkcji operatorowych. Utrwalenie
Bardziej szczegółowoProgramowanie komputerowe. Zajęcia 1
Programowanie komputerowe Zajęcia 1 Code::Blocks - tworzenie projektu Create New Project Console Application -> C++ Wybierz nazwę projektu Stworzy się nowy projekt z wpisaną funkcją main Wpisz swój program
Bardziej szczegółowoWYKŁAD 8. Funkcje i algorytmy rekurencyjne Proste przykłady. Programy: c3_1.c..., c3_6.c. Tomasz Zieliński
WYKŁAD 8 Funkcje i algorytmy rekurencyjne Proste przykłady Programy: c3_1.c..., c3_6.c Tomasz Zieliński METODY REKURENCYJNE (1) - program c3_1 ======================================================================================================
Bardziej szczegółowoProgramowanie w C++ Wykład 5. Katarzyna Grzelak. 16 kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27
Programowanie w C++ Wykład 5 Katarzyna Grzelak 16 kwietnia 2018 K.Grzelak (Wykład 1) Programowanie w C++ 1 / 27 Pojęcia z poprzednich wykładów Tablica to ciag obiektów tego samego typu, zajmujacy ciagły
Bardziej szczegółowoProgramowanie w C++ Wykład 8. Katarzyna Grzelak. 15 kwietnia K.Grzelak (Wykład 8) Programowanie w C++ 1 / 33
Programowanie w C++ Wykład 8 Katarzyna Grzelak 15 kwietnia 2019 K.Grzelak (Wykład 8) Programowanie w C++ 1 / 33 Klasy - powtórzenie Klasy typy definiowane przez użytkownika Klasy zawieraja dane składowe
Bardziej szczegółowoPodstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 10 Kurs C++
Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 10 Kurs C++ Historia Lata 70-te XX w język C (do pisania systemów operacyjnych) "The C programming language" B. Kernighan, D. Ritchie pierwszy standard
Bardziej szczegółowoInformatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Klasy i obiekty. Podstawy programowania obiektowego dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Plan wykładu Pojęcie klasy Deklaracja klasy Pola i metody klasy
Bardziej szczegółowo- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy
Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla
Bardziej szczegółowoProgramowanie C++ Wykład 2 - podstawy języka C++ dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki
Wykład 2 - podstawy języka C++ Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu. Zmienne i ich nazwy, podstawowe typy: całkowite, rzeczywiste, znakowe i napisowe. Instrukcje:
Bardziej szczegółowoWprowadzenie do QT OpenGL
Wprowadzenie do QT mgr inż. Michał Chwesiuk mgr inż. Tomasz Sergej inż. Patryk Piotrowski 1/21 - Open Graphics Library Open Graphics Library API pozwalające na wykorzystanie akceleracji sprzętowej do renderowania
Bardziej szczegółowoLab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur.
Języki i paradygmaty programowania 1 studia stacjonarne 2018/19 Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur. 1. Identyfikator funkcji,
Bardziej szczegółowoWykład VI. Programowanie. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik
Wykład VI Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Operacje na plikach Operacje na plikach Aby móc korzystać z pliku należy go otworzyć w odpowiednim
Bardziej szczegółowoInstrukcja obsługi programu Pilot PS 5rc
Instrukcja obsługi programu Pilot PS 5rc Spis treci 1.Wprowadzenie....3 2. Wymagania....3 3. Instalacja oprogramowania...3 4. Uruchomienie Programu...5 4.1. Menu główne...5 4.2. Zakładki...6 5. Praca z
Bardziej szczegółowoProgramowanie w C++ Wykład 11. Katarzyna Grzelak. 21 maja K.Grzelak (Wykład 11) Programowanie w C++ 1 / 24
Programowanie w C++ Wykład 11 Katarzyna Grzelak 21 maja 2018 K.Grzelak (Wykład 11) Programowanie w C++ 1 / 24 Strumienie Strumień bajtów płynacy od źródła do ujścia: 1 standardowe strumienie wejściowe
Bardziej szczegółowoInstrukcja obsługi programu MechKonstruktor
Instrukcja obsługi programu MechKonstruktor Opracował: Sławomir Bednarczyk Wrocław 2002 1 1. Opis programu komputerowego Program MechKonstruktor słuy do komputerowego wspomagania oblicze projektowych typowych
Bardziej szczegółowoJanusz Ganczarski. OpenGL Pierwszy program
Janusz Ganczarski OpenGL Pierwszy program Spis treści Spis treści..................................... 1 1. Pierwszy program.............................. 1 1.1. Rysowanie sceny 3D...........................
Bardziej szczegółowoZastosowanie programu Microsoft Excel do analizy wyników nauczania
Grayna Napieralska Zastosowanie programu Microsoft Excel do analizy wyników nauczania Koniecznym i bardzo wanym elementem pracy dydaktycznej nauczyciela jest badanie wyników nauczania. Prawidłow analiz
Bardziej szczegółowoJęzyk C i C++. Podstawy. Zagadnienia do opanowania. Przykład 1. (modyfikuj kod, aby zrealizować punkty 5., 7.)
Język C i C++. Podstawy Materiały do samodzielnego opanowania, ale także propozycja zadań na zajęcia laboratoryjne Zagadnienia do opanowania 1) Czym jest standardowe wejście-wyjście (stdio)? 2) Czym może
Bardziej szczegółowoWskaźniki. Informatyka
Materiały Wskaźniki Informatyka Wskaźnik z punktu widzenia programisty jest grupą komórek pamięci (rozmiar wskaźnika zależy od architektury procesora, najczęściej są to dwa lub cztery bajty ), które mogą
Bardziej szczegółowoProgramowanie - wykład 4
Programowanie - wykład 4 Filip Sośnicki Wydział Fizyki Uniwersytet Warszawski 20.03.2019 Przypomnienie Prosty program liczący i wyświeltający wartość silni dla wprowadzonej z klawiatury liczby: 1 # include
Bardziej szczegółowo