Quando no s = s+m; da erro no meu codigo de scanner na lina inteira
A atividade é :
Faça um programa que leia um número não determinado de pares de valores [m, n] , todos inteiros e positivos, um par de cada vez, e que calcule e mostre a soma de todos os números inteiros entre m e n (inclusive). A digitação de pares terminará quando m for maior ou igual a n .
-----------------------------------------------CODIGO-------------------------------------------
package Lista2;
import java.util.Scanner;
public class Quest22 {
public static void main(String[] args) {
while (10 < 1){
Scanner reader = new Scanner(System.in);
System.out.println("Digite o lado 1 ");
int m = reader.nextInt();
System.out.println("Digite o lado 1 ");
int n = reader.nextInt();
if (m > n) {
break ;
}
int s =0;
while (m < n){
}
for (int i = 0; m < n;){
s = s+m;
}
System.out.println("soma"+ s);
}
}
}
Corrigindo: Quando usar a classe “Scanner” para ler entrada de dados a partir do TECLADO, utilize sempre “nextLine()”, pois é o único método dessa classe que consome a quebra de linha gerada ao pressionar “ENTER”.
No final de contas resolvi dessa forma:
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
while (10 > 1){
System.out.println("Digite numero M ");
int m = reader.nextInt();
System.out.println("Digite numero N ");
int n = reader.nextInt();
if (m > n) {
break ;
}
int s =0;
while (m <= n){
s = s+m;
m++;
}
System.out.println("soma: "+ s);
}
}