[RESOLVIDO]Dúvida com Lógica- Tickets em Jogos , ex : Battlefield

1 resposta
SirDominque

Fala Galera, Beleza?

È o seguinte, estou com uma dúvida de como calcular :

1) Dado que dois times , em um jogo de tiro, comecem com 500 tickets no começo do round.E cada morte resulta em -1 ticket;

Pergunta : Como estimar a perda de ticker por minuto de um time?

Eu cheguei a fazer o código abaixo, mas esta errado...Preciso de ajuda na lógica, poderiam me ajudar plx ?

public class CalculatingTickets {

    ArrayList<TicketsModel> ticketsList = new ArrayList<>();

    public static void main(String args[]) {
        CalculatingTickets c = new CalculatingTickets();
        c.addTicketDecayPerMinute(300, 250);
        c.addTicketDecayPerMinute(300, 250);
        c.getUSATicketDecayPerMinute();
    }

    public CalculatingTickets() {
    }

    public void addTicketDecayPerMinute(int usaTickets, int nvaTickets) {
        try {
            long time = System.currentTimeMillis();

            if (((usaTickets >= 0) && (usaTickets < 10000)) && ((nvaTickets >= 0) && (nvaTickets < 10000))) {
                //^ validade the Tickets Number

                //Add new Node to the List
                TicketsModel ticketNode = new TicketsModel(usaTickets, nvaTickets, time);
                ticketsList.add(ticketNode);

                System.out.println("UsaTickets :" + usaTickets);
                System.out.println("NvaTickets :" + nvaTickets);
                System.out.println("time :" + time);

            }
        } catch (Exception e) {
            System.out.println(e.getMessage());
        }

    }

    public double getUSATicketDecayPerMinute() {
        double answer = 0.0;
        //
        double sumTickets = 0;
        long times = 0L;

        for (int i = 0; i < ticketsList.size(); i++) 
        {
            sumTickets = sumTickets + ticketsList.get(i).getUsaTickets();
            times = times + ticketsList.get(i).getTime();
        
        }
        
        answer = (sumTickets / times);
        System.out.println("USA TICKET DECAY : " + answer);
        //        
        return answer;
    }
}

1 Resposta

SirDominque

Aqui esta o código Pronto e Funcionando

package Functions;

import java.util.ArrayList;

/**
 *
 * @author André
 */
public class CalculatingTickets {

    ArrayList<Integer> usaTickets = new ArrayList<>();
    ArrayList<Integer> nvaTickets = new ArrayList<>();
    int startUsaTicket, startNvaTicket;
    double queryTimeMinutes = 1;

    public static void main(String args[]) {
        CalculatingTickets ct = new CalculatingTickets(1);
        ct.setUsaTickets(500);
        ct.setUsaTickets(495);
        ct.setUsaTickets(495);

        int size = ct.usaTickets.size();
        //System.out.println(size);


        ct.getUsaTicketLostPerTime();
    }

    public CalculatingTickets(double queryTime) {
        this.queryTimeMinutes = queryTime;
    }

    public void setUsaTickets(int usaTicket) {
        if (usaTicket > 0) {
            usaTickets.add(usaTicket);
        }
    }

    public void setNvaTickets(int nvaTicket) {
        if (nvaTicket > 0) {
            nvaTickets.add(nvaTicket);
        }
    }

    public double getUsaTicketLostPerTime() {
        double time = (usaTickets.size() - 1) * queryTimeMinutes;
        double razao = 0;

        for (int i = 0; i < usaTickets.size() - 1; i++) {
            razao = (usaTickets.get(i) - usaTickets.get(i + 1)) + razao;
        }
        double estimatedTime = (usaTickets.get(usaTickets.size() - 1)) / (razao / time);
        
        System.out.println("Better Estimated Time USA :" + estimatedTime);
        return estimatedTime;

    }
    
    public double getNvaTicketLostPerTime()
    {
        double time = (nvaTickets.size() - 1) * queryTimeMinutes;
        double razao = 0;

        for (int i = 0; i < nvaTickets.size() - 1; i++) {
            razao = (nvaTickets.get(i) - nvaTickets.get(i + 1)) + razao;
        }
        double estimatedTime = (nvaTickets.get(nvaTickets.size() - 1)) / (razao / time);
        
        System.out.println("Better Estimated Time NVA :" + estimatedTime);
        return estimatedTime;
    }
}
Criado 29 de novembro de 2012
Ultima resposta 17 de dez. de 2012
Respostas 1
Participantes 1