//clase persona donde definimos atributos propios public class Persona { //atributos propios de la clase private String nombre,amigo_1,amigo_2; private float regalar; private float regalos; //constructor public Persona(){ } //metodos accesorios public String getNombre(){ return nombre; } public String getAmigo_1(){ return amigo_1; } public String getAmigo_2(){ return amigo_2; } public float getRegalar(){ return regalar; } public float getRegalos(){ return regalos; } //metodos mutadorores public void setNombre(String x){ nombre=x; } public void setAmigo_1(String x){ amigo_1=x; } public void setAmigo_2(String x){ amigo_2=x; } public void setRegalar(float x){ regalar=x; } public void setRegalos(float x){ regalos=x; } } //clase Intercambiar donde procesamos regalos public class Intercambiar { //atributos propios de la clase private Persona[] regalos; //constructor de la clase public Intercambiar(Persona[] r){ regalos=r; } //metodo procesar donde calcula todo public void procesar(){ for(int i=0;i<regalos.length;i++){ for(int j=0;j<regalos.length;j++){ if(regalos[i].getAmigo_1().equals(regalos[j].getNombre())){ regalos[j].setRegalos(regalos[j].getRegalos()+regalos[i].getRegalar()/2); } if(regalos[i].getAmigo_2().equals(regalos[j].getNombre())){ regalos[j].setRegalos(regalos[j].getRegalos()+regalos[i].getRegalar()/2); } } } } //metodo para mostrar por pantalla public void mostrar(){ for(int i=0;i<regalos.length;i++){ System.out.println(regalos[i].getNombre()+" da Bs. "+regalos[i].getRegalar()+" a "+regalos[i].getAmigo_1()+" y "+regalos[i].getAmigo_2()); } System.out.println(); for(int i=0;i<regalos.length;i++){ System.out.println(regalos[i].getNombre()+" recibe en total: Bs. "+regalos[i].getRegalos()); } } } //clase principal import java.util.*; public class PRINCIPAL{ public static void main(String[] args) { Scanner cin=new Scanner(System.in); Persona[] p=new Persona[5]; for(int i=0;i<5;i++){ p[i]=new Persona(); System.out.println("Ingrese nombre de la persona: "); p[i].setNombre(cin.next()); System.out.println("Ingrese el monto a gastar en regalos: "); p[i].setRegalar(cin.nextFloat()); System.out.println("Ingrese nombre del primer amigo: "); p[i].setAmigo_1(cin.next()); System.out.println("Ingrese nombre del segundo amigo: "); p[i].setAmigo_2(cin.next()); } Intercambiar in=new Intercambiar(p); in.procesar(); in.mostrar(); } }