Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Stránky: 1
Ahoj,
chtěl bych požádat někoho, kdo se trochu vyzná v Javě (apod.), jestli by mi nemohl shlédnout jeden úsek kódu. Jde o program, který načte číslice z textového souboru (pouze 1-9) a následně zobrazí na výstupu něco jako:
- číslice 1 je v souboru a-krát
- číslice 2 je v souboru b-krát
- ... atd.
Kód je zkompilovatelný, ale bohužel zobrazuje správný počet pouze u číslice "1" (která se zjišťuje v algoritmu jako první). U dalších program vypisuje hodnotu "0-krát". Opakované prohledávání jsem řešil for cyklem, ale zřejmě ne úplně dobře. :-/ Zasekl jsem se a nemůžu odhalit chybu! :-)) Pomůže někdo?
Problém je jistě v části:
for (byte k = 1; k < 10; k++) {
byte x = 0;
while ((strLine = br.readLine()) != null) {
String[] s = strLine.split(" ");
for (int i = 0; i < s.length; i++) {
if (s[i].equals(String.valueOf(k))) {
x += 1;
}
}
}
System.out.println(k+" je v souboru "+x+" krat");
}
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class dva {
public static void main(String[] args) {
try {
FileInputStream fis = new FileInputStream("soubor.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String strLine;
for (byte k = 1; k < 10; k++) {
byte x = 0;
while ((strLine = br.readLine()) != null) {
String[] s = strLine.split(" ");
for (int i = 0; i < s.length; i++) {
if (s[i].equals(String.valueOf(k))) {
x += 1;
}
}
}
System.out.println(k+" je v souboru "+x+" krat");
}
}
catch(Exception e) {
System.out.println(e);
}
}
}soubor.txt:
1 4 9 8 9
1 5 4 3 1 5 1 7 1 9
2 1 2 3 2 4 2 7 3 9
3 1 3 3 3 5 3 7 3 9
4 1 4 3 4 5 4 7 4 9
5 1 5 3 5 4 5 7 5 9
6 1 6 3 6 6 7 6 9 4
7 4 7 3 7 5 7 7 7 9
8 1 8 3 8 5 8 7 8 9
9 1 9 3 9 5 9 7 9 9
Offline
Stránky: 1