quarta-feira, 26 de julho de 2017

terça-feira, 18 de julho de 2017

Jogo da Velha Parte 2

/* Classe TabuleiroMiserento*/

public class TabuleiroMiserento{
    private int[][] tabuleiro= new int[3][3];
    public TabuleiroMiserento(){
        LimpaOTabuleiro();
    }  
    public void LimpaOTabuleiro(){
        for(int linha = 0 ; linha < 3 ; linha++)
            for(int coluna = 0 ; coluna < 3 ; coluna++)
                tabuleiro[linha][coluna]=0;
    }  
    public void MostraTabuleiro(){
        System.out.println();
        for(int linha = 0 ; linha < 3 ; linha++){      
            for(int coluna= 0 ; coluna < 3 ; coluna++){             
                if(tabuleiro[linha][coluna]==-1){
                    System.out.print(" X ");
                }
                if(tabuleiro[linha][coluna]==1){
                    System.out.print(" O ");
                }
                if(tabuleiro[linha][coluna]==0){
                    System.out.print("   ");
                }          
                if(coluna==0 || coluna==1)
                    System.out.print("|");
            }
            System.out.println();
        }          
    }
    public int getPosicao(int[] tentativa){
        return tabuleiro[tentativa[0]][tentativa[1]];
    }
    public void setPosicao(int[] tentativa, int jogador){
        if(jogador == 1)
            tabuleiro[tentativa[0]][tentativa[1]] = -1;
        else
            tabuleiro[tentativa[0]][tentativa[1]] = 1; 
        MostraTabuleiro();
    }
    public int VerificaAsLinhas(){
        for(int linha = 0 ; linha < 3 ; linha++){
            if( (tabuleiro[linha][0] + tabuleiro[linha][1] + tabuleiro[linha][2]) == -3)
                return -1;
            if( (tabuleiro[linha][0] + tabuleiro[linha][1] + tabuleiro[linha][2]) == 3)
                return 1;
        }     
        return 0;              
    }
    public int VerificaAsColunas(){
        for(int coluna = 0 ; coluna < 3 ; coluna++){
            if( (tabuleiro[0][coluna] + tabuleiro[1][coluna] + tabuleiro[2][coluna]) == -3)
                return -1;
            if( (tabuleiro[0][coluna] + tabuleiro[1][coluna] + tabuleiro[2][coluna]) == 3)
                return 1;
        }      
        return 0;              
    }  
    public int VerificaAsDiagonais(){
        if( (tabuleiro[0][0] + tabuleiro[1][1] + tabuleiro[2][2]) == -3)
            return -1;
        if( (tabuleiro[0][0] + tabuleiro[1][1] + tabuleiro[2][2]) == 3)
            return 1;
        if( (tabuleiro[0][2] + tabuleiro[1][1] + tabuleiro[2][0]) == -3)
            return -1;
        if( (tabuleiro[0][2] + tabuleiro[1][1] + tabuleiro[2][0]) == 3)
            return 1;      
        return 0;
    }
    public boolean MiseraCompleto(){
        for(int linha=0 ; linha<3 ; linha++)
            for(int coluna = 0 ; coluna < 3 ; coluna++)
                if( tabuleiro[linha][coluna]==0 )
                    return false;
        return true;
    }
}










/* Classe PowerRange*/
import java.util.Scanner;
public class PowerRange extends Serumaninho{
    public Scanner entrada = new Scanner(System.in);
    public PowerRange(int jogador){
        super(jogador);
        this.jogador = jogador;
        System.out.println(" Power Range criado!");
        System.out.println(" Digite 1 para cirar o Segundo power Range!");
    }
    /* Deu erro tenho q olhar depois Prof   
    public void PepaPig(int jogador2){
        this.jogador = jogador;
        System.out.println(" Power Range Preto criado!");
    }*/
@Override
    public void jogar(TabuleiroMiserento tabuleiro){
        Tentativa(tabuleiro);
        tabuleiro.setPosicao(tentativa, jogador);
    }
@Override
    public void Tentativa(TabuleiroMiserento tabuleiro){
        do{
            do{
                System.out.print("Diz a Linha: ");
                tentativa[0] = entrada.nextInt();
                if( tentativa[0] > 3 ||tentativa[0] < 1)
                    System.out.println("Essa Linha é inválida Mísera. É 1, 2 ou 3");
            }while( tentativa[0] > 3 ||tentativa[0] < 1);
            do{
                System.out.print("Diz a Coluna: ");
                tentativa[1] = entrada.nextInt();               
                if(tentativa[1] > 3 ||tentativa[1] < 1)
                    System.out.println("Essa Coluna é inválida Mísera. É 1, 2 ou 3");               
            }while(tentativa[1] > 3 ||tentativa[1] < 1);
            tentativa[0]--;
            tentativa[1]--;
            if(!checaTentativa(tentativa, tabuleiro))
                System.out.println("Esse local já foi Escolhido. Tenta outro meu fi.");
        }while( !checaTentativa(tentativa, tabuleiro) );
    }
}



Jogo da Velha Parte 1

 1° Parte
 /* Classe JogoDaVelhiinha*/

import java.util.Scanner;
public class JogoDaVelhiinha {
       public static void main(String[] args) {
            JogoDaVelhiinha jogo = new JogoDaVelhiinha();   
        }
    private TabuleiroMiserento tabuleiro;
    private int rodada=1, vez=1;
    private Serumaninho abestaiado1;
    private Serumaninho abestaiado2;
    public Scanner entrada = new Scanner(System.in);   
    public JogoDaVelhiinha(){
        tabuleiro = new TabuleiroMiserento();
        iniciandoOsSerumaninhos();       
        while( Jogar() );
    }
    public void iniciandoOsSerumaninhos(){
        System.out.println("Quem vai ser o Primeiro Abestado ?");
        if(escolherJogador() == 1)
            this.abestaiado1 = new PowerRange(1);           
        System.out.println("#############################");
        System.out.println("Quem vai ser o Segundo Abestado ?");       
        if(escolherJogador() == 1)
            this.abestaiado2 = new PowerRange(2);       
    }   
    public int escolherJogador(){
        int opcao=0;       
        do{
            System.out.println("1. Power Range ");
            /* System.out.println("2. Power Range Preto\n");*/
            System.out.print("Opção: ");
            opcao = entrada.nextInt();
            if(opcao != 1 && opcao != 2)
                System.out.println("Ops a Opção é inválida! Tente novamente");
        }while(opcao != 1 && opcao != 2);       
        return opcao;
    }   
    public boolean Jogar(){
        if(ganhou() == 0 ){
            System.out.println("########################");
            System.out.println("\nRodada "+rodada);
            System.out.println("É a vez do  'Serumanhinho' " + vez() );           
            if(vez()==1)
                abestaiado1.jogar(tabuleiro);
            else
                abestaiado2.jogar(tabuleiro);                       
            if(tabuleiro.MiseraCompleto()){
                System.out.println("EMPATOU MACHU ! VÁ DENOVO.");
                return false;
            }
            vez++;
            rodada++;
            return true;
        } else{
            if(ganhou() == -1 )
                System.out.println("Há Miseravi o serumaninho 1 ganhou!");
            else
                System.out.println("Há Miseravi o serumaninho 2 ganhou!");           
            return false;
        }           
    }   
    public int vez(){
        if(vez%2 == 1)
            return 1;
        else
            return 2;
    }   
    public int ganhou(){
        if(tabuleiro.VerificaAsLinhas() == 1)
            return 1;
        if(tabuleiro.VerificaAsColunas() == 1)
            return 1;
        if(tabuleiro.VerificaAsDiagonais() == 1)
            return 1;
       
        if(tabuleiro.VerificaAsLinhas() == -1)
            return -1;
        if(tabuleiro.VerificaAsColunas() == -1)
            return -1;
        if(tabuleiro.VerificaAsDiagonais() == -1)
            return -1;       
        return 0;
    }       
}


/* Classe Serumaninho*/

public abstract class Serumaninho {   
    protected int[] tentativa = new int[2];
    protected int jogador;   
    public Serumaninho(int jogador){
        this.jogador = jogador;
    }   
    public abstract void jogar(TabuleiroMiserento tabuleiro);   
    public abstract void Tentativa(TabuleiroMiserento tabuleiro);
    public boolean checaTentativa(int[] tentativa, TabuleiroMiserento tabuleiro){
        if(tabuleiro.getPosicao(tentativa) == 0)
            return true;
        else
            return false;           
    }   
}








sexta-feira, 7 de julho de 2017

URI PROBLEMA: 1176 - Fibonacci em Vetor

import java.io.IOException;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) throws IOException {
  Scanner scan =new Scanner(System.in);
  int T,N;
  long a, b, c;
    a = 0;
    b = 1;
    c = 0;
    long fib[] = new long [61];
    for (int i = 0; i < fib.length; i++) {
fib[i]= c;
a = b;
b = c;
c = a + b;


}
    T = scan.nextInt();
   
    for (int i = 0; i < T; i++) {
N = scan.nextInt();
System.out.println("Fib("+N+") = "+ fib[N]);
}
   
    }

}

URI PROBLEMA: 1154 - Idades

import java.io.IOException;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) throws IOException {
  Scanner scan =new Scanner(System.in);
    double a= 0.0,x=0.0,cont=0.0;
    double z =0;
    double resultado;
  while (a>=0) {
     cont++;
     a=scan.nextDouble();
     if (a>=0){
  x = x + a;
  z = z + 1;
     }
  }
  resultado = x/z;
  System.out.printf("%.2f\n",resultado);
     scan.close();
    }

}

URI PROBLEMA: 1072 - Intervalo 2

import java.io.IOException;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) throws IOException {
     int N , X, in = 0, out = 0;
  int a =10,b=20 ;
 
  Scanner scan =new Scanner(System.in);
 
  N =scan.nextInt();
  for (int i = 1; i <= N; i++) {
   X =scan.nextInt();
   if (X >= a && X <= b) {
    in += 1;
   }else {
    out += 1;
   }
  }
  System.out.print(in+" in\n"+out +" out\n");
    }

}

PURI PROBLEMA: 1064 - Positivos e Média

import java.io.IOException;
import java.util.Scanner;

public class Main {

public static void main(String[] args) throws IOException {
Scanner scan = new Scanner(System.in);
int x=0;

float soma=0;
float vet[] = new float[6];
for (int i = 0; i < 6; i++) {
vet[i] = scan.nextFloat();

}
for (int i = 0; i <= vet.length-1; i++) {
if (vet[i] > 0) {
x++;
soma = soma + vet[i];
}
}
System.out.println(x + " valores positivos");
System.out.printf("%.1f%n", soma/x);

}
}
Postagens mais recentes Postagens mais antigas Página inicial