Дефинирање и декларирање на еднодимензионални низи
Еднодимензионалните низи претставуваат структура на податоци која многу често се користи во програмирањето. Најпрво ќе видиме која е потребата од користење на овие структури, а потоа и како се декларираат, дефинираат и користат еднодимензионалните низи.
Пример1: Анализа на пример програма во која се внесуваат повеќе податоци од ист тип кои потоа се користат во програмата. Односно, треба да внесеме 5 вида на јужно овошје кои се продаваат на нашиот пазар.
TextWindow.Write(“Vnesi juzno ovosje br.1:“)
ovosje1=
TextWindow.Read ()
TextWindow.Write(“Vnesi juzno ovosje br.2:“)
ovosje2=
TextWindow.Read ()
TextWindow.Write (“Vnesi juzno ovosje br.3:“)
ovosje3=
TextWindow.Read ()
TextWindow.Write(“Vnesi juzno ovosje br.4:“)
ovosje4=
TextWindow.Read ()
TextWindow.Write(“Vnesi juzno ovosje br.5:“)
ovosje5=
TextWindow.Read ()
TextWindow.Write(“Na
nasiot pazar se prodavaat slednite juzni ovosja: ")
TextWindow.Write(ovosje1+“,
“+ovosje2+“,
“+ovosje3+“,
“+ovosje4+“,"+ovosje5+“,
“)
TextWindow.WriteLine (““)
Што заклучуваме од овој пример на програмски код?
- Програмскиот код е долг, се повторува истиот исказ за различна вредност на истиот тип на податок.
Што е подобро решение?
- Наместо да се користи нова променлива за секој од податоците, податоците можат да се сместат во иста променлива која ќе додава различна ознака за секој нов податок.
Да запомниме:
- Променливата
која може да има повеќе од една вредност
кои се различно означени се вика еднодимензионална низа или еднодимензионално
поле.
- Ознаките
на податоците може да бидат бројни или текстуални и се викаат индекси.
- Податоците во
низата
обично се викаат и членови на низата.
- Вредностите
на членовите во низата може да бидат броеви или текстови.
Активност 1:Внеси ја пример програмата запишана со помош на низа и анализирај го кодот и излезот.
For
i=1
To 5
TextWindow . Write (“Vnesi juzno ovosje br.“+ i +“: “)
ovosje[i] = TextWindow.Read ()
EndFor
TextWindow .Write
(“Na nasiot pazar se prodavaat slednite juzni ovosja: “)
For
i =
1 To 5
TextWindow.Write (ovosje[i])
if i<5 Then
TextWindow.Write (“, “)
EndIf
EndFor
TextWindow . WriteLine (““)
Воочи: Кое е името на низата? Како се означени членовите на низата? Колку членови има низата во програмата: Какви се вредностите на членовите; текстуални или бројни?
Активност 2: Напиши програма која внесува податоци за име, презиме и година на раѓање на 5 ученици од едно училиште.
For
i=1
To 5
TextWindow.Write (“Vnesi ime na ucenikot br.“ + i + “ : “)
ime[i]= TextWindow.Read ()
TextWindow.Write (“Vnesi prezime na ucenikot:“)
prezime[i]= TextWindow .Read ()
TextWindow.Write (“Vnesi ocenka
po informatika na ucenikot:“)
ocenka[i]= TextWindow .ReadNumber ()
EndFor
TextWindow .
Clear ()
For
i= 1
To 5
TextWindow.Write (“Vnesi go redniot
broj od 1 do 5 za ucenikot za koj sakas podatoci: “)
indeks= TextWindow . ReadNumber()
TextWindow . WriteLine (“Ucenikot “+ime[indeks]+“ “+prezime[indeks]+“ ima ocenka “ + ocenka[indeks]+“
po informatika“)
EndFor
Размисли: Зошто е потребен исказот за бришење на екранот по внесување на податоци за членовите на низата?
Активност 3: Напиши програма (квиз со прашања и одговори) со две низи, која во една низа сместува имиња на држави, а во друга имиња на главни градови, го брише екранот и по случаен избор поставува прашања за главен град на секоја држава:
For
i=1
To 5
TextWindow.Write (“vnesi drzava:“)
drzava[i]= TextWindow.Read ()
TextWindow.Write (“Vnesi glaven grad:“)
grad[i]= TextWindow.Read ()
EndFor
TextWindow.Clear ()
For
i=1
To 5
indeks= Math.GetRandomNumber
(5)
TextWindow.Write(“Koj e glaven grad na "+drzava[indeks]+“ ? ")
odgovor= TextWindow.Read ()
If odgovor = grad[indeks] Then
TextWindow.WriteLine(“Odgovorot e tocen!“)
Else
TextWindow . WriteLine (“Odgovorot ne e tocen!“)
EndIf
EndFor