BromsMedlem sedan sep. 2002188 inlägg Tänkte göra ett program som läser in en text från en textfil, och beräknar antalet förekommande a,b,c etc etc, och summerar detta i ett histogram med en * för varje funnet exemplar, och skriver det sedan till en annan textfil, typ:
inFil.txt:
jahaaaaaaaaaa
utFil.txt:
a: *********** (11 st)
h: * (1 st)
j: * (1 st)
Är det smartast att göra en array bokstäver[] som redan från början innehåller 29 platser, varje innehållande ett objekt med plats för bokstaven och antalet funna exemplar?
t.ex. Bokstav(char b, int a) //b= en bokstav,t.ex. m, och a=antalet exemplar
Några idéer? Ingen som har sett något liknande redan gjort som man kan kika på?
BromsMedlem sedan sep. 2002188 inlägg Jag har börjat med programmet ovan, gjort en Bokstavs klass, en Alfabetsklass innehållande arrayen med plats för 29st Bokstavsobjekt, och så en Histogram fil, testprogrammet.. nu till frågan:
Om jag innan inläsningen från filen vill börja med att fylla arrayen med objekt innehållande (char bokstaven, int antalet_funna), från bokstav a-ö, hur gör jag då?? iställer för att skriva massa onödig kod kan man inte köra en for-sats och slinga igenom arrayen och fylla den med hjälp av varje bokstavs ASCII-nummer? har kikat på några sådana tabeller, men fixar inte själva tillämpningen av informationen på sådant sätt att jag i en for-sats kan åstadkomma det ovan önskade..
Uppskattar om någon kunde hjälpa mig med denna lilla fundering..gärna med ett enkelt exempel..
Tänkte mig ungefär enligt uppgiften på: http://www.cs.umu.se/kurser/TDBA62/VT03/uppgifter/LL5/LL5.html punkt 5-6, hittade dock bara uppgifterna, inga exempel...
Något i den här stilen kanske:
int[] tecken = new int[255];
char c = // läses från filen.
if(c < 0 || c > 255) {
tecken[0] = tecken[0] + 1; // eller tecken[0]++
} else {
tecken[c] = tecken[c] + 1; // eller tecken[c]++
}