Witam, mam problem z tym zadaniem, jako wynik wyświetla mi 16 :( Mógłby mnie ktoś nakierować?
Pozdrawiam, Sylwia :)
W pliku c:\Temp\iter.txt podane są trzy liczby całkowite: start end limit.
Napisać program wczytujący te trzy liczby i sumujący liczby całkowite od start do end, ale przerywającą sumowanie gdy wartość sumy osiągnie lub przekroczy zadane ograniczenie limit.
Program ma wypisać na konsoli jedną liczbę: wynik sumowania.
Dla przykładu, jeśli w pliku c:\Temp\iter.txt podano:
1 3 6
to na konsoli uzyskamy:
6
Nazwa pliku, jego postać oraz postać wyniku na konsoli jest obowiązkowa. Rozwiązanie nie spełniające tych wymagań otrzymują 0 punktów.
Rozwiązania z błędnym wynikiem otrzymują 0 punktów.
Ci z Państwa którzy korzystają z innych systemów plikowych niż obecne w Windows testują program w swoim systemie, po czym przed uploadem zamieniają w kodzie nazwę pliku na wymaganą.
Uwaga: proszę w żadnym razie nie linkować pliku jako zasobu do projektu Eclipse.
package Zadania5;
import java.io.*;
import java.util.*;
public class Iter {
public static void main(String[] args) throws FileNotFoundException {
File plik = new File("c:/Temp/iter.txt");
Scanner scan = new Scanner (new File("c:/Temp/iter.txt"));
int start=0;
int sum=0;
int end=0;
int limit=0;
start = scan.nextInt();
end = scan.nextInt();
limit = scan.nextInt();
for (int i = start; i <= end && sum <= limit; i++)
sum += i;
try {
for (Scanner sc = new Scanner(plik); sc.hasNextInt(); sum += sc.nextInt());
System.out.println(sum);
} catch (Exception exc) {
System.out.println("exception");
}
}
}