Printing the Consecutive Numbers whose sum adds upto the number entered. Like
_ 9 = 4+5, 2+3+4
_ 27 = 2+3+4+5+6+7, 8+9+10, 13+14.
import java.util.Scanner;
class ConsecSum {
int num;
public static void main(String[] args) {
ConsecSum a = new ConsecSum();
a.input();
a.sum();
}
void input() {
Scanner sc = new Scanner(System.in);
System.out.print("Enter a number: ");
num = sc.nextInt();
if (num < 0) {
System.out.println("Not a positive Number");
System.exit(0);
}
sc.close();
}
void sum() {
int found = 0;
for (int x = 1; x < num; x++) {
int sum = 0;
String sm = "";
for (int t = x; t < num; t++) {
sum += t;
sm += String.valueOf(t);
if (sum == num) {
System.out.println(sm);
found++;
break;
} else if (sum >= num)
break;
sm += " + ";
}
}
if (found == 0)
System.out.println("No Consecutive Sum found");
}
}
Name | Type | Description |
---|---|---|
global | ||
num | int | input number |
void input() | ||
sc | Scanner | Scanner object to take user input |
void sum() | ||
found | int | number of consecutive sums found |
x, t | int | countr variables |
sum | int | stores the sum of consecutive numbers |
sm | String | stores the consecutive numbers representatuon as a string |
void main() | ||
a | ConsecSum | object of the class ConsecSum to invoke its methods |