jules

Hozzászólások

10 bejegyzés megtekintése - 131-140 / 269
  • Szerző
    Bejegyzés
  • Hozzászólás: matrix osztaly osszeadasra #2154748
    jules
    Felhasználó

      kerlek zoltan22, segits mar egy kicsit… legalabb nezd meg a kodot, hogy jo-e! a kiiratasos resz nelkul hibatlanul lefordul, de lehet hogy van benne hiba, mert ugye a „sum”-ot igy onmagaban nem lehet kiiratni, ezt valahogy tombositeni kellene… hadd legyek mar okosabb, vegre legyen meg… ez mar tenyleg csak par aprosag…

      Hozzászólás: matrix osztaly osszeadasra #2154745
      jules
      Felhasználó

        bocs a zavarasert. a „sum”-ra kiiratasnal valahogy tombkent kellene hivatkozni, nem? vagy hogy van ez? valami nem jol definialt a kodban? hol a hiba?

        Hozzászólás: matrix osztaly osszeadasra #2154746
        jules
        Felhasználó

          bocs a zavarasert. a „sum”-ra kiiratasnal valahogy tombkent kellene hivatkozni, nem? vagy hogy van ez? valami nem jol definialt a kodban? hol a hiba?

          Hozzászólás: matrix osztaly osszeadasra #2154737
          jules
          Felhasználó

            termeszetesen i. a

            Code:
            i

            kimenete valamiert I.

            Hozzászólás: matrix osztaly osszeadasra #2154738
            jules
            Felhasználó

              termeszetesen i. a

              Code:
              i

              kimenete valamiert I.

              Hozzászólás: matrix osztaly osszeadasra #2154731
              jules
              Felhasználó

                kedves zoltan22, valahogy igy gondoltam az egeszet (de nyilvan valami hibas benne, mondjuk a „kiiratas” resz nelkul hibatlanul lefordul…)

                Code:
                #include  
                #include
                #include
                #include
                #include

                using namespace std;

                const float M_2PIf = 6.283185307179586476925286766559f;
                const float M_PIf  = 3.141592653589793238462643383279f;

                /* —————–RANDOM_GENERATOR——————————- */

                float rand(float min, float max)
                {
                    return min + (max – min) * rand() / (float)RAND_MAX;
                }
                /*——————————————————————*/

                struct vektor {
                float x,y,z;
                };

                /* ——————MATRIX_CLASS———————————–*/
                class Matrix {

                private:
                float tomb[3][3];

                public:
                 
                  void init(vektor &a){

                    tomb[0][0] = a.x * a.x;
                    tomb[0][1] = a.x * a.y;
                    tomb[0][2] = a.x * a.z;
                    tomb[1][0] = a.y * a.x;
                    tomb[1][1] = a.y * a.y;
                    tomb[1][2] = a.y * a.z;
                    tomb[2][0] = a.z * a.x;
                    tomb[2][1] = a.z * a.y;
                    tomb[2][2] = a.z * a.z;
                    }

                Matrix &operator +=(Matrix m){
                int k,l;
                for(k=0; k<3; k++)
                for(l=0; l<3; l++)
                  tomb[k][l] += m.tomb[k][l];
                return *this;
                }

                Matrix &operator/=(float c){
                int k,l;
                for(k=0; k<3; k++)
                for(l=0; l<3; l++)
                  tomb[k][l] /= c;
                return *this;
                }

                };

                /* ——————————————————————– */

                int main() {

                    int i,j;

                    vektor tar[5];

                    for (i = 0;i<5;i++) {

                    float phi  = rand(0.0f, M_2PIf);
                  float costheta = rand(-1.0f, 1.0f);
                   
                    float x = 1.0f * sqrtf(1-costheta*costheta) * cosf(phi);
                    float y = 1.0f * sqrtf(1-costheta*costheta) * sinf(phi);
                    float z = 1.0f * costheta;

                    tar[I].x = x;
                    tar[I].y = y;
                    tar[I].z = z;

                    }

                    Matrix m[5];
                    for (i=0;i<5;i++) {
                 
                    m[I].init(tar[I]);
                    }

                    Matrix sum = m[0];

                    for (i=0;i<5;i++) {
                 
                    sum += m[I];
                    }
                   
                    sum /= 5;
                   
                    // kiiratas
                    for(i=0;i<3;i++)
                    {
                  printf ("n");
                  for (j=0;j<3;j++)
                  {
                   
                  printf (valami[I][j]);
                  }
                    }

                   

                return 0;
                }

                [/I][/I][/I][/I][/I][/I][/I]

                Hozzászólás: matrix osztaly osszeadasra #2154732
                jules
                Felhasználó

                  kedves zoltan22, valahogy igy gondoltam az egeszet (de nyilvan valami hibas benne, mondjuk a „kiiratas” resz nelkul hibatlanul lefordul…)

                  Code:
                  #include  
                  #include
                  #include
                  #include
                  #include

                  using namespace std;

                  const float M_2PIf = 6.283185307179586476925286766559f;
                  const float M_PIf  = 3.141592653589793238462643383279f;

                  /* —————–RANDOM_GENERATOR——————————- */

                  float rand(float min, float max)
                  {
                      return min + (max – min) * rand() / (float)RAND_MAX;
                  }
                  /*——————————————————————*/

                  struct vektor {
                  float x,y,z;
                  };

                  /* ——————MATRIX_CLASS———————————–*/
                  class Matrix {

                  private:
                  float tomb[3][3];

                  public:
                   
                    void init(vektor &a){

                      tomb[0][0] = a.x * a.x;
                      tomb[0][1] = a.x * a.y;
                      tomb[0][2] = a.x * a.z;
                      tomb[1][0] = a.y * a.x;
                      tomb[1][1] = a.y * a.y;
                      tomb[1][2] = a.y * a.z;
                      tomb[2][0] = a.z * a.x;
                      tomb[2][1] = a.z * a.y;
                      tomb[2][2] = a.z * a.z;
                      }

                  Matrix &operator +=(Matrix m){
                  int k,l;
                  for(k=0; k<3; k++)
                  for(l=0; l<3; l++)
                    tomb[k][l] += m.tomb[k][l];
                  return *this;
                  }

                  Matrix &operator/=(float c){
                  int k,l;
                  for(k=0; k<3; k++)
                  for(l=0; l<3; l++)
                    tomb[k][l] /= c;
                  return *this;
                  }

                  };

                  /* ——————————————————————– */

                  int main() {

                      int i,j;

                      vektor tar[5];

                      for (i = 0;i<5;i++) {

                      float phi  = rand(0.0f, M_2PIf);
                    float costheta = rand(-1.0f, 1.0f);
                     
                      float x = 1.0f * sqrtf(1-costheta*costheta) * cosf(phi);
                      float y = 1.0f * sqrtf(1-costheta*costheta) * sinf(phi);
                      float z = 1.0f * costheta;

                      tar[I].x = x;
                      tar[I].y = y;
                      tar[I].z = z;

                      }

                      Matrix m[5];
                      for (i=0;i<5;i++) {
                   
                      m[I].init(tar[I]);
                      }

                      Matrix sum = m[0];

                      for (i=0;i<5;i++) {
                   
                      sum += m[I];
                      }
                     
                      sum /= 5;
                     
                      // kiiratas
                      for(i=0;i<3;i++)
                      {
                    printf ("n");
                    for (j=0;j<3;j++)
                    {
                     
                    printf (valami[I][j]);
                    }
                      }

                     

                  return 0;
                  }

                  [/I][/I][/I][/I][/I][/I][/I]

                  Hozzászólás: matrix osztaly osszeadasra #2154725
                  jules
                  Felhasználó

                    zoltan22, segits mar egy kicsit. itt senki sem tudja a dolgot…

                    azzal nyilvan baj van ha igy akarom kiiratni:

                    Code:
                    cout << sum << endl;
                    Hozzászólás: matrix osztaly osszeadasra #2154726
                    jules
                    Felhasználó

                      zoltan22, segits mar egy kicsit. itt senki sem tudja a dolgot…

                      azzal nyilvan baj van ha igy akarom kiiratni:

                      Code:
                      cout << sum << endl;
                      Hozzászólás: matrix osztaly osszeadasra #2154721
                      jules
                      Felhasználó

                        aha. jo, ez oke. en probaltam mar a standard cout << valami << endl; kiiratast, de ennel hibat ir ki… ezert kellene zoltan22 kollega!

                      10 bejegyzés megtekintése - 131-140 / 269