Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Vlerësime
  • Mbushja e një grupi njëdimensional me paskal. Plotësimi dhe përpunimi i një vargu

Mbushja e një grupi njëdimensional me paskal. Plotësimi dhe përpunimi i një vargu

Vargjet njëdimensionale. Formimi i një grupi dhe shfaqja e elementeve të tij

Përkufizimi i konceptit

Një grup është një koleksion të dhënash të të njëjtit lloj me një emër të përbashkët për të gjithë elementët.

Elementet e grupit janë të numëruar dhe ju mund t'i referoheni secilit prej tyre me numër. Numrat e elementeve të grupit quhen ndryshe indekse, dhe vetë elementët e grupit quhen variabla të indeksuar.

nje [n]

- 0. 5

-5.2

0.6

Vektor (lineare ose grup njëdimensional) është një shembull i një grupi në të cilin elementët numërohen me të njëjtin indeks.

  • Si numrat (indeksi) elementi i grupit, në përgjithësi përdoret shprehja lloji rendor(më shpesh është një konstante numër i plotë ose një ndryshore numër i plotë: numër i plotë, fjalë, bajt ose shkurtim)
  • Kur i referohemi një elementi të një grupi, indeksi tregohet në kllapa katrore. Për shembull, një masë.
  • Elementet e grupit përpunohen kur ndryshojnë indekset e elementeve. Për shembull, në rastin e përdorimit të një shprehjeje, është e përshtatshme të përdoren variablat e mëposhtëm për të parë elementët e grupit në një lak:
    • a [i] - të gjithë elementët;
    • a - elemente në vende të barabarta;
    • a - elementë që qëndrojnë në vende tek

Përshkrimi i grupit

  • Përcaktimi i një variabli si një grup pa përshkruar më parë llojin e grupit
vara, b, c: varg e numër i plotë; var s: varg të numrit të plotë; k: varg të numrit të plotë;

shënim

    • Përshkrimi i grupit kërkohet nga përpiluesi për të ndarë memorie për elementët e tij.
    • Një variabël përkufizohet si një grup me anë të një fjale shërbimi varg(arresë). Kllapat tregojnë diapazonin, domethënë kufijtë e poshtëm dhe të sipërm të vlerës së indeksit të grupit. Vlera e kufirit të sipërm nuk mund të jetë më e vogël se ajo e poshtme.
    • Këtu variablat s dhe k konsiderohen të jenë të llojeve të ndryshme. Për të siguruar përputhshmërinë, është e nevojshme të zbatohet deklarimi i variablave përmes një deklarate paraprake të tipit.
    • Nëse llojet e vargjeve janë identike, atëherë në program një grup mund t'i caktohet një tjetri. Në këtë rast, vlerat e të gjitha variablave të një grupi do t'u caktohen elementeve përkatëse të grupit të dytë.
    • Operacionet relacionale nuk janë të përcaktuara në vargje. Krahasimi i dy vargjeve mund të jetë vetëm nga pikëpamja e elementeve.
  • Përshkrimi paraprak i llojit të grupit
konst n = 5; lloji mas = varg të numrit të plotë; var një: mas;

shënim

    • Elementet e grupit do të aksesohen në këtë mënyrë: a, a, a, a, a (d.m.th., grupi përmban pesë elemente).
    • Duke përdorur konstante(n në këtë shembull) preferohet kur përshkruhet një grup, pasi në rastin e ndryshimit të madhësisë së grupit, nuk do të jetë e nevojshme të bëhen korrigjime në të gjithë tekstin e programit.
  • Specifikimi i një grupi me një konstante të shtypur
konst x: varg të numrit të plotë = (1, 2, 3, 4, 5, 6);

shënim

    • Në këtë shembull, jo vetëm memoria ndahet për grupin, por qelizat janë gjithashtu të mbushura me të dhëna.
    • Elementet e grupit mund ndryshim gjatë programit (si të gjitha konstantet e shtypura).

Mbushja e një grupi me të dhëna

§ Për të mbushur grupin të dhënat (dhe dalja e tyre) më së shpeshti përdoret një lak me një parametër për

§ Për të mbushur grupin me numra të rastit, përdorni funksionin e rastit dhe procedurën rastësoj(inicializimi i gjeneratorit të numrave të rastësishëm). Formati i regjistrimit është si më poshtë: e rastësishme (B - A) + A, ku A dhe B merren nga intervali: 4);

Një shembull i programit për hyrjen dhe daljen e një grupi

Formulimi i problemit. Merrni shumën e elementeve të një grupi prej 10 elementësh të plotë. Elementet e grupit futen nga tastiera.

program grup2; var shuma: numër i plotë; unë: bajt; a: varg e fjalës; fillojnë shuma: = 0; përi: = 0 te 9 bëj fillojnë shkruaj("nje [", une," ] = "); lexojn(a [i]); shuma: = shuma + a [i] fund; shkruarn("shuma =", shuma) fund.

Një shembull i një programi për të punuar me elementët e grupit

Formulimi i problemit. Merrni mesataren aritmetike të elementeve të një vargu. Elementet e grupit janë të mbushura me numra të rastësishëm.

program grup3; konst n = 100; var sar: reale; shuma: numër i plotë; unë: bajt; a: varg të numrit të plotë; fillojnë shuma: = 0; rastësoj; përi: = 0 te n bëj fillojnë a [i]: = e rastit(njeqind); shuma: = shuma + a [i] fund; sar: = shuma / n; shkruarn("sar =", sar) fund.

Seksionet: Informatikë

Qëllimet:

  1. Të njohë studentët me mundësinë e plotësimit dhe përpunimit të një vargu.
  2. Krijoni një ndërfaqe grafike për një projekt për të mbushur një grup dhe për të llogaritur shumën e elementeve në një grup të caktuar.
  3. Zhvilloni një interes njohës për këtë temë
  4. Nxitni një qëndrim të përgjegjshëm të të mësuarit

GJATË ORËSVE

1. Aktualizimi i orës së mësimit

Koha e organizimit

Sondazh frontal në temën e mëparshme “Koncepti i një grupi. grup njëdimensional "

2. Formimi i aftësive dhe aftësive

Shpjegimi i materialit të ri

Deklarata e vargut

Një grup deklarohet në të njëjtën mënyrë si deklarohet një variabël, është e nevojshme vetëm të specifikohet diapazoni i ndryshimit të indeksit. Për shembull, një grup me numra të plotë njëdimensional që përmban 10 elementë deklarohet si më poshtë:

A: grup i numrave të plotë;

Detyrat themelore kur punoni me vargje

1. Formimi (mbushja) e vargut

1.1. sipas formulave Për i: = 1 deri në 10 bëni një [i]: = i * i;

1.2. gjeneroni në mënyrë të rastësishme Për i: = 1 deri në 10 bëni një [i]: = rastësore (20):

Funksioni i integruar RANDOM (MAX), kthen një numër të plotë të rastësishëm të ndarë në mënyrë të barabartë nga 0 në MAX - 1 (MAX është parametri i thirrjes)

1.3. futni nga tastiera Për i: = 1 deri në 10 lexo (a [i]);

2. Renditja e grupit (në ngjitje, në zbritje);

3. Kërko për elemente në një grup;

4. Përzgjedhja e elementeve nga një grup sipas kushteve;

Mbushja e grupit në mënyrë të rastësishme.

Për të filluar punën me një grup, ai duhet të plotësohet, d.m.th. caktoni vlera specifike për elementët e grupit. Për të gjeneruar një sekuencë numrash të rastësishëm, përdorni funksionin Random (100). Kur programi fillon, ky funksion do të printojë një sekuencë pseudo të rastësishme të numrave të plotë në rangun nga 0 në 100.

Për të gjeneruar sekuenca të numrave të rastit që ndryshojnë nga njëri-tjetri, rekomandohet përdorimi i operatorit Randomize

Veprimet me vargje njëdimensionale

1. Llogaritja e shumës së elementeve

Për I: = 1 Në 10 A s: = s + a [i]; (akumulimi i zakonshëm i shumës në s)

2. Llogaritja e produktit

Për I: = 1 Në 10 Bëj p: = p * a [i]; (akumulimi i zakonshëm i produktit në p)

3. Kërkoni për një element me një vlerë të caktuar

3. Shënim aftësitë e të mësuarit në praktikë

Projekti "Shuma e elementeve në një grup". Ne do të zhvillojmë një projekt "Shuma e elementeve në një grup", i cili do të mbushë grupin me numra të rastit dhe do të llogarisë shumën e këtyre numrave.

Së pari, le të krijojmë një procedurë për mbushjen e grupit

1. Nisni sistemin e programimit Delphi.

2. Puna në projekt fillon me krijimin e një ndërfaqe grafike, për këtë në dritare Konstruktori i formës kontrollet vendosen në formular. Për të krijuar një ndërfaqe grafike për projektin, ne do të vendosim në formular dy fusha teksti për shfaqjen e të dhënave numerike (njëra për plotësimin e grupit, tjetra për shfaqjen e shumës) dhe dy butona për zbatimin e procedurave të ngjarjeve: mbushja e grupit dhe shuma.

3. Duke përdorur Shiritat e veglave vendosni fushën e tekstit Editl dhe butonin komandues Buttonl në Forml

Hapi tjetër është kodimi i procedurave të ngjarjes. Duke klikuar dy herë në butonin për të cilin dëshironi të krijoni një kod programi shfaqet dritarja Kodi i programit me një cung bosh të një procedure ngjarjeje.

4. Klikoni dy herë në butonin Buttonl, do të shfaqet një shabllon për procedurën e ngjarjes TForml.ButtonlClick: Deklaroni grupin A dhe përshkrimi i ndryshores Unë, S në seksionin e deklarimit të variablave var

A: grup i numrave të plotë;

procedura TForm1.Button1Click (Dërguesi: TObject);

Për I: = 1 deri në 10 Bëj

A [I]: = E rastësishme (10);

Edit1.Text: = Edit1.Text + "" + IntToStr (a [i]);

5. Ruaje projektin si

6. Përpilimi i projektit (Projekt - Hartimi)

Tani le të krijojmë një procedurë për llogaritjen e shumës së elementeve në grupin e mbushur

Nëpërmjet Shiritat e veglave n Vendosni butonin Button2 dhe fushën e tekstit Edit2 në formularin Forml. Duke klikuar dy herë në butonin 2, për të cilin duhet të krijoni një kod programi, thirret dritarja Kodi i programit me një cung bosh të një procedure ngjarjeje.

procedura TForm1.Button2Click (Dërguesi: TObject);

Për I: = 1 deri në 10 Bëj

Edit2.Text: = Edit2.Text + "" + IntToStr (s)

Ruajtja e projektit të të gjithë projektit (Save Project).

Le të përpilojmë projektin (duke shtypur tastin F9).

Klikoni në butonat Fill Array dhe Sum.

Rezultatet e shumave do të shfaqen në kutinë e tekstit për opsione të ndryshme mbushjeje

4. Përmbledhje

5. Detyrë shtëpie: Krijoni një projekt "Produkti i elementeve të grupit", duke siguruar mbushjen e grupit me numra të rastësishëm dhe aftësinë për të shfaqur prodhimin e të gjithë elementëve të grupit në fushën e tekstit.

Një grup njëdimensional është një sekuencë e emërtuar e elementeve të numëruara të të njëjtit lloj. Elementet mund të jenë të disponueshëm në çdo Paskalin(me përjashtim të skedarit) lloji i të dhënave. Një numër, i quajtur gjithashtu një indeks, i caktohet çdo elementi në grup. Indeksi duhet të jetë i tipit rendor. Një grup njëdimensional mund të deklarohet si një variabël:

var<имя переменной>: grup i<тип элементов>;

kështu dhe si:

lloji<имя типа>= grup prej<тип элементов>;

Këtu mËshtë numri i elementit të parë, dhe n- kjo e fundit. Për shembull, nëse diapazoni specifikohet si ky:, atëherë kjo do të thotë që përcaktohet një grup njëdimensional prej 10 elementësh me indekse nga 1 në 10.

Për të hyrë në një element grupi, duhet të specifikoni emrin dhe numrin e tij: mas [i], këtu mas është emri, i është numri. Në programin e mëposhtëm, ne do të deklarojmë një grup dhe do të kryejmë operacione të thjeshta në elementët e tij.

1
2
3
4
5
6
7
8
9
10
11
12

grupi_primer i programit;
përdor crt;
var mas, A: vargu [1 ..10] real;
fillojnë
clrscr;
mas [1]: = 32;
mas [5]: = 13;
mas [9]: = 43;
A [1]: = (mas [9] - mas [1]) * mas [5];
shkruani (A [1]: 5: 2);
Readkey;
fund.

Në një farë kuptimi, ju mund të punoni me vargje ashtu si me variablat e zakonshëm, por imagjinoni, për shembull, një situatë kur duhet të plotësoni një grup të përbërë nga dhjetëra ose mijëra elementë. Do të jetë më e përshtatshme për ta bërë këtë përmes një lak. Ndërtimi i mëposhtëm mbush një grup me numra dhe i shfaq ato në ekran.

për i: = 1 deri në n bëj
fillojnë
mas [i]: = i;
shkruani (mas [i]: 3);
fundi;

Nëse dëshironi që grupi të përbëhet nga vlera të futura në tastierë, thjesht zëvendësoni detyrën me një deklaratë të lexuar. Ka edhe situata kur duhet të plotësoni një grup me numra të rastit. Programi më poshtë cakton në mënyrë alternative një vlerë të rastësishme për secilin element.

1
2
3
4
5
6
7
8
9
10
11
12
13
14

grup programi_i rastësishëm;
përdor crt;
var i: numër i plotë;
mas: grupi [1 ..100] i numrit të plotë;
fillojnë
clrscr;
randomizoj;
për i: = 1 deri në 100 do
fillojnë
mas [i]: = e rastësishme (10);
shkruani (mas [i]: 2);
fundi;
Readkey;
fund.

Ka probleme të përhapura që lidhen me lloje të ndryshme algoritmesh të zbatueshme për vargje. Midis tyre, metodat e kërkimit dhe renditjes së elementeve janë veçanërisht të njohura. Por secili prej këtyre algoritmeve kërkon studim individual, kështu që ju mund të njiheni me to në artikuj të tjerë:

Algoritmet e renditjes:

Algoritmet e kërkimit:

Metodat për përcaktimin e numrit të elementeve pozitive dhe negative, minimale dhe maksimale janë më pak komplekse dhe në të njëjtën kohë të kërkuara. Le t'i konsiderojmë ato.

Gjetja e elementit maksimal në një grup:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

grupi_max i programit;
përdor crt;
lloji massiv = varg [1 ..10] fjalësh;
var i, max: numër i plotë;
A: masiv;
fillojnë
clrscr;
për i: = 1 deri në 10 do
fillojnë
shkruani ('Elementi #', i: 2, '=');
lexo (A [i]); (Hyrja e tastierës)
fundi;
max: = A [1]; (elementi i parë le të jetë maksimumi)
për i: = 1 deri në 10 do
nëse max shkruarn;
shkruaj ( 'Elementi maksimal =', maksimumi);
Readkey;
fund.

Për të bërë një program për gjetjen e elementit minimal, mjafton të ndryshoni shenjën< в 15 строке на >.

Përcaktimi i numrit të elementeve pozitive:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Mësimi nga seria: " Gjuha e programimit Pascal»

Pas deklarimit të grupit, mund të punoni me të. Për shembull, caktoni vlera për elementët e grupit dhe në përgjithësi trajtojini ato si variabla të zakonshëm. Për t'iu referuar një elementi specifik, duhet të specifikoni identifikuesin (emrin) e grupit dhe indeksin e elementit në kllapa katrore.

Për shembull, rekordi Mas, A lejon aksesin në elementin e dytë të grupit MAS dhe në elementin e dhjetë të grupit A. Kur punoni me një grup dydimensional, specifikoni dy indekse, me një grup n-dimensionale - n indekse.

Për shembull, hyrja Matr vë në dispozicion për përpunimin e vlerës së elementit të vendosur në rreshtin e katërt të kolonës së katërt të grupit M.

Elementet e indeksuar të një grupi quhen variabla të indeksuar. Ju nuk mund të shkoni përtej kufijve të grupit. Kjo do të thotë, nëse ka pesë elementë në grupin Mas, atëherë qasja në elementin e gjashtë ose të tetë do të rezultojë në një gabim.

Le të shqyrtojmë operacionet tipike që lindin kur punoni me vargje njëdimensionale.

Plotësimi i një grupi njëdimensional me vlera

Plotësimi dhe shfaqja e një vargu mund të bëhet vetëm element pas elementi, domethënë, fillimisht mund t'i caktoni një vlerë elementit të parë, pastaj të dytit dhe kështu me radhë, e njëjta gjë me shfaqjen - shfaqim të parën, të dytën, të tretën e kështu me radhë derisa e fundit.

Pascal nuk ka mjete për hyrje-dalje të elementeve të grupit menjëherë, prandaj hyrja dhe vlerat kryhen element pas elementi. Një elementi grupi mund t'i caktohet vlera duke përdorur operatorin e caktimit, ose mund të futet nga tastiera duke përdorur operatorët Read ose Readln. Është shumë i përshtatshëm për të përsëritur mbi të gjithë elementët e një grupi në një cikli for.

Mënyrat për të mbushur vargjet njëdimensionale:

  1. Futja e një vlere nga tastiera.
  2. Vendosja e vlerave në një deklaratë caktimi duke përdorur një gjenerues numrash të rastësishëm. Kjo metodë është më e përshtatshme kur ka shumë elementë në grup (duhet shumë kohë për të futur vlerat e tyre nga tastiera).
  3. Vendosja e vlerave sipas një formule.
  4. Futja e elementeve të grupit nga një skedar

1. Futja e vlerave të elementeve të grupit nga tastiera. Për shkak të faktit se është përdorur deklarata Readln, çdo vlerë do të futet në një rresht të ri.

2. Mbushja e grupit numrat e gjeneruar rastësisht nga intervali. Ne lidhim gjeneratorin e numrave të rastit - funksionin e rastësishëm.

3. Mbushje varg sipas formulës. Çdo elementi në grup i caktohet një vlerë e llogaritur nga formula. Nëse çdo element i grupit është i barabartë me trefishin e vlerës së numrit të tij rendor (indeksit), atëherë procedura do të duket kështu:

4. Leximi i numrave nga një skedar. Ju duhet të krijoni një skedar teksti paraprakisht, në të cilin shkruani disa rreshta, secila prej të cilave përmban 30 numra.

Shfaqja e vlerave të elementeve të grupit në ekran

konkluzioni vlerat e elementeve varg Ekrani ekzekutohet, si hyrje, element pas elementi në një lak. Për dalje, ne do të përdorim deklaratat Write ose Writeln. Si parametra hyrës, ne do t'i kalojmë procedurës jo vetëm një grup, por edhe numrin e elementeve që duhet të shfaqen, duke filluar nga i pari (kjo do të na duhet kur të fshijmë dhe shtojmë elementë në grup).

Shembulli 1. Plotësoni grupin nga tastiera dhe shfaqni atë.

Zgjidhje.

Programi do të përdorë dy procedura: procedurën Init1 (mbushja e grupit nga tastiera) dhe procedurën Print (shfaqja e grupit në ekran).

Shembulli 2. Plotësoni grupin nga një skedar teksti dhe shfaqni. Skedari i tekstit përmban disa rreshta, çdo rresht përmban 30 numra.

Ju keni mësuar se si të mbushni një grup njëdimensional dhe ta shfaqni atë në ekran.

Në mësimin e ardhshëm do të vazhdojmë të njihemi me algoritmet e përpunimit të vargjeve njëdimensionale.

Një grup është një strukturë të dhënash e paraqitur si një grup qelizash të të njëjtit lloj, të bashkuara nën një emër të vetëm. Vargjet përdoren për të përpunuar sasi të mëdha të të njëjtit lloj të dhënash. Emri i grupit është ai që janë treguesit, do t'ju tregoj pak më vonë. Një qelizë e vetme e të dhënave të grupit quhet element grupi. Elementet e grupit mund të jenë të dhëna të çdo lloji. Vargjet mund të kenë një ose më shumë se një dimension. Varësisht nga numri i dimensioneve, vargjet ndahen në vargje njëdimensionale, vargje dydimensionale, vargje tredimensionale, e kështu me radhë deri në vargje n-dimensionale. Vargjet njëdimensionale dhe dydimensionale përdoren më shpesh në programim, kështu që ne do t'i konsiderojmë vetëm këto vargje.

Vargjet njëdimensionale në C ++

Vargu njëdimensional - një grup me një parametër që karakterizon numrin e elementeve të grupit njëdimensional. Në fakt, një grup njëdimensional është një grup që mund të ketë vetëm një rresht dhe numrin e n-të të kolonave. Kolonat në një grup njëdimensional janë elementet e grupit. Figura 1 tregon strukturën e një grupi të plotë njëdimensional a... Madhësia e këtij grupi është 16 qeliza.

Figura 1 - Vargjet në C ++

Vini re se indeksi maksimal i një grupi njëdimensional aështë e barabartë me 15, por madhësia e grupit është 16 qeliza, sepse numërimi i qelizave në grup fillon gjithmonë nga 0. Indeksi i qelizave është një numër i plotë jo negativ me të cilin mund t'i referoheni secilës qelizë në grup dhe të kryeni ndonjë veprime mbi të (qelizë).

// sintaksë për deklarimin e një grupi njëdimensional në C ++: / * lloji i të dhënave * / / * emri i një grupi njëdimensional * /; // shembull i deklarimit të një grupi njëdimensional i paraqitur në figurën 1: int a;

ku, int është një numër i plotë;

A është emri i grupit njëdimensional;
16 - madhësia e një grupi njëdimensional, 16 qeliza.

Gjithmonë menjëherë pas emrit të grupit, ka kllapa katrore, në të cilat vendoset madhësia e një grupi njëdimensional, kjo është ajo që ndryshon grupi nga të gjitha variablat e tjerë.

// një mënyrë tjetër për të deklaruar vargje njëdimensionale int mas, a;

Dy vargje njëdimensionale mas dhe a janë deklaruar me madhësi përkatësisht 10 dhe 16. Për më tepër, në këtë metodë të deklarimit, të gjitha vargjet do të kenë të njëjtin lloj të dhënash, në rastin tonë - int.

// vargjet mund të inicializohen kur deklarohen: int a = (5, -12, -12, 9, 10, 0, -9, -12, -1, 23, 65, 64, 11, 43, 39, -15 ); // inicializoj grupin njëdimensional

Inicializimi i një grupi njëdimensional kryhet në kllapa kaçurrelë pas shenjës barazohet, çdo element i grupit ndahet nga ai i mëparshmi me presje.

Int a = (5, -12, -12,9,10,0, -9, -12, -1,23,65,64,11,43,39, -15); // inicializoni grupin pa përcaktuar madhësinë e tij.

Në këtë rast, përpiluesi do të përcaktojë vetë madhësinë e grupit njëdimensional. Madhësia e grupit mund të hiqet vetëm gjatë inicializimit të tij; me deklarimin e zakonshëm të një grupi, është e nevojshme të tregohet madhësia e grupit. Le të zhvillojmë një program të thjeshtë për përpunimin e një grupi njëdimensional.

// array.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #include "stdafx.h" #include << "obrabotka massiva" << endl; int array1 = { 5, -12, -12, 9, 10, 0, -9, -12, -1, 23, 65, 64, 11, 43, 39, -15 }; // объявление и инициализация одномерного массива cout << "indeks" << "\t\t" << "element massiva" << endl; // печать заголовков for (int counter = 0; counter < 16; counter++) //начало цикла { //вывод на экран индекса ячейки массива, а затем содержимого этой ячейки, в нашем случае - это целое число cout << "array1[" << counter << "]" << "\t\t" << array1 << endl; } system("pause"); return 0; }

// kodi Kodi :: Blloqe

// Kodi Dev-C ++

// array.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #përfshi duke përdorur hapësirën e emrave std; int kryesore (int argc, char * argv) (cout<< "obrabotka massiva" << endl; int array1 = { 5, -12, -12, 9, 10, 0, -9, -12, -1, 23, 65, 64, 11, 43, 39, -15 }; // объявление и инициализация одномерного массива cout << "indeks" << "\t\t" << "element massiva" << endl; // печать заголовков for (int counter = 0; counter < 16; counter++) //начало цикла { //вывод на экран индекса ячейки массива, а затем содержимого этой ячейки, в нашем случае - это целое число cout << "array1[" << counter << "]" << "\t\t" << array1 << endl; } return 0; }

V rreshtat 10-11 i deklaruar dhe i inicializuar është një grup i plotë njëdimensional i quajtur array1, madhësia e të cilit është 16 qeliza, domethënë një grup i tillë mund të ruajë 16 numra. Çdo përpunim i një grupi është i realizueshëm vetëm në lidhje me sythe. Cilin lak të zgjidhni për të përpunuar grupin varet nga ju. Por është më e përshtatshme për këtë detyrë. Numëruesi i variablit numërues do të përdoret për t'iu referuar elementeve të vargut njëdimensional1. Kushti për vazhdimin e ciklit for përmban një shenjë strikte të pabarazisë, pasi nuk ka indeks të gjashtëmbëdhjetë në vargun njëdimensional1. Dhe meqenëse numërimi i qelizave fillon nga zero, elementët në grup janë 16. Në trupin e ciklit for, operatori cout printon elementet e një grupi njëdimensional (shih Figurën 2).

Obrabotka massiva indeks element massiva array1 5 array1 -12 array1 -12 array1 9 array1 10 array1 0 array1 -9 array1 -12 array1 -1 array1 23 array1 65 array1 64 array1 11 array1 49 array1 43 to continue1. ... ...

Figura 2 - Vargjet në C ++

Le të zhvillojmë një program tjetër për përpunimin e një grupi njëdimensional në C ++. Programi duhet të lexojë në mënyrë sekuenciale dhjetë numra të futur nga tastiera. Përmblidhni të gjithë numrat e futur, shfaqni rezultatin.

// array_sum.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #include "stdafx.h" #include << "Enter elementi massiva: " << endl; int sum = 0; for (int counter = 0; counter < 10; counter++) // цикл для считывания чисел cin >> << "array1 = {"; for (int counter = 0; counter < 10; counter++) // цикл для вывода элементов массива cout << array1 << " "; // выводим элементы массива на стандартное устройство вывода for (int counter = 0; counter < 10; counter++) // цикл для суммирования чисел массива sum += array1; // суммируем элементы массива cout << "}\nsum = " << sum << endl; system("pause"); return 0; }

// kodi Kodi :: Blloqe

// Kodi Dev-C ++

// array_sum.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #përfshi duke përdorur hapësirën e emrave std; int main (int argc, char * argv) (int array1; // deklaro një grup të plotë cout<< "Enter elementi massiva: " << endl; int sum = 0; for (int counter = 0; counter < 10; counter++) // цикл для считывания чисел cin >> grup1; // lexoni numrat e futur nga kutia e tastierës<< "array1 = {"; for (int counter = 0; counter < 10; counter++) // цикл для вывода элементов массива cout << array1 << " "; // выводим элементы массива на стандартное устройство вывода for (int counter = 0; counter < 10; counter++) // цикл для суммирования чисел массива sum += array1; // суммируем элементы массива cout << "}\nsum = " << sum << endl; return 0; }

Para përpunimit të grupit, ai duhet të deklarohet, dhe madhësia e grupit njëdimensional është 10, pasi kjo përcaktohet nga gjendja e problemit. Në shumën e ndryshueshme, ne do të grumbullojmë shumën e elementeve të një grupi njëdimensional. Cikli i parë for plotëson grupin e deklaruar njëdimensional me numrat e futur nga tastiera, rreshtat 12 - 13... Numëruesi i variablit numërues përdoret për qasjen sekuenciale në elementët e grupit njëdimensional të grupit1, duke filluar nga indeksi 0 e deri tek dhe duke përfshirë të 9-tën. Cikli i dytë for printon elementet e grupit në ekran, rreshtat 15-16... Cikli i tretë for lexon në mënyrë sekuenciale elementet e grupit njëdimensional dhe i përmbledh ato, shuma grumbullohet në shumën e ndryshueshme, rreshtat 17-18... Shihni rezultatin e programit në Figurën 3.

Shkruani elementi massiva: 0 1 2 3 4 5 6 7 8 9 grup1 = (0 1 2 3 4 5 6 7 8 9) shuma = 45 Shtypni çdo tast për të vazhduar. ... ...

Figura 3 - Vargjet në C ++

Së pari, të 10 numrat u futën në mënyrë sekuenciale, pas së cilës u shfaq një grup njëdimensional dhe u printua shuma e numrave të grupeve.

Vargje dydimensionale në C ++

Deri në këtë pikë, ne kemi konsideruar vargje njëdimensionale, të cilat nuk mund të kufizohen gjithmonë në. Le të themi se ju duhet të përpunoni disa të dhëna nga një tabelë. Ekzistojnë dy karakteristika në një tabelë: numri i rreshtave dhe numri i kolonave. Gjithashtu në një grup dydimensional, përveç numrit të elementeve të grupit, ka karakteristika të tilla si numri i rreshtave dhe numri i kolonave të një grupi dydimensional. Kjo është, vizualisht, një grup dy-dimensionale është një tabelë e zakonshme, me rreshta dhe kolona. Në fakt, një grup dydimensional është një grup njëdimensional i vargjeve njëdimensionale. Struktura e një grupi dydimensional të quajtur a, me madhësi m me n, është paraqitur më poshtë (shih Figurën 4).

Figura 4 - Vargjet në C ++

ku, m është numri i rreshtave të një grupi dydimensional;
n është numri i kolonave në një grup dy-dimensional;
m * n është numri i elementeve në grup.

// sintaksë për deklarimin e një grupi dydimensional / * lloji i të dhënave * / / * emri i grupit * /;

Në deklarimin e një grupi dydimensional, si dhe në deklarimin e një grupi njëdimensional, gjëja e parë që duhet bërë është të specifikoni:

  • lloji i të dhënave;
  • emri i grupit.

Pas kësaj, në kllapat e para katrore tregohet numri i rreshtave të një grupi dydimensional, në kllapat e dyta katrore - numri i kolonave të një grupi dydimensional. Një grup dydimensional ndryshon vizualisht nga një grup njëdimensional nga çifti i dytë i kllapave katrore. Shqyrtoni një shembull të deklarimit të një grupi dydimensional. Supozoni se duhet të deklarojmë një grup dy-dimensional, me numrin e elementeve të barabartë me 15. Në këtë rast, një grup dydimensional mund të ketë tre rreshta dhe pesë kolona, ​​ose pesë rreshta dhe tre kolona.

// shembull i deklarimit të një grupi dydimensional: int a;

  • a - emri i një grupi me numra të plotë
  • numri në kllapat e para katrore tregon numrin e linjave të grupit dydimensional, në këtë rast janë 5;
  • numri në kllapat e dyta katrore tregon numrin e kolonave në grupin dydimensional, në këtë rast janë 3.

// inicializoni një grup dydimensional: int a = ((4, 7, 8), (9, 66, -1), (5, -5, 0), (3, -3, 30), (1 , 1, një) );

Ky grup ka 5 rreshta, 3 kolona. pas shenjës së caktimit vendosen mbajtëse kaçurrela të zakonshme, brenda të cilave ka aq palë kllapa kaçurrela sa duhet të ketë vija në një grup dydimensional dhe këto kllapa ndahen me presje. Në çdo palë kllapa kaçurrela, shkruani elementet e një grupi dydimensional, të ndarë me presje. Të gjithë mbajtëset kaçurrelë duhet të kenë të njëjtin numër elementësh. Meqenëse ka pesë rreshta në grup, ka edhe pesë kllapa të brendshme. Kllapat e brendshme përmbajnë nga tre elementë secila, pasi numri i kolonave është tre. Grafikisht, grupi ynë do të duket si një tabelë dy-dimensionale (shih Figurën 5).

Figura 5 - Vargjet në C ++

Në çdo qelizë të një grupi dydimensional a tregohet vlera, adresa e kësaj qelize tregohet në këndin e poshtëm djathtas. Adresa e qelizës së një grupi dydimensional është emri i grupit, numri i rreshtit dhe numri i kolonës.

Le të zhvillojmë një program të thjeshtë për përpunimin e një grupi dydimensional, i cili quhet "Labyrinth". Labirinti duhet të ndërtohet mbi bazën e një grupi dy-dimensionale. Ne do të zgjedhim madhësinë e labirintit sipas gjykimit tonë.

// array2.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #include "stdafx.h" #include < 33; i++) //переключение по строкам { for (int j = 0; j < 20; j++)// переключение по столбцам if (mas[i][j] == 1) { // вывести два раза символ (номер которого 176 в таблице аски) в консоль cout << static_cast(176); cout<< static_cast(176); ) ndryshe cout<< " "; // вывести два пробела cout << endl; } system("pause"); return 0; }

// kodi Kodi :: Blloqe

// Kodi Dev-C ++

// array2.cpp: përcakton pikën hyrëse për aplikacionin e konsolës. #përfshi duke përdorur hapësirën e emrave std; int main (int argc, char * argv) (// 1-kushtëzuar "muret e labirintit" // 2- "rruga e saktë, dalja nga labirinti" // 0- "rruga e rreme" int mas = ((1, 2,1 , 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,), // inicializimi i një dydimensionale grup (1,2,1,0 , 0,1,0,1,2,2,2,1,1,1,1,0,0,0,0,1,), (1,2,1 ,1,0,1,0, 1,2,1,2,2,2,2,2,1,0,1,1,0,1,), (1,2,2,2,2, 2,2,1,2,1,1 , 1,1,2,1,0,0,1,0,1, (1,1,1,1,1,1,2,1,2 ,1,0,0,1,2, 1,1,0,1,0,1,), (1,0,0,1,0,0,2,2,2,1,1,0, 0,2,0,0,0,1 , 0,1,), (1,0,1,1,0,1,1,1,1,1,0,0,1,2,1,1 ,1,1,0,1,), (1.0.0.0.0.0.0.0.0.0.1.1.1.1.2.1.0.0.0.1,), (1.1.1, 1,1,1,0,1 ,1,1,2,2,2,2,2,1,0,1,1,1,1,), (1,1,0,0,0,1.0 , 0,1,1,2, 1,1,1,1,0,0,0,0,1,), (1,0,0,1,0,0,0,0,0,1, 2,2,2,2,1 ,1,1,1,0,1,), (1,1,1,1,1,1,1,1,1,1,1,1,1,2 , 1,0,0,0, 0,1,), (1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,0,1, 1,1,1,) , (1,2,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,) , (1,2,1 ,0,0,0,1,2,2,2,1,0,0,0,0,0,1,1,0,1,), (1,2,1 , 1,1,1, 1,2,1,2,1,1,1,0,1,0,0,0,0,1,), (1,2,1,2,2,2, 1,2,1,2 ,2,2,1,1,1,1,1,1,1,1,), (1,2,1,2,1,2,1,2,1.0 , 1,2,2,2, 2,2,2,2,2,2,1,), (1,2,1,2,1,2,1 , 2,1,0,1,1,1,1,1,1,1,1,2,1,), (1,2,1,2,1,2,1,2,1,0, 0,0,0,0,0,0,0,0,2,1,), (1,2,1,2,1,2,2,2,1,0,1,1,1,1 , 1,1,0,1,2,1,), (1,2,1,2,1,1,1,1,1,0,0,0,1,0,1,0,0, 1,2,1,), (1,2,1,2,2,1,0,0,1,1,1,0,0,0,1,0,1,1,2,1,) , (1,2,1,1,2,1,1,0,0,0,0,0,1,0,1,0,0,1,2,1,), (1,2,1 , 1,2,1,0,0,1,1,1,1,1,1,1,1,1,1,1,2,1,), (1,2,1,1,2, 1, 1,0,1,2,2,2,2,2,2,2,2,2,2,2,1, (1,2,1,1,2,1,0,0 ,1,2 , 1,1,1,1,1,1,1,1,1,1,1,), (1,2,1,1,2,1,0,1,1,2, 1,1,1, 1,1,1,1,1,2,2,), (1,2,1,1,2,1,0,0,1,2,1,1,2,2 ,2,2,2,2 , 2,2,1,), (1,2,1,1,2,1,0,1,1,2,1,1,2,1,1,1, 1,1,1,1,1, ), (1,2,1,1,2,1,0,0,1,2,1,1,2,1,0,0,0,1,0 ,1,), (1,2, 2,2,2,1,0,1,1,2,2,2,2,2,0,0,1,0,0,0,1,) (1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,)); // dy unaza - një e brendshme dhe një e jashtme, të cilat aksesojnë çdo element të grupit për (int i = 0; i< 33; i++) //переключение по строкам { for (int j = 0; j < 20; j++)// переключение по столбцам if (mas[i][j] == 1) { // вывести два раза символ (номер которого 176 в таблице аски) в консоль cout << static_cast(176); cout<< static_cast(176); ) ndryshe cout<< " "; // вывести два пробела cout << endl; } return 0; }

Shtigjet e sakta dhe të rreme mund të shënohen me të njëjtin numër, për shembull, zero, por për qartësi, shtegu i saktë caktohet me numrin 2. Vargu u inicializua me dorë, vetëm për të thjeshtuar programin. Meqenëse programi është duke përpunuar një grup dy-dimensionale, nevojiten dy sythe për të kaluar midis elementeve të një grupi dydimensional. Cikli i parë for kalon midis linjave të një grupi dydimensional. Meqenëse ka 33 vargje në një grup dydimensional, ndryshorja numërues i rritet nga 0 në 33, rreshti 46... Brenda ciklit të parë, ekziston një lak for që kalon midis elementeve të vargut të një vargu dydimensional. Në trupin e ciklit të dytë for, një operacion unar i konvertimit të tipit të të dhënave kryhet nga brenda - static_cast<>(), i cili printon karakterin, në numrin 176. Operacioni i konvertimit të tipit të të dhënave është dublikuar për të rritur gjerësinë e labirintit. Rezultati i programit (shih Figurën 6).

Figura 6 - Vargjet në C ++

Artikujt kryesorë të lidhur