1 / 11

Massiivid array

Massiivid array. Tunnitöö #1. Joonistame eelmise nädala 5-arvu summeerimise UMLina redaktoris Selleks: Käivita terminal Käivita käsk „ cad “ Käivita käsk „ argouml “ Alustamiseks valime „New activity diagramm“ NB! Salvesta tööd pidevalt!. Massiivi olemus.

aaralyn
Download Presentation

Massiivid array

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. Massiividarray

  2. Tunnitöö #1 • Joonistame eelmise nädala 5-arvu summeerimise UMLina redaktoris • Selleks: • Käivita terminal • Käivita käsk „cad“ • Käivita käsk „argouml“ • Alustamiseks valime „New activity diagramm“NB! Salvesta tööd pidevalt!

  3. Massiivi olemus • Massiiv on ühte tüüpi andmete kogum (hulk) • Täisarvud (int) • Murdarvud (float, double) • Tähemärgid (char) //tuntud ka, kui string • Jne • Massiivi elemendid on indekseeritud alates nullindast • Massiivi liikmete poole pöördutakse indeksite abil • 1-dimensioonilist massiivi kutsutakse ka vektoriks • 2-dimensioonilist massiivi kutsutakse ka maatriksiks

  4. Massiivi deklareerimisest • Massiivi suurus määratakse ära deklareerimise ajal nurksulgudes muutuja nime järel intarvud[10]//massiiv 10 täisarvu jaoks chartekstiVali[15]//massiiv 14+1 tähemärki • Massiivid võivad olla n-dimensioonilised ning dimensioonide pikkused võivad olla erinevad, nt intelemendid[N][M][K]

  5. 1-dimensiooniline massiiv (vektor) • Muutuja deklareerimisel on nurksulu sees suurus intarvud[5]; • Muutuja poole pöördumisel on nurksulgude sees soovitud elemendi indeks, st arvud[indeks] • Nt trükkimaks välja massiivi kolmandat elementi kirjutame: printf("%d", arvud[2]);

  6. Tunnitöö #2 • Võta aluseks eelmisel tunnil tehtud arvude summeerimise koodi • Kirjuta see kood ümber nii, et • sisestatud arvud salvestatakse 1-dimensioonilisse massiivi (vektor) • Vahesummad salvestatakse ja kuvatakse ekraanile teisest massiivist. • Tsükli kasutusel vaba voli • Kui algmaterjal puudu, siis vtblue.pri.ee/tty - > Prog1 - > Tunnikoodid - > 3_tunnikood.c

  7. 2-dimensiooniline massiiv (maatriks) • Antud juhul on tegu ruutmaatriksiga (dimensioonide suurused võrdsed)intmassiiv[5][5]

  8. 2-dimensioonilise massiivi läbikäik #include <stdio.h> intmain() { inti, j, arvuMassiiv[5][5]; for(i= 0; i< 5; i++) { for(j = 0; j< 5; j++) { arvuMassiiv[i][j]= 0; } } return 0; }

  9. #define makrod • #define makrod täidetakse enne koodi kompileerimist • Töötab „find and replace“ põhimõttel • Paigutatakse koodi algusse kohe pärast #include käske #define <tunnus><asendus> #define SUURUS 7 #define MIN0 • Tähtsaim eesmärk: maagiliste numbrite likvideerimine!

  10. Tunnitöö #3 • Loo 2-dimensiooniline täisarvude massiiv 10x10 korrutustabeli jaoks • Massiivi pikkuste ja tsükli piirajate puhul väldi maagilisi numbreid! • Korrutustabel salvestatakse massiivi genereerimise käigus • Kasuta for() tsükleid! • Korrutustabeli ekraanile kuvamiseks loetakse see massiivist • Kasuta while() tsükleid! • Korrutustabelit kuvades kasuta inimlikku vormindust • Reavahetused tsüklis õiges kohas • Numbrite vormindamiseks printfformaatimine %4d

  11. Kodutöö • Modifitseeri korrutustabeli koodi nii, et: • Kasutaja saaks sisestada ise suuruse (pikkus x laius) • Piira ära maksimaalne suurus vastavalt programmiakna laiusele • Hoiata kasutajat lubatud piiride ületamise kohta • Küsi kasutajalt uuesti suurus • Programmi peab olema võimalik korrata ilma taaskäivitamata • Joonista kohandatud korrutustabelile algoritm soovitavalt juba CAD vahendiga.

More Related