1 / 14

Nizi

Nizi. Tip string. String. string ime = "Matija"; Zaporedje znakov med " + stakne dva niza Brez "dodatnih" presledkov "Matija" + "Lokar"  "MatijaLokar" Če en izraz NI niz, se ta pretvori v niz! Branje nizov metoda Console.ReadLine(). Dolžina niza, posamezni znak,.

garth
Download Presentation

Nizi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Nizi Tip string

  2. String string ime = "Matija"; Zaporedje znakov med " + stakne dva niza Brez "dodatnih" presledkov "Matija" + "Lokar"  "MatijaLokar" Če en izraz NI niz, se ta pretvori v niz! Branje nizov metoda Console.ReadLine()

  3. Dolžina niza, posamezni znak, ... Dolžina niza: lastnost Length string priimek = "Lokar"; priimek.Length  5 "matija".Length  6 (priimek + " " + "bla").Length  9 Znak na i-tem mestu [i] ime[i] Znake štejemo od 0 dalje! "Blabla"[3]  b string ime = "Matija"; ime[1]  a

  4. Obrni niz Preberi niz in ga izpiši obrnjeno! Matija  ajitaM Zanka Pregledamo vse znake v nizu (dolžina niza) while (i < niz.Length) Dodajamo na začetek ob_niz = niz[i] + ob_niz;

  5. Znaki (char) Tip char ker (character) Ne čar char znak; posamezni znaki 'a' : znak a Enojni narekovaji znak = 'm'; char zacetnica = 'M'; Razlika med string in char string znakKotNiz = "m"; char znakKotZnak = 'm';

  6. Tip char primerjanje znakov 'a' < 'b' < 'c' < … < 'z' '0' < '1' < … < '9' 'A' < 'B' < 'C' < … < 'Z' vmes v teh treh zaporedjih ni nobenih drugih znakov ('0' <= preverjaniZnak) && (preverjaniZnak <= '9') true: v spremenljivki preverjaniZnak je števka ('a' <= malaČrka) && (malaČrka <= 'z') Preverjamo, če je v spremenljivki malaČrka res mala črka. Je "desno" od 'a' in "levo" od 'z' dejansko gre za kode znakov, zato z znaki lahko računamo Console.WriteLine('a')  izpiše se koda znaka 'a' (char)('a' + 2)  'c' (char)('A' + 'k' – 'a')  'K'

  7. string <--> char • Iz znaka v niz • char znakKotZnak = 'm'; • string znakKotNiz = "" + znakKotZnak; • Iz niza znak • niz[i]  i-ti znak • string znakKotNiz = "m"; • char znakKotZnak = znakKotNiz[0];

  8. Preštej števke v nizu Preberemo niz Pregledamo vsak znak znak = niz[i]; // tekoci znak Če je števka, povečamo števec za 1 if (('0' <= znak) && (znak <= '9')) { // ce je stevka koliko_stevk++; // povečanje za 1} Izpišemo rezultat

  9. Preštej števke v nizu i = 0; while (i < dol_niza) { znak = niz[i]; // tekoci znak if (('0' <= znak) && (znak <= '9')) { // ce je stevka koliko_stevk = koliko_stevk + 1; } i = i + 1; } rezultat = "V nizu " + niz + " je " + koliko_stevk + " stevk.";

  10. Primerjanje nizov Z relacijskim operatorjem == Metodi Equals Compare s1.Equals("bla") : ali je niz shranjen v s1 enak nizu bla – rezultat true ali false s1 == “bla” s1.Equals(s2) : ali je niz shranjen v s1 enak nizu shranjenemu v s2 s1 == s2

  11. Primerjanje nizov Nize primerjamo leksikografsko (po abecedi) Niz "Matija" je manjši kot niz "Mojca", ker sta prva znaka enaka, drugi znak pa je v prvem nizu ('a') manjši kot v drugem nizu ('o'). String.Compare(s1,"bla") : vrne 0, če je niz shranjen v s1 enak nizu bla, neg. število , če je niz v s1 manjši od niza "bla" in poz. število, če je večji. String.Compare("matija","mojca") : vrne negativno število bool jeManj = String.Compare(n1,n2) < 0; Kako si zapomniti? Zanima nas če velja niz1 <= niz2 (če je torej niz1 manjši (prej po abecedi) ali enak niz2) niz1.Compare(niz2) <= 0 Uporabimo torej ustrezen operator in primerjamo z 0

  12. IndexOf "Mojca je rekla joj".IndexOf("oj") Dobimo 1 – podniz "oj" se v nizu "Mojca je rekla joj" začne na mestu z indeksom 1 Če podniza ni, je rezultat –1 "Mojca je rekla joj".IndexOf("aj") je torej -1

  13. Preštej samoglasnike Za vsak znak ugotovimo ali je samogasnik Sestavljeni pogoj (znak == 'a') || (znak = 'A') ||(znak == 'e') || (znak = 'E') || (znak == 'I') || (znak = 'i') || (znak == 'o') || (znak = 'O') ||(znak == 'u') || (znak = 'U') Lahko z IndexOf string samoglasniki = "AEIOUaeiou"; samoglasniki.IndexOf(znak) != -1

  14. Preštej samoglasnike string samoglasniki = "AEIOUaeiou"; Console.Write("Vnesi poljubno besedilo: "); string niz = Console.ReadLine(); int dol_niza = niz.Length; // dolzina niza int i = 0; char znak; while(i < dol_niza) { // pregledamo vse znake znak=niz[i]; if (samoglasniki.IndexOf(znak) != -1)// znak je samoglasnik st_samo++; i++; } rezultat = "V nizu " + niz + "je " + st_samo + " samoglasnikov.";

More Related