Java fundamentals through coding exercises
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

2.0 KiB

Ohjelmaan on toteutettu valmiina pohja, joka lukee käyttäjältä lukuja listalle. Syötteiden lukeminen päätetään kun käyttäjä syöttää luvun -1.

Lisää ohjelmaan toiminnallisuus, joka lukujen lukemisen jälkeen kysyy käyttäjältä alkuindeksiä ja loppuindeksiä. Tämän jälkeen ohjelman tulostaa listalla olevat luvut käyttäjän syöttämien indeksien välillä. Voit olettaa, että käyttäjä syöttää indeksit, jotka löytyvät listalta.

Pohja: https://github.com/swd1tn002/mooc.fi-2019-osa3/blob/master/src/tehtava08/LuvutRajatullaAlueella.java

Example output:
Syötä kokonaislukuja listalle (-1 lopettaa):
72
2
8
11
-1
Mistä? 0
Mihin? 2
72
2
8

LuvutRajatullaAlueella.java

/* Tässä ei ole käytetty valmista pohjaa */
import java.util.ArrayList;
import java.util.Scanner;
public class LuvutRajatullaAlueella {
public static void main(String[] args) {
Scanner syote = new Scanner(System.in);
int i;
ArrayList<Integer> lukulista = new ArrayList<Integer>();
System.out.println("Syötä kokonaislukuja listalle (-1 lopettaa):");
while (true) {
try {
int luku = syote.nextInt();
if (luku == -1) {
break;
}
lukulista.add(luku);
} catch (NumberFormatException e) {
errorInvalidIntegerInput();
}
}
try {
System.out.print("Mistä? ");
int startInt = syote.nextInt();
System.out.print("Mihin? ");
int endInt = syote.nextInt();
for (i = 0; i < lukulista.size(); i++) {
if (i >= startInt && i <= endInt) {
System.out.println(lukulista.get(i));
}
}
} catch (NumberFormatException e) {
errorInvalidIntegerInput();
}
}
private static void errorInvalidIntegerInput() {
System.err.println("Antamasi syöte ei ole kokonaisluku");
System.exit(1);
}
}