Estoy tratando de tomar la entrada en forma específica con espacios separados

Mercury1337:

Estoy intentando tomar la entrada en forma específica con primera línea que contiene número de consultas y siguiendo líneas que contienen cada una cuatro enteros separados por espacios. Traté de escribir como el siguiente código, pero estoy consiguiendo el error "no puede encontrar símbolo". Por ejemplo :-

1
1 1 3000 100000000
2
5 5 5000 100020000
7 7 2444 21412414124
import java.io.*;
import java.util.*;

public class Solution {

    public void solveProb(int a, int d, int n, int x) {
        System.out.println(a+d + n + x);
    }

    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int q = scan.nextInt();
        while (q > 0) {
            String[] s = scan.nextLine().split(" ");
            solveProb(Integer.parseInt(s[0]), Integer.parseInt(s[1]), Integer.parseInt(s[2]), Integer.parseInt(s[3]));
            q-- ;
        }



    }
}
Nexevis:

Usted está utilizando Integer.parseInt(String[0])con String[0]cuando se debe utilizar s[0]y así sucesivamente con cada uno de los otros. Se llama a matrices usando variableName[index].

Además de llamar solveProbque sea necesario para que sea public static voido crear una Objectde las clases Solutioncon Solution sol = new Solution()y decir que es consol.solveProb(VALUES)

EDIT: Para fijar el NumberFormatExceptioncomplemento scan.nextLine();antes de que el whilebucle de este modo:

    public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);
        int q = scan.nextInt();
        scan.nextLine();
        while (q > 0) 
        {
            String[] s = scan.nextLine().split(" ");
            solveProb(Integer.parseInt(s[0]), Integer.parseInt(s[1]), Integer.parseInt(s[2]), Integer.parseInt(s[3]));
            q-- ;
        }     
    }

    public static void solveProb(int a, int d, int n, int x) 
    {
        System.out.println(a+d + n + x);
    }

Es necesario para llegar a la siguiente línea después de usar nextIntya que está intentando llamar nextLiney leerlo sin tener que pasar a la siguiente línea en primer lugar.

Mantenga el interior del bucle de la misma, no quite la otra nextLine.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=236329&siteId=1
Recomendado
Clasificación