Java - Ayuda con un código

 
Vista:

Ayuda con un código

Publicado por Oriph (1 intervención) el 29/06/2018 22:16:14
Buenas tardes, tengo un código que quiero solucionar pero no hallo la forma de hacerlo. La cuestión es que debo hacer que la primera cantidad en la suma sea el total de la amplitud máxima por el primer valor del vector, y la siguiente sea entre el segundo valor, mientras la suma no pase de la cantidad ingresada, debe regresar 1, y cuando sobrepase esta, debe regresar 0. Pero como ven, ya me atoré y no se como seguir.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static void main(String[] args) {
    Scanner lee = new Scanner(System.in);
    double [] vector = {2,4,8,16,32,64,128,256};
    double amplitudMaxima = 50;
    System.out.println("Dame una cantidad entre 0.0 y 50.0");
    double cantidad = lee.nextDouble();
    double suma = 0;
    int b = 0;
    // CODIFIQUE AQUI
    if (cantidad<amplitudMaxima) {
        suma= (amplitudMaxima/vector[1]);
        if (suma<cantidad);{
            b=1;
 
        }
 
    } else {
        System.out.println("ingrese una cantidad correcta");
    }
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
Imágen de perfil de kingk
Val: 247
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con un código

Publicado por kingk (108 intervenciones) el 01/07/2018 00:59:22
Hola, podrias hacerlo asi:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public static void main(String[] args) {
    Scanner lee = new Scanner(System.in);
    double [] vector = {2,4,8,16,32,64,128,256};
    double amplitudMaxima = 50;
    System.out.println("Dame una cantidad entre 0.0 y 50.0");
    double cantidad;
    double suma = 0;
    int b = 0,j=0;
    do{
        cantidad = lee.nextDouble();
        if (cantidad<amplitudMaxima) {
            while(suma<cantidad){
                suma= (amplitudMaxima/vector[j]);
                if (suma<cantidad);{
                    b=1;
                   j++;
                }else{ b=0; }
            }
        } else {
            System.out.println("ingrese una cantidad correcta");
            while(cantidad<amplitudMaxima);
        }
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