June 17, 2025, Tuesday, 167

KADD 2016 Zadanie 1

From Łukasz Graczykowski

(Difference between revisions)
Jump to: navigation, search
(Zadanie)
(Uwagi)
Line 43: Line 43:
== Uwagi ==
== Uwagi ==
-
 
+
* w środowisku ROOT piszemy *makra*, które mają rozszerzenie .c, .C, .cpp, lub .cxx
 +
* makro zawiera w sobie kod w języku C++ interpretowany linijka po linijce, zawarty między nawiasami klamrowymi
 +
* w zasadzie nie musimy załączać żadnych bibliotek
 +
* przykład:
 +
{
 +
    double x = 5;
 +
    cout<<x<<endl;
 +
}
== Wynik ==
== Wynik ==

Revision as of 19:36, 27 February 2016

Contents

Dokumentacja

Dokumentacja środowiska ROOT:

Zadanie

1. Należy napisać makro, które:

  • tworzy obiekt fun1 typu TF1 reprezentujący funkcję sin(x)
  • tworzy obiekt fun2 typu TF1 reprezentujący funkcję cos(x)
  • tworzy okno z 4 panelami (rozkład 2x2) - patrz klasa TCanvas i metoda Divide
  • rysuje obiekt fun1 na 1 panelu, fun2 na 2 panelu, oraz obie funkcje jednocześnie na 3 panelu
  • zmieni kolor linii funkcji fun2 na niebieski - patrz metoda SetLineColor i klasa TColor


2. Wyobraźmy sobie, że rzucamy niesymetryczną sześcienną kostką do gry. Wyniki podsumowuje poniższa tabelka:

Ilość oczek 1 2 3 4 5 6
Ilość rzutów 2 1 5 4 10 12

Modyfikujemy dalej makro:

  • tworzymy histogram (patrz klasa TH1D wypełniając kolejne biny (ilość oczek) wartościami z tabelki (ilość rzutów) - histogram należy narysować na panelu 4
  • należy stworzyć wykres - graf (patrz klasa TGraph) zgodnie z wartościami z tabelki.
  • zmienić styl punktów grafu na kółko (patrz metoda SetMarkerStyle oraz klasa TAttMarker)
  • narysować graf w oddzielnym oknie

Uwagi

  • w środowisku ROOT piszemy *makra*, które mają rozszerzenie .c, .C, .cpp, lub .cxx
  • makro zawiera w sobie kod w języku C++ interpretowany linijka po linijce, zawarty między nawiasami klamrowymi
  • w zasadzie nie musimy załączać żadnych bibliotek
  • przykład:
{
    double x = 5;
    cout<<x<<endl;
}

Wynik

Wykresy:

  • okno 1

Lab1 1.png

  • okno 2

1 2.png