• Catania / Scienze MM. FF. NN. / Informatica
  • Ecco un primo abbozzo di soluzione...

brawnsr-votailprof
brawnsr-votailprof - Ominide - 0 Punti
Rispondi Cita Salva
al giochetto della borsa... scusate se è poco commentato...



------------------------------------------



import javax.swing.*;



public class GiocoBorsa

{

public static void main(String[] args)

{

Azioni pippoSpa=new Azioni("Pippo S.P.A",0,100);

Azioni ggEnt=new Azioni("Gallo Enterprise & Co.",0,200);

Azioni brCom=new Azioni("Br4wN & Brothers",0,150);

Trader Mario=new Trader(10000);

Mario.makePortfolio(pippoSpa,ggEnt,brCom);

Mario.showPortfolio();

System.out.println("Budget prima delle operazioni: "+Mario.getBudget());

Mario.compra(10,brCom);

Mario.compra(10,ggEnt);

Mario.showPortfolio();

System.out.println("Budget dopo le operazioni: "+Mario.getBudget());

System.exit(0);

}

}



/* *** classe Azioni *** */

class Azioni

{

private String nome="";

private int numero=0;

private int valore=0;



/* metodo COSTRUTTORE */

public Azioni(String name, int number, int val)

{

nome=name;

numero=number;

valore=val;

}

/* fine metodo COSTRUTTORE */



/* metodi GET */

public int getValore()

{

return valore;

}



public int getNumero()

{

return numero;

}



public String getName()

{

return nome;

}

/* fine metodi GET */



/* metodi SET */

public void setValore(int newValore)

{

valore=newValore;

}



public void setNumero(int newNumber)

{

numero=newNumber;

}



public void setName(String newName)

{

nome=newName;

}

/* fine metodi SET */



/* metodo che cambia in maniera random il valore di una azione */

public void rndChng()

{

double m=Math.random()*361;

double n=Math.sin(m);

valore+=(int) (m*n);

}

}

/* fine classe Azioni */



/* *** classe Trader *** */

class Trader

{

private Azioni[] portfolio=new Azioni[3];

private int budget=0;



/* metodo costruttore */

public Trader(int lire)

{

budget=lire;

}

/* fine metodo COSTRUTTORE */



/* metodi get */

public int getBudget()

{

return budget;

}



public Azioni getPortfolio(int num)

{

return portfolio[num];

}

/* fine metodi get */



/* metodi di utilità */

public void makePortfolio(Azioni az1, Azioni az2, Azioni az3)

{

portfolio[0]=az1;

portfolio[1]=az2;

portfolio[2]=az3;

}



public void vendi(int num, Azioni miAzione)

{

int indPort=0;

if (miAzione.getName().equals(portfolio[0].getName())) indPort=0;

else if (miAzione.getName().equals(portfolio[1].getName())) indPort=1;

else indPort=2;

budget=budget+(miAzione.getValore()*num);

portfolio[indPort].setNumero(portfolio[indPort].getNumero()-num);

}



public void compra(int num, Azioni miAzione)

{

int indPort=0;

if (miAzione.getName().equals(portfolio[0].getName())) indPort=0;

else if (miAzione.getName().equals(portfolio[1].getName())) indPort=1;

else indPort=2;

budget=budget-(miAzione.getValore()*num);

portfolio[indPort].setNumero(portfolio[indPort].getNumero()+num);

}



public void showPortfolio()

{

System.out.println("-------------------------";);

System.out.println("Portafoglio attuale: \n-------------------------";);

for (int i=0;i<portfolio.length;i++)

{

System.out.println("Azione n."+(i+1)+" : "+portfolio.getName());

System.out.println("Numero: "+portfolio
.getNumero());

System.out.println("Valore: "+portfolio.getValore());

System.out.println("";);

}

System.out.println("-------------------------";);

}

/* fine metodi di utilità */

}

/* fine classe Trader */
Come guadagno Punti nel Forum? Leggi la guida completa
In evidenza
Classifica Mensile
Vincitori di novembre
Vincitori di novembre

Come partecipare? | Classifica Community

Community Live

Partecipa alla Community e scala la classifica

Vai al Forum | Invia appunti | Vai alla classifica

Registrati via email