snipt

Ctrl+h for KB shortcuts

C++

lista_polje.h -- implementacija liste pomocu polja

#ifndef LISTA_POLJE_H_INCLUDED
#define LISTA_POLJE_H_INCLUDED
#endif // LISTA_POLJE_H_INCLUDED

struct lista_polje {
    podaci pod[1024];
    int kursor;
};




//funkcije za zadatak
int InsertL(lista_polje *);
void IspisOdKraja(lista_polje *);
int OpremaNakon2009(lista_polje *);
bool DeleteL(lista_polje *, int );
void RazduziZaposlenika(lista_polje *, int);
void SilaznoSortiranje(lista_polje *);


void initL(lista_polje *lp)
{
    lp->kursor = 0;
}

int InsertL(lista_polje *lp)
{
        if(lp->kursor >= 1024)
            return false;

        static int sifra = 1;

        podaci pod;


        pod.sifra = sifra;
        cout << "Naziv opreme: ";
        cin >> pod.oprema;
        cout << "Naziv proizvodjaca: ";
        cin >> pod.proizvodj;
        cout << "Godina proizvodnje: ";
        cin >> pod.god_proizv;
        cout << "MBR zaposlenika: ";
        cin >> pod.mbr_zaposlenika;

        lp->pod[lp->kursor++] = pod;

        ++sifra;
        return true;

}

void IspisOdKraja(lista_polje *lp)
{
    for(int i = lp->kursor - 1; i >= 0; --i)
        print_podaci(lp->pod[i]);
}


int OpremaNakon2009(lista_polje *lp)
{
     cout << "\n\n----------Racunalna oprema proizvodena nakon 2009. godine--------\n\n" << endl;
     int broj_oprema = 0;
     for(int i = 0; i < lp->kursor; ++i)
     {
         if(lp->pod[i].god_proizv >= 2009) {
                print_podaci(lp->pod[i]);

                ++broj_oprema;
                cout << "----------------";
         }

     }
     return broj_oprema;
}

bool DeleteL(lista_polje *lp, int sifra)
{
    for(int i = 0; i < lp->kursor; ++i)
    {
        if(lp->pod[i].sifra == sifra) {
            for(int j = i + 1; j < lp->kursor; ++j)
            {
                lp->pod[j - 1] = lp->pod[j];
            }
            lp->kursor--;
            return true;
        }
    }
    return false;

}

void RazduziZaposlenika(lista_polje *lp, int mbr)
{
    for(int i = 0; i < lp->kursor; ++i)
    {
        if(lp->pod[i].mbr_zaposlenika == mbr)
        {
            DeleteL(lp, lp->pod[i].sifra);
            --i;
        }

    }

}


void SilaznoSortiranje(lista_polje *lp)
{
     int i, j, flag = 1;    // set flag to 1 to start first pass
     podaci temp;             // holding variable
     int numLength = lp->kursor;
     for(i = 1; (i <= numLength) && flag; i++)
     {
          flag = 0;
          for (j=0; j < (numLength - 1); j++)
         {
               if (strcmp(lp->pod[j+1].proizvodj, lp->pod[j].proizvodj) < 0)      // ascending order simply changes to <
              {
                    temp = lp->pod[j];             // swap elements
                    lp->pod[j] = lp->pod[j+1];
                    lp->pod[j+1] = temp;
                    flag = 1;               // indicates that a swap occurred.
               }
          }
     }
}

//dodatne funkcije


int EndL(lista_polje *lp)
{
    return lp->kursor;
}

int FirstL(lista_polje *lp)
{
    if(lp->kursor == 0)
        return EndL(lp);
    return 0;
}

int NextL(int p, lista_polje *lp)
{
    if(p >= lp->kursor)
        return EndL(lp);
    if(lp->kursor == 0)
        throw new EmptyException;
    return p + 1;

}


int PreviousL(int p, lista_polje *lp)
{
    if(p > lp->kursor)
        return EndL(lp);
    if(p == 0)
        throw new PreviousException;
    return p - 1;
}
int LocateL(int sifra, lista_polje *lp)
{
    for(int i = 0; i < lp->kursor; ++i) {
        if(lp->pod[i].sifra == sifra)
            return i;
    }
    return -1;
}

void DeleteAll(lista_polje *lp)
{
    lp->kursor = 0;
}


podaci RetreiveL(int p, lista_polje *lp)
{
    if(p >= lp->kursor)
        throw new RangeException;
    if(lp->kursor == 0)
        throw new EmptyException;
    return lp->pod[p];
}
https://snipt.net/embed/9c249a2eddc1d7cc9766f7ba9161c3f8/
/raw/9c249a2eddc1d7cc9766f7ba9161c3f8/
9c249a2eddc1d7cc9766f7ba9161c3f8
cpp
C++
188
2019-06-15T16:29:27
True
False
False
/api/public/snipt/31729/
lista_poljeh-implementacija-liste-pomocu-polja
<table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><a href="#L-1"> 1</a> <a href="#L-2"> 2</a> <a href="#L-3"> 3</a> <a href="#L-4"> 4</a> <a href="#L-5"> 5</a> <a href="#L-6"> 6</a> <a href="#L-7"> 7</a> <a href="#L-8"> 8</a> <a href="#L-9"> 9</a> <a href="#L-10"> 10</a> <a href="#L-11"> 11</a> <a href="#L-12"> 12</a> <a href="#L-13"> 13</a> <a href="#L-14"> 14</a> <a href="#L-15"> 15</a> <a href="#L-16"> 16</a> <a href="#L-17"> 17</a> <a href="#L-18"> 18</a> <a href="#L-19"> 19</a> <a href="#L-20"> 20</a> <a href="#L-21"> 21</a> <a href="#L-22"> 22</a> <a href="#L-23"> 23</a> <a href="#L-24"> 24</a> <a href="#L-25"> 25</a> <a href="#L-26"> 26</a> <a href="#L-27"> 27</a> <a href="#L-28"> 28</a> <a href="#L-29"> 29</a> <a href="#L-30"> 30</a> <a href="#L-31"> 31</a> <a href="#L-32"> 32</a> <a href="#L-33"> 33</a> <a href="#L-34"> 34</a> <a href="#L-35"> 35</a> <a href="#L-36"> 36</a> <a href="#L-37"> 37</a> <a href="#L-38"> 38</a> <a href="#L-39"> 39</a> <a href="#L-40"> 40</a> <a href="#L-41"> 41</a> <a href="#L-42"> 42</a> <a href="#L-43"> 43</a> <a href="#L-44"> 44</a> <a href="#L-45"> 45</a> <a href="#L-46"> 46</a> <a href="#L-47"> 47</a> <a href="#L-48"> 48</a> <a href="#L-49"> 49</a> <a href="#L-50"> 50</a> <a href="#L-51"> 51</a> <a href="#L-52"> 52</a> <a href="#L-53"> 53</a> <a href="#L-54"> 54</a> <a href="#L-55"> 55</a> <a href="#L-56"> 56</a> <a href="#L-57"> 57</a> <a href="#L-58"> 58</a> <a href="#L-59"> 59</a> <a href="#L-60"> 60</a> <a href="#L-61"> 61</a> <a href="#L-62"> 62</a> <a href="#L-63"> 63</a> <a href="#L-64"> 64</a> <a href="#L-65"> 65</a> <a href="#L-66"> 66</a> <a href="#L-67"> 67</a> <a href="#L-68"> 68</a> <a href="#L-69"> 69</a> <a href="#L-70"> 70</a> <a href="#L-71"> 71</a> <a href="#L-72"> 72</a> <a href="#L-73"> 73</a> <a href="#L-74"> 74</a> <a href="#L-75"> 75</a> <a href="#L-76"> 76</a> <a href="#L-77"> 77</a> <a href="#L-78"> 78</a> <a href="#L-79"> 79</a> <a href="#L-80"> 80</a> <a href="#L-81"> 81</a> <a href="#L-82"> 82</a> <a href="#L-83"> 83</a> <a href="#L-84"> 84</a> <a href="#L-85"> 85</a> <a href="#L-86"> 86</a> <a href="#L-87"> 87</a> <a href="#L-88"> 88</a> <a href="#L-89"> 89</a> <a href="#L-90"> 90</a> <a href="#L-91"> 91</a> <a href="#L-92"> 92</a> <a href="#L-93"> 93</a> <a href="#L-94"> 94</a> <a href="#L-95"> 95</a> <a href="#L-96"> 96</a> <a href="#L-97"> 97</a> <a href="#L-98"> 98</a> <a href="#L-99"> 99</a> <a href="#L-100">100</a> <a href="#L-101">101</a> <a href="#L-102">102</a> <a href="#L-103">103</a> <a href="#L-104">104</a> <a href="#L-105">105</a> <a href="#L-106">106</a> <a href="#L-107">107</a> <a href="#L-108">108</a> <a href="#L-109">109</a> <a href="#L-110">110</a> <a href="#L-111">111</a> <a href="#L-112">112</a> <a href="#L-113">113</a> <a href="#L-114">114</a> <a href="#L-115">115</a> <a href="#L-116">116</a> <a href="#L-117">117</a> <a href="#L-118">118</a> <a href="#L-119">119</a> <a href="#L-120">120</a> <a href="#L-121">121</a> <a href="#L-122">122</a> <a href="#L-123">123</a> <a href="#L-124">124</a> <a href="#L-125">125</a> <a href="#L-126">126</a> <a href="#L-127">127</a> <a href="#L-128">128</a> <a href="#L-129">129</a> <a href="#L-130">130</a> <a href="#L-131">131</a> <a href="#L-132">132</a> <a href="#L-133">133</a> <a href="#L-134">134</a> <a href="#L-135">135</a> <a href="#L-136">136</a> <a href="#L-137">137</a> <a href="#L-138">138</a> <a href="#L-139">139</a> <a href="#L-140">140</a> <a href="#L-141">141</a> <a href="#L-142">142</a> <a href="#L-143">143</a> <a href="#L-144">144</a> <a href="#L-145">145</a> <a href="#L-146">146</a> <a href="#L-147">147</a> <a href="#L-148">148</a> <a href="#L-149">149</a> <a href="#L-150">150</a> <a href="#L-151">151</a> <a href="#L-152">152</a> <a href="#L-153">153</a> <a href="#L-154">154</a> <a href="#L-155">155</a> <a href="#L-156">156</a> <a href="#L-157">157</a> <a href="#L-158">158</a> <a href="#L-159">159</a> <a href="#L-160">160</a> <a href="#L-161">161</a> <a href="#L-162">162</a> <a href="#L-163">163</a> <a href="#L-164">164</a> <a href="#L-165">165</a> <a href="#L-166">166</a> <a href="#L-167">167</a> <a href="#L-168">168</a> <a href="#L-169">169</a> <a href="#L-170">170</a> <a href="#L-171">171</a> <a href="#L-172">172</a> <a href="#L-173">173</a> <a href="#L-174">174</a> <a href="#L-175">175</a> <a href="#L-176">176</a> <a href="#L-177">177</a> <a href="#L-178">178</a> <a href="#L-179">179</a> <a href="#L-180">180</a> <a href="#L-181">181</a> <a href="#L-182">182</a> <a href="#L-183">183</a> <a href="#L-184">184</a> <a href="#L-185">185</a> <a href="#L-186">186</a> <a href="#L-187">187</a></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span id="L-1"><a name="L-1"></a><span class="cp">#ifndef LISTA_POLJE_H_INCLUDED</span> </span><span id="L-2"><a name="L-2"></a><span class="cp">#define LISTA_POLJE_H_INCLUDED</span> </span><span id="L-3"><a name="L-3"></a><span class="cp">#endif </span><span class="c1">// LISTA_POLJE_H_INCLUDED</span> </span><span id="L-4"><a name="L-4"></a> </span><span id="L-5"><a name="L-5"></a><span class="k">struct</span> <span class="n">lista_polje</span> <span class="p">{</span> </span><span id="L-6"><a name="L-6"></a> <span class="n">podaci</span> <span class="n">pod</span><span class="p">[</span><span class="mi">1024</span><span class="p">];</span> </span><span id="L-7"><a name="L-7"></a> <span class="kt">int</span> <span class="n">kursor</span><span class="p">;</span> </span><span id="L-8"><a name="L-8"></a><span class="p">};</span> </span><span id="L-9"><a name="L-9"></a> </span><span id="L-10"><a name="L-10"></a> </span><span id="L-11"><a name="L-11"></a> </span><span id="L-12"><a name="L-12"></a> </span><span id="L-13"><a name="L-13"></a><span class="c1">//funkcije za zadatak</span> </span><span id="L-14"><a name="L-14"></a><span class="kt">int</span> <span class="nf">InsertL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="p">);</span> </span><span id="L-15"><a name="L-15"></a><span class="kt">void</span> <span class="nf">IspisOdKraja</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="p">);</span> </span><span id="L-16"><a name="L-16"></a><span class="kt">int</span> <span class="nf">OpremaNakon2009</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="p">);</span> </span><span id="L-17"><a name="L-17"></a><span class="kt">bool</span> <span class="nf">DeleteL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="p">,</span> <span class="kt">int</span> <span class="p">);</span> </span><span id="L-18"><a name="L-18"></a><span class="kt">void</span> <span class="nf">RazduziZaposlenika</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="p">,</span> <span class="kt">int</span><span class="p">);</span> </span><span id="L-19"><a name="L-19"></a><span class="kt">void</span> <span class="nf">SilaznoSortiranje</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="p">);</span> </span><span id="L-20"><a name="L-20"></a> </span><span id="L-21"><a name="L-21"></a> </span><span id="L-22"><a name="L-22"></a><span class="kt">void</span> <span class="nf">initL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-23"><a name="L-23"></a><span class="p">{</span> </span><span id="L-24"><a name="L-24"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-25"><a name="L-25"></a><span class="p">}</span> </span><span id="L-26"><a name="L-26"></a> </span><span id="L-27"><a name="L-27"></a><span class="kt">int</span> <span class="nf">InsertL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-28"><a name="L-28"></a><span class="p">{</span> </span><span id="L-29"><a name="L-29"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">&gt;=</span> <span class="mi">1024</span><span class="p">)</span> </span><span id="L-30"><a name="L-30"></a> <span class="k">return</span> <span class="nb">false</span><span class="p">;</span> </span><span id="L-31"><a name="L-31"></a> </span><span id="L-32"><a name="L-32"></a> <span class="k">static</span> <span class="kt">int</span> <span class="n">sifra</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-33"><a name="L-33"></a> </span><span id="L-34"><a name="L-34"></a> <span class="n">podaci</span> <span class="n">pod</span><span class="p">;</span> </span><span id="L-35"><a name="L-35"></a> </span><span id="L-36"><a name="L-36"></a> </span><span id="L-37"><a name="L-37"></a> <span class="n">pod</span><span class="p">.</span><span class="n">sifra</span> <span class="o">=</span> <span class="n">sifra</span><span class="p">;</span> </span><span id="L-38"><a name="L-38"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Naziv opreme: &quot;</span><span class="p">;</span> </span><span id="L-39"><a name="L-39"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">pod</span><span class="p">.</span><span class="n">oprema</span><span class="p">;</span> </span><span id="L-40"><a name="L-40"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Naziv proizvodjaca: &quot;</span><span class="p">;</span> </span><span id="L-41"><a name="L-41"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">pod</span><span class="p">.</span><span class="n">proizvodj</span><span class="p">;</span> </span><span id="L-42"><a name="L-42"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Godina proizvodnje: &quot;</span><span class="p">;</span> </span><span id="L-43"><a name="L-43"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">pod</span><span class="p">.</span><span class="n">god_proizv</span><span class="p">;</span> </span><span id="L-44"><a name="L-44"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;MBR zaposlenika: &quot;</span><span class="p">;</span> </span><span id="L-45"><a name="L-45"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">pod</span><span class="p">.</span><span class="n">mbr_zaposlenika</span><span class="p">;</span> </span><span id="L-46"><a name="L-46"></a> </span><span id="L-47"><a name="L-47"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">pod</span><span class="p">;</span> </span><span id="L-48"><a name="L-48"></a> </span><span id="L-49"><a name="L-49"></a> <span class="o">++</span><span class="n">sifra</span><span class="p">;</span> </span><span id="L-50"><a name="L-50"></a> <span class="k">return</span> <span class="nb">true</span><span class="p">;</span> </span><span id="L-51"><a name="L-51"></a> </span><span id="L-52"><a name="L-52"></a><span class="p">}</span> </span><span id="L-53"><a name="L-53"></a> </span><span id="L-54"><a name="L-54"></a><span class="kt">void</span> <span class="nf">IspisOdKraja</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-55"><a name="L-55"></a><span class="p">{</span> </span><span id="L-56"><a name="L-56"></a> <span class="k">for</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span> <span class="n">i</span> <span class="o">&gt;=</span> <span class="mi">0</span><span class="p">;</span> <span class="o">--</span><span class="n">i</span><span class="p">)</span> </span><span id="L-57"><a name="L-57"></a> <span class="n">print_podaci</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">]);</span> </span><span id="L-58"><a name="L-58"></a><span class="p">}</span> </span><span id="L-59"><a name="L-59"></a> </span><span id="L-60"><a name="L-60"></a> </span><span id="L-61"><a name="L-61"></a><span class="kt">int</span> <span class="nf">OpremaNakon2009</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-62"><a name="L-62"></a><span class="p">{</span> </span><span id="L-63"><a name="L-63"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;</span><span class="se">\n\n</span><span class="s">----------Racunalna oprema proizvodena nakon 2009. godine--------</span><span class="se">\n\n</span><span class="s">&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-64"><a name="L-64"></a> <span class="kt">int</span> <span class="n">broj_oprema</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-65"><a name="L-65"></a> <span class="k">for</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o">&lt;</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> </span><span id="L-66"><a name="L-66"></a> <span class="p">{</span> </span><span id="L-67"><a name="L-67"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">].</span><span class="n">god_proizv</span> <span class="o">&gt;=</span> <span class="mi">2009</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-68"><a name="L-68"></a> <span class="n">print_podaci</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">]);</span> </span><span id="L-69"><a name="L-69"></a> </span><span id="L-70"><a name="L-70"></a> <span class="o">++</span><span class="n">broj_oprema</span><span class="p">;</span> </span><span id="L-71"><a name="L-71"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;----------------&quot;</span><span class="p">;</span> </span><span id="L-72"><a name="L-72"></a> <span class="p">}</span> </span><span id="L-73"><a name="L-73"></a> </span><span id="L-74"><a name="L-74"></a> <span class="p">}</span> </span><span id="L-75"><a name="L-75"></a> <span class="k">return</span> <span class="n">broj_oprema</span><span class="p">;</span> </span><span id="L-76"><a name="L-76"></a><span class="p">}</span> </span><span id="L-77"><a name="L-77"></a> </span><span id="L-78"><a name="L-78"></a><span class="kt">bool</span> <span class="nf">DeleteL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">,</span> <span class="kt">int</span> <span class="n">sifra</span><span class="p">)</span> </span><span id="L-79"><a name="L-79"></a><span class="p">{</span> </span><span id="L-80"><a name="L-80"></a> <span class="k">for</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o">&lt;</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> </span><span id="L-81"><a name="L-81"></a> <span class="p">{</span> </span><span id="L-82"><a name="L-82"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">].</span><span class="n">sifra</span> <span class="o">==</span> <span class="n">sifra</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-83"><a name="L-83"></a> <span class="k">for</span><span class="p">(</span><span class="kt">int</span> <span class="n">j</span> <span class="o">=</span> <span class="n">i</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span> <span class="n">j</span> <span class="o">&lt;</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> <span class="o">++</span><span class="n">j</span><span class="p">)</span> </span><span id="L-84"><a name="L-84"></a> <span class="p">{</span> </span><span id="L-85"><a name="L-85"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span> <span class="o">-</span> <span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="p">];</span> </span><span id="L-86"><a name="L-86"></a> <span class="p">}</span> </span><span id="L-87"><a name="L-87"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="o">--</span><span class="p">;</span> </span><span id="L-88"><a name="L-88"></a> <span class="k">return</span> <span class="nb">true</span><span class="p">;</span> </span><span id="L-89"><a name="L-89"></a> <span class="p">}</span> </span><span id="L-90"><a name="L-90"></a> <span class="p">}</span> </span><span id="L-91"><a name="L-91"></a> <span class="k">return</span> <span class="nb">false</span><span class="p">;</span> </span><span id="L-92"><a name="L-92"></a> </span><span id="L-93"><a name="L-93"></a><span class="p">}</span> </span><span id="L-94"><a name="L-94"></a> </span><span id="L-95"><a name="L-95"></a><span class="kt">void</span> <span class="nf">RazduziZaposlenika</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">,</span> <span class="kt">int</span> <span class="n">mbr</span><span class="p">)</span> </span><span id="L-96"><a name="L-96"></a><span class="p">{</span> </span><span id="L-97"><a name="L-97"></a> <span class="k">for</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o">&lt;</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> </span><span id="L-98"><a name="L-98"></a> <span class="p">{</span> </span><span id="L-99"><a name="L-99"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">].</span><span class="n">mbr_zaposlenika</span> <span class="o">==</span> <span class="n">mbr</span><span class="p">)</span> </span><span id="L-100"><a name="L-100"></a> <span class="p">{</span> </span><span id="L-101"><a name="L-101"></a> <span class="n">DeleteL</span><span class="p">(</span><span class="n">lp</span><span class="p">,</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">].</span><span class="n">sifra</span><span class="p">);</span> </span><span id="L-102"><a name="L-102"></a> <span class="o">--</span><span class="n">i</span><span class="p">;</span> </span><span id="L-103"><a name="L-103"></a> <span class="p">}</span> </span><span id="L-104"><a name="L-104"></a> </span><span id="L-105"><a name="L-105"></a> <span class="p">}</span> </span><span id="L-106"><a name="L-106"></a> </span><span id="L-107"><a name="L-107"></a><span class="p">}</span> </span><span id="L-108"><a name="L-108"></a> </span><span id="L-109"><a name="L-109"></a> </span><span id="L-110"><a name="L-110"></a><span class="kt">void</span> <span class="nf">SilaznoSortiranje</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-111"><a name="L-111"></a><span class="p">{</span> </span><span id="L-112"><a name="L-112"></a> <span class="kt">int</span> <span class="n">i</span><span class="p">,</span> <span class="n">j</span><span class="p">,</span> <span class="n">flag</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="c1">// set flag to 1 to start first pass</span> </span><span id="L-113"><a name="L-113"></a> <span class="n">podaci</span> <span class="n">temp</span><span class="p">;</span> <span class="c1">// holding variable</span> </span><span id="L-114"><a name="L-114"></a> <span class="kt">int</span> <span class="n">numLength</span> <span class="o">=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> </span><span id="L-115"><a name="L-115"></a> <span class="k">for</span><span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="p">(</span><span class="n">i</span> <span class="o">&lt;=</span> <span class="n">numLength</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="n">flag</span><span class="p">;</span> <span class="n">i</span><span class="o">++</span><span class="p">)</span> </span><span id="L-116"><a name="L-116"></a> <span class="p">{</span> </span><span id="L-117"><a name="L-117"></a> <span class="n">flag</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-118"><a name="L-118"></a> <span class="k">for</span> <span class="p">(</span><span class="n">j</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="n">j</span> <span class="o">&lt;</span> <span class="p">(</span><span class="n">numLength</span> <span class="o">-</span> <span class="mi">1</span><span class="p">);</span> <span class="n">j</span><span class="o">++</span><span class="p">)</span> </span><span id="L-119"><a name="L-119"></a> <span class="p">{</span> </span><span id="L-120"><a name="L-120"></a> <span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">1</span><span class="p">].</span><span class="n">proizvodj</span><span class="p">,</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="p">].</span><span class="n">proizvodj</span><span class="p">)</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">)</span> <span class="c1">// ascending order simply changes to &lt;</span> </span><span id="L-121"><a name="L-121"></a> <span class="p">{</span> </span><span id="L-122"><a name="L-122"></a> <span class="n">temp</span> <span class="o">=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="p">];</span> <span class="c1">// swap elements</span> </span><span id="L-123"><a name="L-123"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="p">]</span> <span class="o">=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">1</span><span class="p">];</span> </span><span id="L-124"><a name="L-124"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">j</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">temp</span><span class="p">;</span> </span><span id="L-125"><a name="L-125"></a> <span class="n">flag</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="c1">// indicates that a swap occurred.</span> </span><span id="L-126"><a name="L-126"></a> <span class="p">}</span> </span><span id="L-127"><a name="L-127"></a> <span class="p">}</span> </span><span id="L-128"><a name="L-128"></a> <span class="p">}</span> </span><span id="L-129"><a name="L-129"></a><span class="p">}</span> </span><span id="L-130"><a name="L-130"></a> </span><span id="L-131"><a name="L-131"></a><span class="c1">//dodatne funkcije</span> </span><span id="L-132"><a name="L-132"></a> </span><span id="L-133"><a name="L-133"></a> </span><span id="L-134"><a name="L-134"></a><span class="kt">int</span> <span class="nf">EndL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-135"><a name="L-135"></a><span class="p">{</span> </span><span id="L-136"><a name="L-136"></a> <span class="k">return</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> </span><span id="L-137"><a name="L-137"></a><span class="p">}</span> </span><span id="L-138"><a name="L-138"></a> </span><span id="L-139"><a name="L-139"></a><span class="kt">int</span> <span class="nf">FirstL</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-140"><a name="L-140"></a><span class="p">{</span> </span><span id="L-141"><a name="L-141"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-142"><a name="L-142"></a> <span class="k">return</span> <span class="n">EndL</span><span class="p">(</span><span class="n">lp</span><span class="p">);</span> </span><span id="L-143"><a name="L-143"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-144"><a name="L-144"></a><span class="p">}</span> </span><span id="L-145"><a name="L-145"></a> </span><span id="L-146"><a name="L-146"></a><span class="kt">int</span> <span class="nf">NextL</span><span class="p">(</span><span class="kt">int</span> <span class="n">p</span><span class="p">,</span> <span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-147"><a name="L-147"></a><span class="p">{</span> </span><span id="L-148"><a name="L-148"></a> <span class="k">if</span><span class="p">(</span><span class="n">p</span> <span class="o">&gt;=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">)</span> </span><span id="L-149"><a name="L-149"></a> <span class="k">return</span> <span class="n">EndL</span><span class="p">(</span><span class="n">lp</span><span class="p">);</span> </span><span id="L-150"><a name="L-150"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-151"><a name="L-151"></a> <span class="k">throw</span> <span class="k">new</span> <span class="n">EmptyException</span><span class="p">;</span> </span><span id="L-152"><a name="L-152"></a> <span class="k">return</span> <span class="n">p</span> <span class="o">+</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-153"><a name="L-153"></a> </span><span id="L-154"><a name="L-154"></a><span class="p">}</span> </span><span id="L-155"><a name="L-155"></a> </span><span id="L-156"><a name="L-156"></a> </span><span id="L-157"><a name="L-157"></a><span class="kt">int</span> <span class="nf">PreviousL</span><span class="p">(</span><span class="kt">int</span> <span class="n">p</span><span class="p">,</span> <span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-158"><a name="L-158"></a><span class="p">{</span> </span><span id="L-159"><a name="L-159"></a> <span class="k">if</span><span class="p">(</span><span class="n">p</span> <span class="o">&gt;</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">)</span> </span><span id="L-160"><a name="L-160"></a> <span class="k">return</span> <span class="n">EndL</span><span class="p">(</span><span class="n">lp</span><span class="p">);</span> </span><span id="L-161"><a name="L-161"></a> <span class="k">if</span><span class="p">(</span><span class="n">p</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-162"><a name="L-162"></a> <span class="k">throw</span> <span class="k">new</span> <span class="n">PreviousException</span><span class="p">;</span> </span><span id="L-163"><a name="L-163"></a> <span class="k">return</span> <span class="n">p</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-164"><a name="L-164"></a><span class="p">}</span> </span><span id="L-165"><a name="L-165"></a><span class="kt">int</span> <span class="nf">LocateL</span><span class="p">(</span><span class="kt">int</span> <span class="n">sifra</span><span class="p">,</span> <span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-166"><a name="L-166"></a><span class="p">{</span> </span><span id="L-167"><a name="L-167"></a> <span class="k">for</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o">&lt;</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-168"><a name="L-168"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">i</span><span class="p">].</span><span class="n">sifra</span> <span class="o">==</span> <span class="n">sifra</span><span class="p">)</span> </span><span id="L-169"><a name="L-169"></a> <span class="k">return</span> <span class="n">i</span><span class="p">;</span> </span><span id="L-170"><a name="L-170"></a> <span class="p">}</span> </span><span id="L-171"><a name="L-171"></a> <span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span> </span><span id="L-172"><a name="L-172"></a><span class="p">}</span> </span><span id="L-173"><a name="L-173"></a> </span><span id="L-174"><a name="L-174"></a><span class="kt">void</span> <span class="nf">DeleteAll</span><span class="p">(</span><span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-175"><a name="L-175"></a><span class="p">{</span> </span><span id="L-176"><a name="L-176"></a> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-177"><a name="L-177"></a><span class="p">}</span> </span><span id="L-178"><a name="L-178"></a> </span><span id="L-179"><a name="L-179"></a> </span><span id="L-180"><a name="L-180"></a><span class="n">podaci</span> <span class="nf">RetreiveL</span><span class="p">(</span><span class="kt">int</span> <span class="n">p</span><span class="p">,</span> <span class="n">lista_polje</span> <span class="o">*</span><span class="n">lp</span><span class="p">)</span> </span><span id="L-181"><a name="L-181"></a><span class="p">{</span> </span><span id="L-182"><a name="L-182"></a> <span class="k">if</span><span class="p">(</span><span class="n">p</span> <span class="o">&gt;=</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span><span class="p">)</span> </span><span id="L-183"><a name="L-183"></a> <span class="k">throw</span> <span class="k">new</span> <span class="n">RangeException</span><span class="p">;</span> </span><span id="L-184"><a name="L-184"></a> <span class="k">if</span><span class="p">(</span><span class="n">lp</span><span class="o">-&gt;</span><span class="n">kursor</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-185"><a name="L-185"></a> <span class="k">throw</span> <span class="k">new</span> <span class="n">EmptyException</span><span class="p">;</span> </span><span id="L-186"><a name="L-186"></a> <span class="k">return</span> <span class="n">lp</span><span class="o">-&gt;</span><span class="n">pod</span><span class="p">[</span><span class="n">p</span><span class="p">];</span> </span><span id="L-187"><a name="L-187"></a><span class="p">}</span> </span></pre></div> </td></tr></table>
lista, polja, vezana