Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <conio.h>
- template <typename jakis_typ>
- class Barwa
- {
- jakis_typ R;
- jakis_typ G;
- jakis_typ B;
- float A;
- public:
- Barwa(jakis_typ r, jakis_typ g, jakis_typ b, float a) :
- R(r),
- G(g),
- B(b),
- A(a)
- {}
- void Ustaw(char Skladowa, jakis_typ X)
- {
- switch(Skladowa)
- {
- case 'R':
- if(X < R) R = X;
- break;
- case 'G':
- if(X < G) G = X;
- break;
- case 'B':
- if(X < B) B = X;
- break;
- case 'A':
- if(X < A) A = X;
- break;
- }
- }
- jakis_typ Pobierz(char Skladowa)
- {
- switch(Skladowa)
- {
- case 'R':
- return R;
- break;
- case 'G':
- return G;
- break;
- case 'B':
- return B;
- break;
- return B;
- case 'A':
- return A;
- break;
- }
- }
- jakis_typ OdcienSzarosci()
- {
- return (R+G+B)/3;
- }
- };
- int main()
- {
- Barwa<int> N(125,211,255,1.0);
- Barwa<float> X(121,101,10,0.2);
- Barwa <double> M(125,101,10,0.2);
- N.Ustaw('R', 212);
- N.Ustaw('X', 100);
- N.Ustaw('G', 256);
- N.Ustaw('A', 1.2);
- X.Ustaw('A', 0.5);
- M.Ustaw('X', 150);
- M.Ustaw('R', 255);
- M.Ustaw('R', 111);
- printf("Dla int R: %d G: %d B: %d A: %d Odcien Szarosci: %d\n", N.Pobierz('R'), N.Pobierz('G'), N.Pobierz('B'), N.Pobierz('A'), N.OdcienSzarosci() );
- printf("Dla float R: %2.1f G : %2.1f : B : %2.1f A : %2.1f Odcien szarosci : %2.1f\n",X.Pobierz('R'),X.Pobierz('G'),X.Pobierz('B'),X.Pobierz('A'),X.OdcienSzarosci());
- printf("Dla double R: %2.1lf G : %2.1lf : B : %2.1lf A : %2.1lf Odcien szarosci : %2.1lf\n",M.Pobierz('R'),M.Pobierz('G'),M.Pobierz('B'),M.Pobierz('A'),M.OdcienSzarosci());
- getch();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement