Java - Estoy atascaco !!!!

   
Vista:

Estoy atascaco !!!!

Publicado por Sergio (4 intervenciones) el 21/10/2014 16:40:55
Hola a tod@s.
Estoy intentando acabar un programa que dando un menu con 3 opciones, el largo y amcho de una habitacion , me diga como resultado el precio que costaria y cuantas baldosas necesito, os paso el codigo?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Estoy atascaco !!!!

Publicado por Tom (912 intervenciones) el 21/10/2014 17:27:38
Ome, podrías comentar en qué estás atascado, además de pegar el código necesario para aclararse.
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

Estoy atascaco !!!!

Publicado por Sergio (4 intervenciones) el 21/10/2014 17:38:06
Te lo marco donde no me deja compilar, el programa consiste, en elegir, una opcion de baldosa con su precio, ese es el menu, te pide lo largo y ancho de la habitacion y esto lo pasa a metros cuadrados. Pero luego quiero que salga por pantalla el numero de baldosas y el precio (y eso no me sale) aunque creo que el calculo esta bien( la formula).

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package enrajolar;
 
import java.util.Scanner;
 
/**
 *
 * @author Sergi
 */
public class Enrajolar {
 
    public static final double preu1 = 16.27;
    public static final double preu2 = 14.12;
    public static final double preu3 = 13.20;
 
 
    public static void main(String[] args) {
        Scanner lector = new Scanner(System.in);
 
        float x;// ,y,llargada,ampla,metres,total,rayola;
        float y;
        float llargada;
        float ampla;
        float metres;
        float total;
        float rayola;
 
 
//Entra al menu de opcions
System.out.println("Quina opció vols de rajola? ");
System.out.println("[1] Dimensió 0,60x0,60m");
System.out.println("[2] Dimensió 0,50x0,50m");
System.out.println("[3] Dimensió 0,45x0,45m");
System.out.println("Selecciona l'opció [1-3]: ");
int opcio = lector.nextInt();
lector.nextLine();
 
 
    System.out.print("Opcions de compra");
    System.out.print("____");
    System.out.print("Introdueix la llargada de la habitació: ");
     llargada = lector.nextFloat();
    lector.nextLine();
    System.out.print("Introdueix la amplada de la habitació: ");
     ampla = lector.nextFloat();
    lector.nextLine();
 
    metres = llargada * ampla;
 
//Comença el switch
 
switch(opcio)
{
//PAS I
case 1:
 
 
System.out.print("Per enrajolar una habitacio de " +metres"");
System.out.print("es necesiten :" + rayola + "de tipus 1");
System.out.print("Y el seu cost total es:" +total);
    x = llargada /(60/100);
    y = ampla / (60/100);
    rayola = x * y;

total = rayola * preu1; aqui esta mi fallo

 
break;
//PAS II
 
 
case 2:
System.out.print("Per enrajolar una habitacio de " +metres);
System.out.print("es necesiten :" +rayola+ "de tipus 1");
System.out.print("Y el seu cost total es:" +total);
    x = llargada / (50/100);
    y = ampla / (50/100);
    rayola = x * y;
    total = rayola*preu2;
 
 break;
//PAS III
case 3:
System.out.print("Per enrajolar una habitacio de " +metres);
System.out.print("es necesiten :" +rayola+"de tipus 1");
System.out.print("Y el seu cost total es:" +total);
    x = llargada / (45/100);
    y = ampla / (45/100);
    rayola = x * y;
    total = rayola * preu3;
break;
 
default:
 
     System.out.println("No s'ha introduït un número enter");
     System.out.println(lector.hasNextInt());
     System.out.println(lector.next());
     lector.next();
}
 
}
}
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

Estoy atascaco !!!!

Publicado por Sergio (4 intervenciones) el 21/10/2014 20:49:33
o este otro.

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package enrajolar;
 
import java.util.Scanner;
 
 
/**
 *
 * @author Sergi
 */
public class Enrajolar {
 
public static final double preu1 = 16.27;
public static final double preu2 = 14.12;
public static final double preu3 = 13.20;
 
public static void main(String[] args) {
        // TODO code application logic here
        Scanner lector = new Scanner(System.in);
 
 
   //Entra al menu de opcions
System.out.println("Quina opció vols de rajola? ");
System.out.println("[1] Dimensió 0,60x0,60m");
System.out.println("[2] Dimensió 0,50x0,50m");
System.out.println("[3] Dimensió 0,45x0,45m");
System.out.println("Selecciona l'opció [1-3]: ");
int opcio = lector.nextInt();
lector.nextLine();
 
if (opcio==1){
     System.out.print("Opcions de compra");
    System.out.print("____");
    System.out.print("Introdueix la llargada de la habitació: ");
     float llargada = lector.nextFloat();
     lector.nextLine();
    System.out.print("Introdueix la amplada de la habitació: ");
     float ampla = lector.nextFloat();
    lector.nextLine();
 
    float metres = llargada * ampla;
    double x = llargada /(60/100);
    double y = ampla / (60/100);
    double rayola = x*y;
    double total  = rayola*preu1;
 
System.out.print("Per enrajolar una habitacio de " + metres);
System.out.print("es necesiten :" +rayola+ "de tipus 1 ");
System.out.print("Y el seu cost total es:" +total);
}
 else if (opcio==2){
 
     System.out.print("Opcions de compra");
    System.out.print("____");
    System.out.print("Introdueix la llargada de la habitació: ");
     float llargada = lector.nextFloat();
     lector.nextLine();
    System.out.print("Introdueix la amplada de la habitació: ");
     float ampla = lector.nextFloat();
    lector.nextLine();
 
    float metres = llargada * ampla;
    double x = llargada /(60/100);
    double y = ampla / (60/100);
    double rayola = x*y;
    double total  = rayola*preu2
 
System.out.print("Per enrajolar una habitacio de " + metres);
System.out.print("es necesiten :" +rayola+ "de tipus 1 ");
System.out.print("Y el seu cost total es:" +total);
 
}
 else if (opcio==3){
 
     System.out.print("Opcions de compra");
    System.out.print("____");
    System.out.print("Introdueix la llargada de la habitació: ");
     float llargada = lector.nextFloat();
     lector.nextLine();
    System.out.print("Introdueix la amplada de la habitació: ");
     float ampla = lector.nextFloat();
    lector.nextLine();
 
    float metres = llargada * ampla;
    double x = llargada /(60/100);
    double y = ampla / (60/100);
    double rayola = x*y;
    double total  = rayola*preu3;
 
System.out.print("Per enrajolar una habitacio de " + metres);
System.out.print("es necesiten :" +rayola+ "de tipus 1 ");
System.out.print("Y el seu cost total es:" +total);
 }
   else{
                System.out.print("Error en el valor introduit ");
            }
    }
 
}
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
Imágen de perfil de Fernando

Estoy atascaco !!!!

Publicado por Fernando (82 intervenciones) el 22/10/2014 01:03:00
en base al primer codigo que enviastes te dire que en el case1 te falta un signo mas en la concatenacion deberia de quedarte asi
switch(opcio) { //PAS I
case 1: System.out.print("Per enrajolar una habitacio de " +metres+"");
System.out.print("es necesiten :" + rayola + "de tipus 1");
la otra alerta que me esta dando el compilador es que unas variables las tienes en float y otras en double, en lo personal te recomiendo que uses solo un tipo de variable ya que entre ellas no es recomendado hacer operaciones , por lo que a mi me gusta solo usar double, pero creo que ese es el otro erro que tienes ,

saldes
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

Estoy atascaco !!!!

Publicado por Sergio (4 intervenciones) el 22/10/2014 18:36:15
Ok lo he solucionado, pero sigue sin dejar que funcione, me da los metros cuadrados, pero no me dice, ni las baldosas, ni el prrecio (lo tengo en public como fijo).
Que falla??
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