Orar semigroup #2

Orar semigroup #2

Se afișează postările cu eticheta java. Afișați toate postările

[POO] 28 octombrie - Lab 4 - Lucru cu Matrici

Adunarea a două matrici, scăderea a două matrici, afisarea unei matrici, calculul mediei aritmetice a elementelor unei matrici + clasă de test pentru medie

Main.java

package ro.utcluj.poo.lab3matrix;

public class Main {

    public static void main(String[] args) {
        Matrice a1,a2,a3;
        int[][] p=new int[][] {{1,2},{3,4}};
        int[][] pp=new int[][] {{1,2},{3,4}};
        a1=new Matrice(2, 2, p);
        a2=new Matrice(2,2,pp);
        a3=a1.add(a2);
        a1.Afisare();
        a2.Afisare();
        a3.Afisare();
   
        System.out.println(a1.Medie());
        System.out.println(a2.Medie());
        System.out.println(a3.Medie());
    }

}
Matrice.java
package ro.utcluj.poo.lab3matrix;

public class Matrice {
    private int[][] a;
    private int n,m;
    public Matrice(int n, int m, int[][] a)
    {
        this.a = new int[n][m];
        int i,j;
        for(i=0;i<n;i++)
            for(j=0;j<m;j++)
                this.a[i][j] = a[i][j];
        //this.a=a;
        this.n=n;
        this.m=m;
    }
   
    public void Afisare()
    {
        int i,j;
        for(i=0;i<n;i++)
            {for(j=0;j<m;j++)
                System.out.print(a[i][j]+" ");
            System.out.println();
            }      
    }
   
    public Matrice add(Matrice mm)
    {
        Matrice x;
        x=new Matrice(this.n,this.m,this.a);
        int i,j;
        x.n=this.n;
        x.m=this.m;
        for(i=0;i<this.n;i++)
            for(j=0;j<this.m;j++)
                x.a[i][j]=mm.a[i][j]+this.a[i][j];
        return x;
    }
   
    public Matrice scadere(Matrice mm)
    {
        Matrice x;
        x=new Matrice(this.n,this.m,this.a);
        int i,j;
        x.n=this.n;
        x.m=this.m;
        for(i=0;i<this.n;i++)
            for(j=0;j<this.m;j++)
                x.a[i][j]=-mm.a[i][j]+this.a[i][j];
        return x;
    }
   
    public double Medie()
    {
        int i,j;
        double s=0;
        for(i=0;i<this.n;i++)
            for(j=0;j<this.m;j++)
                s=s+this.a[i][j];
        double m;
        m=s/(this.n*this.m);
        return m;
    }

   
   
    public static void main(String[] args) {
        // TODO Auto-generated method stub

    }

}
MatriceTest.java
package ro.utcluj.poo.lab3matrix;

import static org.testng.Assert.assertEquals;

import org.testng.annotations.Test;

public class MatriceTest {

  @Test
  public void Medie() {
      Matrice a1=new Matrice(2,2,new int[][] {{1,2},{3,4}});
      assertEquals(a1.Medie(),2.5,0.01);
    //throw new RuntimeException("Test not implemented");
  }
}

marți, 28 octombrie 2014 by DlMuresan
Categories: , , , , , | Leave a comment

[POO] 14 octombrie - Lab 2 - Suma 2 la n

Sa se calculeze suma 2^0+2^1+...+2^n
package ro.utcluj.poo.lab02;
import java.math.BigInteger;
public class Suma2n {
public static void main(String[] args) {
// TODO Auto-generated method stub
BigInteger s,p,c;
/*s=new BigInteger("2");
c=new BigInteger("-1");
s = s.pow(64);
s = s.add(c);
System.out.println(s.toString());*/
p=new BigInteger("1");
c=new BigInteger("2");
s=new BigInteger("0");
int i,n;
n=63;
for(i=0;i<=n;i++)
{
s=s.add(p);
p=p.multiply(c);
//System.out.println(s.longValue());
}
System.out.println(s.longValue());
}
}
Cu functie si test
package ro.utcluj.poo.lab02;
import java.math.BigInteger;
public class Suma2n {
public int putere(double n){
int s,p,c;
int i;
s=0;
p=1;
c=2;
for(i=0;i<=n;i++)
{
s=s+p;
p=p*c;
}
return s;
}
public static void main(String[] args) {
}
}
Test
package ro.utcluj.poo.lab02;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeMethod;
import static org.testng.Assert.*;
public class Suma2nTest {
Suma2n main;
@BeforeClass
public void init(){
main = new Suma2n();
}
@DataProvider
public Object[][] valoriDeTest(){
return new Double[][]{
{2.0, 7.0, 0.001},
{3.0,15.0, 0.01},
{4.0,31.0,0.01}
};
}

@Test(dataProvider = "valoriDeTest")
public void get(double input, double expected, double precision) {
double result = main.putere(input);
assertEquals(result, expected,precision);
}
}

marți, 14 octombrie 2014 by DlMuresan
Categories: , | Leave a comment