Java - Clase Robot

 
Vista:
sin imagen de perfil
Val: 12
Ha aumentado su posición en 6 puestos en Java (en relación al último mes)
Gráfica de Java

Clase Robot

Publicado por Francisco (5 intervenciones) el 14/05/2019 15:53:21
Hola, necesitaria si me pueden una mano con este ejercicio, me falta lineas de codigos que no me doy cuenta como ponerla, abajo paso lo que pude hacer. Desde ya gracias!.


1) Se debe crear una clase Robot que contenga los siguientes atributos
Nombre
Edad
CuadrasRecorridas
Cansado 0=no / 1=si

Esta clase debe tener un constructor que inicialice el Nombre y la Edad del robot, y predetermine el valor “0” al atributo “cansado”

Además de sus métodos set y get debe contener un método propio llamado “Caminar” que recibe un valor int, el cual incrementará el atributo “CuadrasRecorridas” y devolverá un mensaje teniendo en cuenta las cuadras recorridas hasta el momento:

Si las cuadras recorridas hasta el momento no superan las 100 el mensaje dirá:
“He caminado con gusto las xx cuadras que me solicito”

Si las cuadras recorridas hasta el momento superan las 100 el mensaje dirá:
“Ya me ha hecho caminar xx cuadras y necesito descansar”

NOTA: Cuando las cuadras recorridas superan las 100 se debe cambiar automáticamente el valor al atributo “Cansado a “1”

2) CREACION DE LA CLASE PRINCIPAL
Crear una clase Principal para que instancie la clase Robot y luego a través de su constructor se ingrese un nombre y una edad para el mismo.
Luego le debemos solicitar al operador que le al robot la orden para que camine una determinada cantidad de cuadras invocando al método correspondiente. Esta orden se debe repetir de manera continua hasta que el robot devuelva el mensaje que ya no puede caminar debido a su cansancio. En ese momento termina la ejecución del programa.
La cantidad de cuadras a caminar deben ser capturadas por el teclado.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
public class Robot {
 
    public String nombre;
    public int edad;
    public int cuadras;
    public int cansado;
 
 
 
    public int getCansado() {
        return cansado;
    }
 
    public void setCansado(int cansado) {
        this.cansado = cansado;
    }
 
    public int getCuadras() {
        return cuadras;
    }
 
    public void setCuadras(int cuadras) {
        this.cuadras = cuadras;
    }
 
    public int getEdad() {
        return edad;
    }
 
    public void setEdad(int edad) {
        this.edad = edad;
    }
 
    public String getNombre() {
        return nombre;
    }
 
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
 
    public Robot(String nombre, int edad, int cuadras, int cansado) {
        this.nombre = nombre;
        this.edad = edad;
        this.cuadras = cuadras;
        this.cansado = cansado;
    }
 
 
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import java.util.Scanner;
public class Main {
 
    public static void main(String[] args){
 
        Robot r1 = new Robot("max", 18, 0, 0);
        Scanner teclado = new Scanner(System.in);
        System.out.println("Intruduce su nombre: ");
        String nombre = teclado.nextLine();
        System.out.println("Introduce tu edad: ");
		int edad= teclado.nextInt();
        int cuadras_avanzar = teclado.nextInt();
        teclado.close();
 
        while(true){
 
            if(r1.cuadras<100){
                r1.cuadras++;
                System.out.println(r1.getCuadras());
 
            }
            else{
                r1.setCansado(1);
                System.out.println("estoy cansado, mi atributo cansado ahora es: " + r1.getCansado());
                break;
            }
 
        }
 
 
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
Imágen de perfil de Rodrigo
Val: 2.041
Plata
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Clase Robot

Publicado por Rodrigo (623 intervenciones) el 14/05/2019 17:26:13
Te falta agregar el metodo caminar
El constructor esta recibiendo mas parametros de los que te indican en El enunciado.
En El main, en vez de hacer logica con los pasos, solo tienes que llamar el metodo caminar y preguntarle al robot si esta cansado y terminar.
Es el metodo caminar el que tiene que hacer la logica que tienes en el main.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Omar
Val: 77
Ha disminuido su posición en 8 puestos en Java (en relación al último mes)
Gráfica de Java

Clase Robot

Publicado por Omar (24 intervenciones) el 14/05/2019 17:58:15
Hola Francisco en el punto 2 te dice lo siguiente:
*Crear una clase Principal para que instancie la clase Robot y luego a través de su constructor se ingrese un nombre y una edad para el mismo.*

Asi que el constructor deberia de ser
1
2
3
4
public Robot(String nombre, int edad) {
    this.nombre = nombre;
    this.edad = edad;
}

Además te ponen lo siguiente :
Además de sus métodos set y get debe contener un método propio llamado “Caminar” que recibe un valor int, el cual incrementará el atributo “CuadrasRecorridas” y devolverá un mensaje teniendo en cuenta las cuadras recorridas hasta el momento:

Entonces lo que yo haria seria dentro de la clase robot crear.

Yo dejaria de la siguiente manera la clase Robot


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
public class Robot {
 
    public String nombre;
    public int edad;
    public int cuadras;
    public int cansado;
 
 
    public int getCansado() {
        return cansado;
    }
 
    public void setCansado(int cansado) {
        this.cansado = cansado;
    }
 
    public int getCuadras() {
        return cuadras;
    }
 
    public void setCuadras(int cuadras) {
        this.cuadras = cuadras;
    }
 
    public int getEdad() {
        return edad;
    }
 
    public void setEdad(int edad) {
        this.edad = edad;
    }
 
    public String getNombre() {
        return nombre;
    }
 
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
 
    public Robot(String nombre, int edad) {
        this.nombre = nombre;
        this.edad = edad;
    }
 
    public  String caminar(int valor){
        this.cuadras= cuadras + valor;
        if(cuadras>100) {
            this.cansado=1;
            return "Ya me ha hecho caminar "+cuadras+" cuadras y necesito descansar.";
        }else {
            return "He caminado con gusto las "+cuadras+" cuadras que me solicito.";
        }
    }
}


Y la Clase Main

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;
public class Main {
 
    public static void main(String[] args){
        Scanner teclado = new Scanner(System.in);
        System.out.println("Intruduce su nombre: ");
        String nombre = teclado.nextLine();
        System.out.println("Introduce tu edad: ");
		int edad= teclado.nextInt();
 
		Robot r1 = new Robot(nombre, edad); //Se inicializa con el nombre y la edad
        r1.setCansado(0); //Se inicializa con 0  por que aun no se cansa el chinga robot
 
        while(r1.getCansado()<1) {
    		System.out.println("Disculpe patroncito, ¿cuantas cuadras quiere que camine XD?"); //Se pide amablemente al hdp que ingrese cuantas cuadras caminará el pu... robot
    		int cuadras_avanzar = teclado.nextInt();
    		System.out.println(r1.caminar(cuadras_avanzar));
        }
 
        teclado.close();
 
    }
}



Espero te sirva y disculpa :D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Rodrigo
Val: 2.041
Plata
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Clase Robot

Publicado por Rodrigo (623 intervenciones) el 14/05/2019 18:01:08
Es el constructor el que tiene q establecer el valor de cansado, no el main.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 12
Ha aumentado su posición en 6 puestos en Java (en relación al último mes)
Gráfica de Java

Clase Robot

Publicado por Francisco (5 intervenciones) el 14/05/2019 21:41:43
jajajaja listo, ya lo tengo andando. Muchisimas graciass
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 12
Ha aumentado su posición en 6 puestos en Java (en relación al último mes)
Gráfica de Java

Clase Robot

Publicado por Francisco (5 intervenciones) el 14/05/2019 21:42:25
jajajajajajaja listo, ya lo tengo andando. Muchisimas graciass
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar