Miten tehdään rekursio, joka tulostaa kaikki annettua pituutta pienemmät merkkijonot, joiden merkit ovat a, b,...,z? Siis vaikkapa syötteellä 4 tulostus alkaa ja loppuu:
a
b
c
...
z
aa
ab
...
zz
aaa
aab
....
zzzy
zzzz
C sharpilla kaikki merkkijonot
11
345
Vastaukset
- mitämeinasit
Siis onko tarkoitus tehdä funktio, joka palauttaa merkkijonon, jos se täyttää em. ehdot?
- rekursiohankaluus
Haluaisin opetella tekemään funktion, joka tulostaisi merkkijonot siten, että se kävisi tietynpituiset merkkijonot lävitse ja kun kaikki on käyty, niin etsisi yhtä pidempiä merkkijonoja.
- erotin
rekursiohankaluus kirjoitti:
Haluaisin opetella tekemään funktion, joka tulostaisi merkkijonot siten, että se kävisi tietynpituiset merkkijonot lävitse ja kun kaikki on käyty, niin etsisi yhtä pidempiä merkkijonoja.
Eikös kaikki merkkijonot ole yhtä pidempiä? Millä tavalla olet erottanut merkkijonot toisistaan?
- rekursiohankaluus
Yritän tehdä Arraylistin avulla taulukkoon kunkin kirjaimen ja sitten generoida siitä merkkijonon. Haluaisin siis käydä läpi ensin kaikki yhden kirjaimen merkkijonot aakkosjärjestyksessä, sitten kahden merkin merkkijonot, sitten kolmen merkin merkkijonot jne.
- esimerkkinä
rekursiohankaluus kirjoitti:
Yritän tehdä Arraylistin avulla taulukkoon kunkin kirjaimen ja sitten generoida siitä merkkijonon. Haluaisin siis käydä läpi ensin kaikki yhden kirjaimen merkkijonot aakkosjärjestyksessä, sitten kahden merkin merkkijonot, sitten kolmen merkin merkkijonot jne.
Jos on merkkijonot "st1, esso, teboil, neste, abc", niin mitä pitäisi pukata stdoutiin?
- rekursiohankaluus
Siis mä ajattelin, että koska stringit on muuttumattomia, niin en voi tehdä asioita suoraan stringeillä. Siksi ajattelin käsitellä kirjaimia arraylistissä. Esimerkiksi voin alustaa kirjaimen:
ArrayList myarray = new ArrayList();
myarray.Add('a');
ja vaihtaa:
public static ArrayList change(ArrayList A, int i)
{
//Console.WriteLine(A[i]);
if ((char) A[i]=='z') {
A[i] = 'a';
}
else
{
char merkki = (char)A[i];
A[i] = (char)((int)merkki 1);
}
return A;
}
Mutta tähän loppui taidot. Jos haluaisin vaikka merkkijonosta aaa merkkijonon aab, niin mulla olisi ensiksi listassa
myarray[0]=a
myarray[1]=a
myarray[2]=a
ja voisin kutsua myarray.change(myarray,2), jolloin arrayna olisi
myarray[0]=a
myarray[1]=a
myarray[2]=b - logiikka
rekursiohankaluus kirjoitti:
Siis mä ajattelin, että koska stringit on muuttumattomia, niin en voi tehdä asioita suoraan stringeillä. Siksi ajattelin käsitellä kirjaimia arraylistissä. Esimerkiksi voin alustaa kirjaimen:
ArrayList myarray = new ArrayList();
myarray.Add('a');
ja vaihtaa:
public static ArrayList change(ArrayList A, int i)
{
//Console.WriteLine(A[i]);
if ((char) A[i]=='z') {
A[i] = 'a';
}
else
{
char merkki = (char)A[i];
A[i] = (char)((int)merkki 1);
}
return A;
}
Mutta tähän loppui taidot. Jos haluaisin vaikka merkkijonosta aaa merkkijonon aab, niin mulla olisi ensiksi listassa
myarray[0]=a
myarray[1]=a
myarray[2]=a
ja voisin kutsua myarray.change(myarray,2), jolloin arrayna olisi
myarray[0]=a
myarray[1]=a
myarray[2]=bEi nyt ihan aukea mitä ajat takaa. Jos merkkijono on "st1" ja haluat merkkijonosta "abc", niin miten se tapahtuisi?
- Turbo-Urpo1
Tälläisen ( abc.c ) olen joskus haalinut verkosta muistiinpanoihin mukaan, Tämä käy kaikki merkkijonon varitaatiot läpi, ja nopeasti käykin.
https://s25.postimg.cc/dhlvcuten/abc.c.png
Kieli, ei ole C# vaan pelkkä C.- Turbo-Urpo1
Tuo kuva on tästä LMDE 3 Cinnamon 64-bit työpöytäympäristöstä. Menee tosi kauan ennen kuin ikunan kehykset ja otsakepalkit, saa vaihdettua Win XP käyttämiin.
- Turbo-Urpo1
Turbo-Urpo1 kirjoitti:
Tuo kuva on tästä LMDE 3 Cinnamon 64-bit työpöytäympäristöstä. Menee tosi kauan ennen kuin ikunan kehykset ja otsakepalkit, saa vaihdettua Win XP käyttämiin.
Ja nyt lähti tuo LMDE 3 "Cindy" Cinnamon 64-bit tästä koneesta. Taikoo ihme jumeja sattuman varaisesti, vai virta-nappula auttaa. Paska mikä paska, ei toimi, eikä saa edes selvää mikä prosesi sen tekee, kun ei reakoi yhtään mihinkään, viittä vaille ettei tarvitse mennä iroittamaan sulake eteisessä olevasta sulaketaulusta.
SE SIITÄ Cindystä - Turbo-Urpo1
Turbo-Urpo1 kirjoitti:
Tuo kuva on tästä LMDE 3 Cinnamon 64-bit työpöytäympäristöstä. Menee tosi kauan ennen kuin ikunan kehykset ja otsakepalkit, saa vaihdettua Win XP käyttämiin.
Joo, meinashan tuo mennä muutenkin jo viihteen puolelle, kun alistin itseni kaikelle roskapostauksille. Mutta, mutta tekis mieli selvittää kuinka vähillä merkeillä Python tuosta samasta selviää. Ehkä tuo onnistuu myös Linux Shell komentoputkena, no katotaan nyt riittääkö intoa.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Eutanasia?
Kertokaas omia mielipiteitä eutanasiaan liittyen. Onko mielestäsi oikein vai väärin ja miksi?412356Eutanasia - miksi eläimelle sallitaan armokuolema, mutta ihmiselle ei?
Olen pitkään ihmetellyt yhtä asiaa Suomessa. Kun koira kärsii parantumattomasta sairaudesta ja kovista kivuista, eläinlä411143Riikka Purran kaudella nousi bensan hinta yli 2 euron
Muistatteko kuinka edellisen vasemmistohallituksen aikana, ns. Marinin aikakaudella, bensiiniä sai 1,3 euron litrahinnal1745064Veli Sofia teki urosmehiläisen työn
Paljastaessaan kuinka TPS:ssä ei joukkuehenki toimi sooloilijoiden vuoksi, jonka takia koko seura ei pärjää kilpailussa283679Mitäs nyt sijoittajat?
Pörssit laskevat maailmalla Iranin sodan takia ja muutenkin ovat olleet Trumpin vallan alla epävarmat. Ainoa, mikä on no1963524Hjallis Harkimon, 72, Jasmine-rakas, 37, paljastaa suhteen alusta: "Vähän..."
Liikemies, kansanedustaja Hjallis Harkimo ja tuottaja-juontaja Jasmine Pajari ovat pariskunta. He asuvat yhdessä Sipooss443047Unisex-vessat
Ahdistaa. Miksi kaikki pitää tasapäistää tasa-arvon nimissä? Tasa-arvo on sitä, että kunnioitetaan sukupuolien erilaisu1082769Sosiaalidemokratia romahtanut kautta maailman
nuoret eivät enää kannata järjetöntä aatetta, joten demarien täytyy hakea kannattajia mamuista. Ruotsin sos.demit jo kie372117Jäit kiinni siitä
että katselet minua. Käänsin pääni, minäkin etsin sinua, ja meidän katseemme kohtasivat. Eikä se haittaa - molemmat ky132108Jutta Larm, 52, haluaa kumota tämän piintyneen ikämyytin
Oletko samaa mieltä? Jutta Larm on 52-vuotias ja tehnyt pitkän uran yrittäjänä. Hän haluaa kumota tämän piintyneen ikämy191935