Javaprogrammering, hjälp att skriva kod.|Programmering / Grafisk formgivning|Forum|Nordichardware

Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
The forums are currently locked and only available for read only access
sp_Feed sp_TopicIcon
Javaprogrammering, hjälp att skriva kod.
Jolleman
Almost a full-blooded keyboard-warrior
Medlem
Forum Posts: 172
Member Since:
August 2, 2003
sp_UserOfflineSmall Offline
1
November 21, 2005 - 2:21 pm
sp_Permalink sp_Print

Sitter här och försöker göra vad som ni erfarna programmerare nog tycker är hur enkelt som helst men för mig som total nybörjare står det står det helt still i skallen.
Kommer nog behöva hjälp med ett antal (högst 5 wink) program men börjar med det jag håller på med nu:

Jag ska skriva en metod som tar emot två stycken strängar. För enkelhetens skull säger vi att de heter string1 och string2.
Metoden ska sen söka igenom sträng1 efter hur många gånger sträng2 finns där.
ex. sträng1:"aa sldkj laasdkjf lsdaaaaa"
sträng2:"aa"

Resultatet ska då bli 4.

Har fått tips på att det ska gå att göra med "index.of" men fattar inte alls hur jag ska göra. Jag har kollat både suns java api-bibliotek och informationen i netbeans om det men fattar inte.
Tacksam för all hjälp jag kan få.

jonaz
Kommer du hit ofta?
Medlem
Forum Posts: 940
Member Since:
May 8, 2001
sp_UserOfflineSmall Offline
981181
November 21, 2005 - 7:29 pm
sp_Permalink sp_Print

Här kommer ett förslag till lösning. Har försökt förklara lite grann, hoppas att du förstår. Lade till en alternativ lösning också mest för skojs skull.


private int count( String string1, String string2 ) {
int index = 0;
int count = 0;
// Vi kör så länge index inte är -1 eftersom det betyder att strängen inte hittades
// Första gången så kommer det ju alltid att funka eftersom index är noll från början
// En del skulle nog tycka att en do-while vore snyggare här men jag och många med mig undviker denna form, en smaksak
while( index != -1 ) {
// Här ber vi om index för strängen vi söker efter, vi letar från index (som är noll från
// början men kommer att öka för varje sträng vi hittar
index = string1.indexOf(string2, index);
// Om index är -1 hittades inget och while-loopen kommer att avslutas
// Om index inte är -1 så räknar vi upp antal hittade strängar + att vi ökar värdet
// på index med lika många tecken som den strängen som vi letar efter är lång ( 2 i detta fall)
if( index != -1 ) {
count++;
index += string2.length();
}
}
// Returnera resultatet
return count;
}

private int count2( String string1, String string2 ) {
int index = 0;
int count = 0;
while( (index = string1.indexOf(string2, index)) != -1 ) {
index += string2.length();
count++;
}
return count;
}

Desktop: Gigabyte GA-MA770-DS3 | AMD Phenom II 955 BE | 8GB PC6400 | Samsung 1TB + 500GB | Powercolor HD3870
3DMark 2006: 11932 3DMark Vantage: P5137
Laptop: Macbook Pro 2012 | 8GB | Samsung 830 128GB SSD
HTPC: Mac Mini | 3GB | 500GB

Jolleman
Almost a full-blooded keyboard-warrior
Medlem
Forum Posts: 172
Member Since:
August 2, 2003
sp_UserOfflineSmall Offline
981310
November 21, 2005 - 10:45 pm
sp_Permalink sp_Print

Jag tackar så enormt mycket.

Och nu behöver jag hjälp med nästa program. 🙁
Denna gång är det med arrayer. Det är game of life jag ska göra.
Vad prorammet ska göra har jag mer eller mindre listat ut.
En 10*10 2-dimensionell array. För att göra det enkelt kan denna förstoras till 12*12 (förklaring kommer snart).
Denna ska sökas igenom och har en viss position tre "levande" (1) grannar så börjar punkten "leva" (0->1). Har punkten två levande grannar överlever den, alltså fortsätter vara en 1. I övriga fall dör den (1->0). Sen ska det hela skrivas ut.
Varför nu arrayen ska vara 12*12 är för annars kommer ju sökfunktionen gå utanför arrayen och det blir fel. Men genom att säga att den bara ska söka igenom 10*10 så blir det rätt.

Hur arrayen ska se ut vid start. 12*12 är den nu.

000000000000
000000000000
000000000000
000000000000
000000000000
000000110000
000001100000
000000100000
000000000000
000000000000
000000000000
000000000000

Hoppas det inte är för rörigt. Om det hjälper så ser nästa steg i "livsprocessen" ut så här.

000000000000
000000000000
000000000000
000000000000
000000000000
000001110000
000001000000
000001100000
000000000000
000000000000
000000000000
000000000000

En hemsida som förklararar bättre än vad jag gör. http://www.math.com/students/w...../life.html

Nu behöver jag huvudsakligen hjälp med hur själva sök och kolla grannar funktionerna ska vara. Eller ja, det blir ju mer eller mindre hela programmet. embarassed

squarepusher
Member
Medlem
Forum Posts: 2154
Member Since:
May 29, 2001
sp_UserOfflineSmall Offline
981405
November 22, 2005 - 10:46 am
sp_Permalink sp_Print

Eftersom du själv säger att du vill att någon annan i princip ska göra hela programmet åt dig, så sök på google och sno källkoden.

jonaz
Kommer du hit ofta?
Medlem
Forum Posts: 940
Member Since:
May 8, 2001
sp_UserOfflineSmall Offline
981449
November 22, 2005 - 12:55 pm
sp_Permalink sp_Print

Den andra uppgiften borde inte heller vara så svår...

* Skapa en int-matis på 10x10 med startvärden. ( int[][] matris = ...)
* Gå igenom alla positioner med hjälp av 2 for-loopar
* För varje position, kolla hur många ettor som finns runtomkring men se till att inte hamn utanför matrisen.

Du har ju de två for-looparna som har en av positionerna var (t.ex. x & y). Du vet ju också storleken på matrisen oavsett hur stor du gjort den -> matris[0].length och matris[0][0].lengt (med antagandet att alla arrayer i arrayen när är lika stora). Du kan annars använda 10 eftersom du ju vet att det är både "bredden" och "längden" på matrisen.

När du räknar antal ettor runtomkring måste du såklart kolla så att du inte hamnar utanför matrisen. Ingen av axlarna får var mindre än noll eller större än längden, då är det bara att låta bli att avläsa den positionen.

Om x=5 och y=0 (position noll i femte arrayen)

matris[x][y-1] - Utanför
matris[x][y+2] matris[x-1][y-1] - Utanför
matris[x-1][y] matris[x-1][y+1] matris[x+1][y-1] - Utanför
matris[x+1][y] matris[x+1][y+1]

Denna lösning använder inte "fusket" med 12x12 matrisen då du ju inte behöver kolla om du kommer utanför. Dock måste du ju ha startvärdet på 1 i for-looparna och sluta snurra innan sista.

Desktop: Gigabyte GA-MA770-DS3 | AMD Phenom II 955 BE | 8GB PC6400 | Samsung 1TB + 500GB | Powercolor HD3870
3DMark 2006: 11932 3DMark Vantage: P5137
Laptop: Macbook Pro 2012 | 8GB | Samsung 830 128GB SSD
HTPC: Mac Mini | 3GB | 500GB

jonaz
Kommer du hit ofta?
Medlem
Forum Posts: 940
Member Since:
May 8, 2001
sp_UserOfflineSmall Offline
981453
November 22, 2005 - 1:05 pm
sp_Permalink sp_Print

squarepusher wrote: Eftersom du själv säger att du vill att någon annan i princip ska göra hela programmet åt dig, så sök på google och sno källkoden.

Jag kanske var lite väl "snäll" (han bad ju faktiskt inte om en komplett lösningen i sin första fråga), men nu blir det andra bullar som du ser ovan! 😉

Desktop: Gigabyte GA-MA770-DS3 | AMD Phenom II 955 BE | 8GB PC6400 | Samsung 1TB + 500GB | Powercolor HD3870
3DMark 2006: 11932 3DMark Vantage: P5137
Laptop: Macbook Pro 2012 | 8GB | Samsung 830 128GB SSD
HTPC: Mac Mini | 3GB | 500GB

squarepusher
Member
Medlem
Forum Posts: 2154
Member Since:
May 29, 2001
sp_UserOfflineSmall Offline
981461
November 22, 2005 - 1:21 pm
sp_Permalink sp_Print

jonaz wrote: [quote=squarepusher]Eftersom du själv säger att du vill att någon annan i princip ska göra hela programmet åt dig, så sök på google och sno källkoden.

Jag kanske var lite väl "snäll" (han bad ju faktiskt inte om en komplett lösningen i sin första fråga), men nu blir det andra bullar som du ser ovan! 😉

Ähh, mespropp 😛

ViU
Member
Medlem
Forum Posts: 4459
Member Since:
December 25, 2000
sp_UserOfflineSmall Offline
981499
November 22, 2005 - 2:30 pm
sp_Permalink sp_Print

Detta ser misstänkt mycket ut som skoluppgifter. Att "fuska" med dem är verkligen inte att rekommendera ifall du har några planer som helst på att gå vidare med Java.

Forum Timezone: Europe/Stockholm
Most Users Ever Online: 1030
Currently Online:
Guest(s) 62
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Andreas Galistel: 16287
Jonas Klar: 15897
ilg@dd: 10810
Nyhet: 10607
Mind: 10550
Ctrl: 10355
Gueno: 9881
Guest: 9344
Snorch: 8881
Callister: 8468
Newest Members:
PetrbonFU PetrbonFU
Karine Bembry
Dolores Mcdaniels
Anibal McLeish
Francisca Alt
Alfie Everhart
Lester Huitt
Orlando Jorgensen
Mikki Lundgren
Dakota Kozlowski
Forum Stats:
Groups: 11
Forums: 59
Topics: 146630
Posts: 1300967

 

Member Stats:
Guest Posters: 2
Members: 79425
Moderators: 0
Admins: 11
Administrators: nordicadmin, Henrik Berntsson, Anton Karmehed, Carl Holmberg, Joel Oscarsson, Mikael Linnér, Mikael Schwartz, Andreas Paulsson, Nickebjrk, Mattias Pettersson, EmxL