Advertisement
Guest User

Robot

a guest
Nov 28th, 2014
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.14 KB | None | 0 0
  1. package Robot;
  2.  
  3. public class Robot {
  4.  
  5.     private String name;
  6.     private String status;
  7.     //1. Standby, 2. Moving 3.Exploring 4.Stopped 5.Returninghome
  8.     private double temperature;
  9.     private double speed;
  10.     private double power;
  11.     private double maxSpeed;
  12.  
  13.  
  14.     public Robot(){
  15.  
  16.     }
  17.  
  18.     public Robot(String name){
  19.         this.name=name;
  20.  
  21.     }
  22.  
  23.     public void robotStatus(String name, String status, double temperature, double speed, int power){
  24.         this.name=name;
  25.         this.status=status;
  26.         this.temperature=temperature;
  27.         this.speed=speed;
  28.         this.power=power;
  29.     }
  30.  
  31.     public void present(){
  32.         System.out.println("Registrando chegada ao Planeta Marte.");
  33.         System.out.println("Data de Pouso: 24 de Outubro de 2020.");
  34.         System.out.println("Horário de Pouso: 00h (Horário da Terra).");
  35.                 System.out.println();
  36.     }
  37.  
  38.     public void continueStory(int num){
  39.                 switch(num) {
  40.                     case 1:
  41.                         System.out.println("\nComeçando a exploração do Terreno. Objetivo: Capturar imagens e reportar para a Base. Aumentar a velocidade em 1 m/s a cada 5 segundos, até chegar a 10 m/s.");
  42.                         break;
  43.                     case 2:
  44.                         System.out.println("\nUma alteração no terreno foi encontrada. O Robô foi parado. Devem ser capturadas 5 imagens e estas devem ser enviadas para a base imediatamente.");
  45.                         break;
  46.                     case 3:
  47.                         System.out.println("\nAs imagens foram capturadas e enviadas para a base. O Robô irá girar 90º para a esquerda e aumentar sua velocidade para 40 m/s, e prosseguir com a exploração.");
  48.                         break;
  49.                     case 4:
  50.                         System.out.println("\nAlerta: Existe possibilidade de descarga da bateria em um local distante do ponto de partida. O Robô deve retornar imediatamente ao ponto de partida.");
  51.                         break;
  52.                     case 5:
  53.                         System.out.println("\nO Robô retornou ao ponto de partida e agora está recebendo um aumento de carga para sua carga máxima. O Robô deve ser colocado em Standby e recomeçar a exploração no dia seguinte.");
  54.                         break;
  55.                 }
  56.     }
  57.  
  58.     public String getName(){
  59.         return this.name;
  60.     }
  61.  
  62.     public void setName(String name){
  63.         this.name=name;
  64.     }
  65.  
  66.     public void setStatus(String status){
  67.         this.status=status;
  68.     }
  69.  
  70.     public String getStatus() {
  71.         return status;
  72.     }
  73.  
  74.     public double getTemperature() {
  75.         return temperature;
  76.     }
  77.  
  78.     public void setTemperature(double temperature) {
  79.         this.temperature = temperature;
  80.     }
  81.  
  82.     public double getSpeed() {
  83.         return speed;
  84.     }
  85.  
  86.     public double getPower() {
  87.         return power;
  88.     }
  89.  
  90.     public void setPower(int power) {
  91.         this.power = power;
  92.     }
  93.  
  94.     public String toString() {
  95.         return "\nRobot Nome:" + name + "\n[Status:" + status + "\n\t Temperatura:"
  96.                 + temperature +"º F" + "\n\t Velocidade Atual:" + speed + " m/s" + "\n\t Bateria Disponível:" + power +"%"+ "]";
  97.     }
  98.  
  99.     public void show(){
  100.         System.out.println(this.toString());
  101.     }
  102.  
  103.     public void zerar(){
  104.         this.speed=0;
  105.         this.temperature=temperature/10;
  106.     }
  107.  
  108.     public void speedUp(int up){
  109.         double auxSpeed = this.speed + up;
  110.         if(auxSpeed <= this.maxSpeed){
  111.             speed=auxSpeed;
  112.             this.temperature=temperature+(up*0.5);
  113.             this.power=power-(up*0.25);
  114.             if(power==0){
  115.                 status="1-Standby";
  116.             }
  117.         }
  118.     }
  119.  
  120.     public void speedUp(){
  121.         double auxSpeed=speed/10;
  122.         this.speed=speed+auxSpeed;
  123.         this.temperature=temperature+(auxSpeed*0.5);
  124.         this.power=power-(auxSpeed*0.25);
  125.         if(power==0){
  126.             status="1-Standby";
  127.         }
  128.     }
  129.  
  130.     public void standBy(){
  131.         this.speed=0;
  132.         this.temperature=0;
  133.         this.status="1-Standby";
  134.     }
  135.  
  136.     public void stop(){
  137.         this.speed=0;
  138.         this.status="4-Stopped";
  139.         this.temperature=temperature/10;
  140.         //Reduzir a temperatura em 10% ou transformar a temperatura em 10% do atual?
  141.  
  142.     }
  143.  
  144.     public void explorer(){
  145.         if(status.equals("4-Stopped")){
  146.             this.status="3-Exploring";
  147.             this.temperature=temperature+20;
  148.             this.power=power-10;
  149.             if(power==0){
  150.                 status="1-Standby";
  151.             }
  152.         }
  153.     }
  154.  
  155.     public void returning(){
  156.         if(status.equals("2-Moving")){
  157.             this.status="5-Returning Home";
  158.         }
  159.     }
  160.  
  161.     public void moving(){
  162.         this.status="2-Moving";
  163.  
  164.     }
  165.  
  166.     public void speedDown(int down){
  167.  
  168.         double auxSpeed=speed-down;
  169.         speed=auxSpeed;
  170.         this.temperature=temperature-(down*0.5);
  171.     }
  172.  
  173.     public void speedDown(){
  174.  
  175.         double auxSpeed=speed/10;
  176.         this.speed=speed-auxSpeed;
  177.         this.temperature=temperature-(auxSpeed*0.5);
  178.  
  179.     }
  180.  
  181.     public void charge(){
  182.         double auxPower=power+10;
  183.         if (auxPower<=100){
  184.             power=auxPower;
  185.         }
  186.     }
  187.  
  188.     public void fullCharge(){
  189.         power=100;
  190.     }
  191.  
  192.     public void takePicture(){
  193.         System.out.println("Imagem Capturada");
  194.     }
  195.  
  196.     public void reportPicture(){
  197.         System.out.println("Enviando imagem para a base.");
  198.     }
  199.  
  200.     public void turnLeft(){
  201.         System.out.println("Girando 90º para a esquerda.");
  202.     }
  203.  
  204.     public void turnRight(){
  205.         System.out.println("Girando 90º para a direita.");
  206.     }
  207.  
  208.     public void attachToCharger(){
  209.         System.out.println("Recebendo Aumento de Carga.");
  210.     }
  211. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement