snipt

Ctrl+h for KB shortcuts

Text only

SP - zadatak1- glavni program

#include <iostream>
#include <ctime>
#include <cstdlib>

//#include "pokazivaci.h"
#include "polje.h"

using namespace std;

bool unosOsobe(lista L) {
    ZaposlenaOsoba osoba1;
    for(int i=0; i<11; i++) osoba1.OIB[i] = rand()%10 + '0';
    osoba1.OIB[11] = '\0';
    cout << " OIB: " << osoba1.OIB << endl;
    
    cout << " Prezime: ";
    cin >> osoba1.prezime;
    cout << " Ime: ";
    cin >> osoba1.ime;
    
    cout << " Datum rodjenja (DD.MM.YYYY): ";
    cin >> osoba1.datum;
    cout << " Radno mjesto: ";
    cin >> osoba1.rad_mj;
    cout << endl;
    
    return InsertL(osoba1, EndL(L), L); }

element ListaN(int n, lista L) {
    int i = 0;
    element el = FirstL(L);
    for(int i=0; i<n; i++) {
        el = NextL(el, L); }
    return el; }
void QSort(lista L, int i1, int j1) {
    if(i1>=j1) {
        return; }
    int i=i1+1, k=i1;
    char oib[12];
    element elem1 = ListaN(k, L);
    strcpy(oib, RetreiveL(elem1, L).OIB);
    while(i<j1) {
        element el1 = ListaN(i, L);
        ZaposlenaOsoba zo1 = RetreiveL(el1, L);
        if(strcmp(zo1.OIB, oib) > 0) {
            DeleteL(el1, L);
            element zo1_el = ListaN(k, L);
            InsertL(zo1, zo1_el, L);
            k++; }
        i++; }

    QSort(L, i1, k);
    QSort(L, k+1, j1); }

void Sortiranje(lista L) {
    int n=0;
    for(element el=FirstL(L); el != EndL(L); el=NextL(el, L) ) {
        n++; }

    QSort(L, 0, n);

    element el = FirstL(L);
    while(el != EndL(L) ) {
        ZaposlenaOsoba osoba1;
        osoba1 = RetreiveL(el, L);
        cout << " OIB: " << osoba1.OIB << endl;
        cout << " Prezime: " << osoba1.prezime << endl;
        cout << " Ime: " << osoba1.ime << endl;
        cout << " Datum rodjenja: " << osoba1.datum << endl;
        cout << " Radno mjesto: " << osoba1.rad_mj << endl << endl;
        el = NextL(el, L); } }

int datumi[] = {321, 420, 521, 621, 723, 823, 923, 1024, 1122, 1222, 120, 219 };
string horo_znakovi[] = {"ovan", "bik", "blizanci", "rak", "lav", "djevica", "vaga", "skorpion", "strijelac", "jarac", "vodenjak", "ribe" };

void Pretrazivanje(lista L) {
    cout << endl << "Horoskop" << endl;
    element el = FirstL(L), ja_element = EndL(L);
    ZaposlenaOsoba ja;
    while(el != EndL(L) ) {
        ZaposlenaOsoba osoba1;
        osoba1 = RetreiveL(el, L);
        if(strcmp(osoba1.prezime, "Greguric") == 0 && strcmp(osoba1.ime, "Luka") == 0) {
            ja = osoba1;
            ja_element = LocateL(ja, L);
            break; }
        el = NextL(el, L); }
	
	if(ja_element==EndL(L)) {
		cout << "Nema mojih podataka u listi." << endl;
		return; }

    int trazeni;
    int mjesec_dan = (ja.datum[0]-'0')*10 + ja.datum[1]-'0' + (ja.datum[3]-'0')*1000 + (ja.datum[4]-'0')*100;

    for(int i=0; i<(sizeof(datumi)/sizeof(int))-1; i++) {
        if(datumi[i]<=mjesec_dan && mjesec_dan<datumi[i+1]) {
            trazeni = i;
            cout << "Moj horoskopski znak: " << horo_znakovi[i] << endl << endl;
            break; } }

    int brojac = 0;

    el = FirstL(L);
    while(el != EndL(L) ) {
        ZaposlenaOsoba osoba1;
        osoba1 = RetreiveL(el, L);
        if(el != ja_element) {
            int mjesec_dan = (osoba1.datum[0]-'0')*10 + osoba1.datum[1]-'0' + (osoba1.datum[3]-'0')*1000 + (osoba1.datum[4]-'0')*100;
            if(datumi[trazeni]<=mjesec_dan && mjesec_dan<datumi[trazeni+1]) {
                cout << " OIB: " << osoba1.OIB << endl;
                cout << " Prezime: " << osoba1.prezime << endl;
                cout << " Ime: " << osoba1.ime << endl;
                cout << " Datum rodjenja: " << osoba1.datum << endl;
                cout << " Radno mjesto: " << osoba1.rad_mj << endl << endl;
                brojac++; } }
        el = NextL(el, L); }

    cout << "Ukupan broj pronadjenih: " << brojac << endl; }

bool Brisanje1(lista L) {
    char OIB[12];
    cout << "Unesite OIB: "; cin >> OIB;
    bool testOk = 0;
    element el = FirstL(L);
    while(el != EndL(L) ) {
        ZaposlenaOsoba osoba1;
        osoba1 = RetreiveL(el, L);
        if(strcmp(osoba1.OIB, OIB) == 0) {
            testOk = DeleteL(LocateL(osoba1, L), L);
            break; }
        el = NextL(el, L); }

    return testOk; }

bool Brisanje2(lista L) {
    char rad_mj[40];
    cout << "Unesite radno mjesto: ";  cin >> rad_mj;
    bool testOk = 0;
    element el = FirstL(L);
    while(el != EndL(L) ) {
        ZaposlenaOsoba osoba1 = RetreiveL(el, L);
        if(strcmp(osoba1.rad_mj, rad_mj) == 0) {
            testOk = DeleteL(el, L);
            el = FirstL(L);
            if(testOk == 0)
                return 0; }
        else
            el = NextL(el, L); }

    return testOk; }

void m4Brisanje(lista L) {
    int brisiX;
    cout << "Odaberite:  " << endl;
    cout << "  1 - OIB" << endl;
    cout << "  2 - radno mjesto" << endl;
    cin >> brisiX;

    switch(brisiX) {
    case 1: {
        bool testOk = Brisanje1(L);
        if(testOk == 1)
            cout << "Izbrisan." << endl;
        else
            cout << "Ne postoji." << endl;
        break; }
    case 2: {
        bool testOk = Brisanje2(L);
        if(testOk == 1)
            cout << "Izbrisani." << endl;
        else
            cout << "Ne postoji." << endl;
        break; }
    default:
        break; } }

void IspisiIzbornik() {
    cout << endl << endl << "------------------" << endl;
    cout << "  1 - Unos" << endl;
    cout << "  2 - Sortiranje" << endl;
    cout << "  3 - Pretrazivanje" << endl;
    cout << "  4 - Brisanje" << endl;
    cout << "  9 - Izlaz" << endl; }

int main() {
    int un;

    srand(time(0));
    lista L = InitL(L);

    do {

        IspisiIzbornik();
        cin >> un;

        switch(un) {
        case 1: {
            bool testOk = unosOsobe(L);
            if(testOk == 1) {
                cout << "Zapis dodan." << endl; }
            else {
                cout << "Greska kod dodavanja zapisa." << endl; }
            break; }

        case 2: Sortiranje(L); break;
        case 3: Pretrazivanje(L); break;
        case 4: m4Brisanje(L); break;

        default: break; } }
    while(un != 9);

    return 0; }

Description

datoteka glavnog djela programa
https://snipt.net/embed/a21deda1040ef71af64317fbf5dda89f/
/raw/a21deda1040ef71af64317fbf5dda89f/
a21deda1040ef71af64317fbf5dda89f
text
Text only
214
2019-07-16T10:21:47
True
False
False
Nov 10, 2013 at 01:09 PM
/api/public/snipt/93177/
sp-zadatak1-glavni-program
<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> <a href="#L-188">188</a> <a href="#L-189">189</a> <a href="#L-190">190</a> <a href="#L-191">191</a> <a href="#L-192">192</a> <a href="#L-193">193</a> <a href="#L-194">194</a> <a href="#L-195">195</a> <a href="#L-196">196</a> <a href="#L-197">197</a> <a href="#L-198">198</a> <a href="#L-199">199</a> <a href="#L-200">200</a> <a href="#L-201">201</a> <a href="#L-202">202</a> <a href="#L-203">203</a> <a href="#L-204">204</a> <a href="#L-205">205</a> <a href="#L-206">206</a> <a href="#L-207">207</a> <a href="#L-208">208</a> <a href="#L-209">209</a> <a href="#L-210">210</a> <a href="#L-211">211</a> <a href="#L-212">212</a> <a href="#L-213">213</a></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span id="L-1"><a name="L-1"></a>#include &lt;iostream&gt; </span><span id="L-2"><a name="L-2"></a>#include &lt;ctime&gt; </span><span id="L-3"><a name="L-3"></a>#include &lt;cstdlib&gt; </span><span id="L-4"><a name="L-4"></a> </span><span id="L-5"><a name="L-5"></a>//#include &quot;pokazivaci.h&quot; </span><span id="L-6"><a name="L-6"></a>#include &quot;polje.h&quot; </span><span id="L-7"><a name="L-7"></a> </span><span id="L-8"><a name="L-8"></a>using namespace std; </span><span id="L-9"><a name="L-9"></a> </span><span id="L-10"><a name="L-10"></a>bool unosOsobe(lista L) { </span><span id="L-11"><a name="L-11"></a> ZaposlenaOsoba osoba1; </span><span id="L-12"><a name="L-12"></a> for(int i=0; i&lt;11; i++) osoba1.OIB[i] = rand()%10 + &#39;0&#39;; </span><span id="L-13"><a name="L-13"></a> osoba1.OIB[11] = &#39;\0&#39;; </span><span id="L-14"><a name="L-14"></a> cout &lt;&lt; &quot; OIB: &quot; &lt;&lt; osoba1.OIB &lt;&lt; endl; </span><span id="L-15"><a name="L-15"></a> </span><span id="L-16"><a name="L-16"></a> cout &lt;&lt; &quot; Prezime: &quot;; </span><span id="L-17"><a name="L-17"></a> cin &gt;&gt; osoba1.prezime; </span><span id="L-18"><a name="L-18"></a> cout &lt;&lt; &quot; Ime: &quot;; </span><span id="L-19"><a name="L-19"></a> cin &gt;&gt; osoba1.ime; </span><span id="L-20"><a name="L-20"></a> </span><span id="L-21"><a name="L-21"></a> cout &lt;&lt; &quot; Datum rodjenja (DD.MM.YYYY): &quot;; </span><span id="L-22"><a name="L-22"></a> cin &gt;&gt; osoba1.datum; </span><span id="L-23"><a name="L-23"></a> cout &lt;&lt; &quot; Radno mjesto: &quot;; </span><span id="L-24"><a name="L-24"></a> cin &gt;&gt; osoba1.rad_mj; </span><span id="L-25"><a name="L-25"></a> cout &lt;&lt; endl; </span><span id="L-26"><a name="L-26"></a> </span><span id="L-27"><a name="L-27"></a> return InsertL(osoba1, EndL(L), L); } </span><span id="L-28"><a name="L-28"></a> </span><span id="L-29"><a name="L-29"></a>element ListaN(int n, lista L) { </span><span id="L-30"><a name="L-30"></a> int i = 0; </span><span id="L-31"><a name="L-31"></a> element el = FirstL(L); </span><span id="L-32"><a name="L-32"></a> for(int i=0; i&lt;n; i++) { </span><span id="L-33"><a name="L-33"></a> el = NextL(el, L); } </span><span id="L-34"><a name="L-34"></a> return el; } </span><span id="L-35"><a name="L-35"></a>void QSort(lista L, int i1, int j1) { </span><span id="L-36"><a name="L-36"></a> if(i1&gt;=j1) { </span><span id="L-37"><a name="L-37"></a> return; } </span><span id="L-38"><a name="L-38"></a> int i=i1+1, k=i1; </span><span id="L-39"><a name="L-39"></a> char oib[12]; </span><span id="L-40"><a name="L-40"></a> element elem1 = ListaN(k, L); </span><span id="L-41"><a name="L-41"></a> strcpy(oib, RetreiveL(elem1, L).OIB); </span><span id="L-42"><a name="L-42"></a> while(i&lt;j1) { </span><span id="L-43"><a name="L-43"></a> element el1 = ListaN(i, L); </span><span id="L-44"><a name="L-44"></a> ZaposlenaOsoba zo1 = RetreiveL(el1, L); </span><span id="L-45"><a name="L-45"></a> if(strcmp(zo1.OIB, oib) &gt; 0) { </span><span id="L-46"><a name="L-46"></a> DeleteL(el1, L); </span><span id="L-47"><a name="L-47"></a> element zo1_el = ListaN(k, L); </span><span id="L-48"><a name="L-48"></a> InsertL(zo1, zo1_el, L); </span><span id="L-49"><a name="L-49"></a> k++; } </span><span id="L-50"><a name="L-50"></a> i++; } </span><span id="L-51"><a name="L-51"></a> </span><span id="L-52"><a name="L-52"></a> QSort(L, i1, k); </span><span id="L-53"><a name="L-53"></a> QSort(L, k+1, j1); } </span><span id="L-54"><a name="L-54"></a> </span><span id="L-55"><a name="L-55"></a>void Sortiranje(lista L) { </span><span id="L-56"><a name="L-56"></a> int n=0; </span><span id="L-57"><a name="L-57"></a> for(element el=FirstL(L); el != EndL(L); el=NextL(el, L) ) { </span><span id="L-58"><a name="L-58"></a> n++; } </span><span id="L-59"><a name="L-59"></a> </span><span id="L-60"><a name="L-60"></a> QSort(L, 0, n); </span><span id="L-61"><a name="L-61"></a> </span><span id="L-62"><a name="L-62"></a> element el = FirstL(L); </span><span id="L-63"><a name="L-63"></a> while(el != EndL(L) ) { </span><span id="L-64"><a name="L-64"></a> ZaposlenaOsoba osoba1; </span><span id="L-65"><a name="L-65"></a> osoba1 = RetreiveL(el, L); </span><span id="L-66"><a name="L-66"></a> cout &lt;&lt; &quot; OIB: &quot; &lt;&lt; osoba1.OIB &lt;&lt; endl; </span><span id="L-67"><a name="L-67"></a> cout &lt;&lt; &quot; Prezime: &quot; &lt;&lt; osoba1.prezime &lt;&lt; endl; </span><span id="L-68"><a name="L-68"></a> cout &lt;&lt; &quot; Ime: &quot; &lt;&lt; osoba1.ime &lt;&lt; endl; </span><span id="L-69"><a name="L-69"></a> cout &lt;&lt; &quot; Datum rodjenja: &quot; &lt;&lt; osoba1.datum &lt;&lt; endl; </span><span id="L-70"><a name="L-70"></a> cout &lt;&lt; &quot; Radno mjesto: &quot; &lt;&lt; osoba1.rad_mj &lt;&lt; endl &lt;&lt; endl; </span><span id="L-71"><a name="L-71"></a> el = NextL(el, L); } } </span><span id="L-72"><a name="L-72"></a> </span><span id="L-73"><a name="L-73"></a>int datumi[] = {321, 420, 521, 621, 723, 823, 923, 1024, 1122, 1222, 120, 219 }; </span><span id="L-74"><a name="L-74"></a>string horo_znakovi[] = {&quot;ovan&quot;, &quot;bik&quot;, &quot;blizanci&quot;, &quot;rak&quot;, &quot;lav&quot;, &quot;djevica&quot;, &quot;vaga&quot;, &quot;skorpion&quot;, &quot;strijelac&quot;, &quot;jarac&quot;, &quot;vodenjak&quot;, &quot;ribe&quot; }; </span><span id="L-75"><a name="L-75"></a> </span><span id="L-76"><a name="L-76"></a>void Pretrazivanje(lista L) { </span><span id="L-77"><a name="L-77"></a> cout &lt;&lt; endl &lt;&lt; &quot;Horoskop&quot; &lt;&lt; endl; </span><span id="L-78"><a name="L-78"></a> element el = FirstL(L), ja_element = EndL(L); </span><span id="L-79"><a name="L-79"></a> ZaposlenaOsoba ja; </span><span id="L-80"><a name="L-80"></a> while(el != EndL(L) ) { </span><span id="L-81"><a name="L-81"></a> ZaposlenaOsoba osoba1; </span><span id="L-82"><a name="L-82"></a> osoba1 = RetreiveL(el, L); </span><span id="L-83"><a name="L-83"></a> if(strcmp(osoba1.prezime, &quot;Greguric&quot;) == 0 &amp;&amp; strcmp(osoba1.ime, &quot;Luka&quot;) == 0) { </span><span id="L-84"><a name="L-84"></a> ja = osoba1; </span><span id="L-85"><a name="L-85"></a> ja_element = LocateL(ja, L); </span><span id="L-86"><a name="L-86"></a> break; } </span><span id="L-87"><a name="L-87"></a> el = NextL(el, L); } </span><span id="L-88"><a name="L-88"></a> </span><span id="L-89"><a name="L-89"></a> if(ja_element==EndL(L)) { </span><span id="L-90"><a name="L-90"></a> cout &lt;&lt; &quot;Nema mojih podataka u listi.&quot; &lt;&lt; endl; </span><span id="L-91"><a name="L-91"></a> return; } </span><span id="L-92"><a name="L-92"></a> </span><span id="L-93"><a name="L-93"></a> int trazeni; </span><span id="L-94"><a name="L-94"></a> int mjesec_dan = (ja.datum[0]-&#39;0&#39;)*10 + ja.datum[1]-&#39;0&#39; + (ja.datum[3]-&#39;0&#39;)*1000 + (ja.datum[4]-&#39;0&#39;)*100; </span><span id="L-95"><a name="L-95"></a> </span><span id="L-96"><a name="L-96"></a> for(int i=0; i&lt;(sizeof(datumi)/sizeof(int))-1; i++) { </span><span id="L-97"><a name="L-97"></a> if(datumi[i]&lt;=mjesec_dan &amp;&amp; mjesec_dan&lt;datumi[i+1]) { </span><span id="L-98"><a name="L-98"></a> trazeni = i; </span><span id="L-99"><a name="L-99"></a> cout &lt;&lt; &quot;Moj horoskopski znak: &quot; &lt;&lt; horo_znakovi[i] &lt;&lt; endl &lt;&lt; endl; </span><span id="L-100"><a name="L-100"></a> break; } } </span><span id="L-101"><a name="L-101"></a> </span><span id="L-102"><a name="L-102"></a> int brojac = 0; </span><span id="L-103"><a name="L-103"></a> </span><span id="L-104"><a name="L-104"></a> el = FirstL(L); </span><span id="L-105"><a name="L-105"></a> while(el != EndL(L) ) { </span><span id="L-106"><a name="L-106"></a> ZaposlenaOsoba osoba1; </span><span id="L-107"><a name="L-107"></a> osoba1 = RetreiveL(el, L); </span><span id="L-108"><a name="L-108"></a> if(el != ja_element) { </span><span id="L-109"><a name="L-109"></a> int mjesec_dan = (osoba1.datum[0]-&#39;0&#39;)*10 + osoba1.datum[1]-&#39;0&#39; + (osoba1.datum[3]-&#39;0&#39;)*1000 + (osoba1.datum[4]-&#39;0&#39;)*100; </span><span id="L-110"><a name="L-110"></a> if(datumi[trazeni]&lt;=mjesec_dan &amp;&amp; mjesec_dan&lt;datumi[trazeni+1]) { </span><span id="L-111"><a name="L-111"></a> cout &lt;&lt; &quot; OIB: &quot; &lt;&lt; osoba1.OIB &lt;&lt; endl; </span><span id="L-112"><a name="L-112"></a> cout &lt;&lt; &quot; Prezime: &quot; &lt;&lt; osoba1.prezime &lt;&lt; endl; </span><span id="L-113"><a name="L-113"></a> cout &lt;&lt; &quot; Ime: &quot; &lt;&lt; osoba1.ime &lt;&lt; endl; </span><span id="L-114"><a name="L-114"></a> cout &lt;&lt; &quot; Datum rodjenja: &quot; &lt;&lt; osoba1.datum &lt;&lt; endl; </span><span id="L-115"><a name="L-115"></a> cout &lt;&lt; &quot; Radno mjesto: &quot; &lt;&lt; osoba1.rad_mj &lt;&lt; endl &lt;&lt; endl; </span><span id="L-116"><a name="L-116"></a> brojac++; } } </span><span id="L-117"><a name="L-117"></a> el = NextL(el, L); } </span><span id="L-118"><a name="L-118"></a> </span><span id="L-119"><a name="L-119"></a> cout &lt;&lt; &quot;Ukupan broj pronadjenih: &quot; &lt;&lt; brojac &lt;&lt; endl; } </span><span id="L-120"><a name="L-120"></a> </span><span id="L-121"><a name="L-121"></a>bool Brisanje1(lista L) { </span><span id="L-122"><a name="L-122"></a> char OIB[12]; </span><span id="L-123"><a name="L-123"></a> cout &lt;&lt; &quot;Unesite OIB: &quot;; cin &gt;&gt; OIB; </span><span id="L-124"><a name="L-124"></a> bool testOk = 0; </span><span id="L-125"><a name="L-125"></a> element el = FirstL(L); </span><span id="L-126"><a name="L-126"></a> while(el != EndL(L) ) { </span><span id="L-127"><a name="L-127"></a> ZaposlenaOsoba osoba1; </span><span id="L-128"><a name="L-128"></a> osoba1 = RetreiveL(el, L); </span><span id="L-129"><a name="L-129"></a> if(strcmp(osoba1.OIB, OIB) == 0) { </span><span id="L-130"><a name="L-130"></a> testOk = DeleteL(LocateL(osoba1, L), L); </span><span id="L-131"><a name="L-131"></a> break; } </span><span id="L-132"><a name="L-132"></a> el = NextL(el, L); } </span><span id="L-133"><a name="L-133"></a> </span><span id="L-134"><a name="L-134"></a> return testOk; } </span><span id="L-135"><a name="L-135"></a> </span><span id="L-136"><a name="L-136"></a>bool Brisanje2(lista L) { </span><span id="L-137"><a name="L-137"></a> char rad_mj[40]; </span><span id="L-138"><a name="L-138"></a> cout &lt;&lt; &quot;Unesite radno mjesto: &quot;; cin &gt;&gt; rad_mj; </span><span id="L-139"><a name="L-139"></a> bool testOk = 0; </span><span id="L-140"><a name="L-140"></a> element el = FirstL(L); </span><span id="L-141"><a name="L-141"></a> while(el != EndL(L) ) { </span><span id="L-142"><a name="L-142"></a> ZaposlenaOsoba osoba1 = RetreiveL(el, L); </span><span id="L-143"><a name="L-143"></a> if(strcmp(osoba1.rad_mj, rad_mj) == 0) { </span><span id="L-144"><a name="L-144"></a> testOk = DeleteL(el, L); </span><span id="L-145"><a name="L-145"></a> el = FirstL(L); </span><span id="L-146"><a name="L-146"></a> if(testOk == 0) </span><span id="L-147"><a name="L-147"></a> return 0; } </span><span id="L-148"><a name="L-148"></a> else </span><span id="L-149"><a name="L-149"></a> el = NextL(el, L); } </span><span id="L-150"><a name="L-150"></a> </span><span id="L-151"><a name="L-151"></a> return testOk; } </span><span id="L-152"><a name="L-152"></a> </span><span id="L-153"><a name="L-153"></a>void m4Brisanje(lista L) { </span><span id="L-154"><a name="L-154"></a> int brisiX; </span><span id="L-155"><a name="L-155"></a> cout &lt;&lt; &quot;Odaberite: &quot; &lt;&lt; endl; </span><span id="L-156"><a name="L-156"></a> cout &lt;&lt; &quot; 1 - OIB&quot; &lt;&lt; endl; </span><span id="L-157"><a name="L-157"></a> cout &lt;&lt; &quot; 2 - radno mjesto&quot; &lt;&lt; endl; </span><span id="L-158"><a name="L-158"></a> cin &gt;&gt; brisiX; </span><span id="L-159"><a name="L-159"></a> </span><span id="L-160"><a name="L-160"></a> switch(brisiX) { </span><span id="L-161"><a name="L-161"></a> case 1: { </span><span id="L-162"><a name="L-162"></a> bool testOk = Brisanje1(L); </span><span id="L-163"><a name="L-163"></a> if(testOk == 1) </span><span id="L-164"><a name="L-164"></a> cout &lt;&lt; &quot;Izbrisan.&quot; &lt;&lt; endl; </span><span id="L-165"><a name="L-165"></a> else </span><span id="L-166"><a name="L-166"></a> cout &lt;&lt; &quot;Ne postoji.&quot; &lt;&lt; endl; </span><span id="L-167"><a name="L-167"></a> break; } </span><span id="L-168"><a name="L-168"></a> case 2: { </span><span id="L-169"><a name="L-169"></a> bool testOk = Brisanje2(L); </span><span id="L-170"><a name="L-170"></a> if(testOk == 1) </span><span id="L-171"><a name="L-171"></a> cout &lt;&lt; &quot;Izbrisani.&quot; &lt;&lt; endl; </span><span id="L-172"><a name="L-172"></a> else </span><span id="L-173"><a name="L-173"></a> cout &lt;&lt; &quot;Ne postoji.&quot; &lt;&lt; endl; </span><span id="L-174"><a name="L-174"></a> break; } </span><span id="L-175"><a name="L-175"></a> default: </span><span id="L-176"><a name="L-176"></a> break; } } </span><span id="L-177"><a name="L-177"></a> </span><span id="L-178"><a name="L-178"></a>void IspisiIzbornik() { </span><span id="L-179"><a name="L-179"></a> cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; &quot;------------------&quot; &lt;&lt; endl; </span><span id="L-180"><a name="L-180"></a> cout &lt;&lt; &quot; 1 - Unos&quot; &lt;&lt; endl; </span><span id="L-181"><a name="L-181"></a> cout &lt;&lt; &quot; 2 - Sortiranje&quot; &lt;&lt; endl; </span><span id="L-182"><a name="L-182"></a> cout &lt;&lt; &quot; 3 - Pretrazivanje&quot; &lt;&lt; endl; </span><span id="L-183"><a name="L-183"></a> cout &lt;&lt; &quot; 4 - Brisanje&quot; &lt;&lt; endl; </span><span id="L-184"><a name="L-184"></a> cout &lt;&lt; &quot; 9 - Izlaz&quot; &lt;&lt; endl; } </span><span id="L-185"><a name="L-185"></a> </span><span id="L-186"><a name="L-186"></a>int main() { </span><span id="L-187"><a name="L-187"></a> int un; </span><span id="L-188"><a name="L-188"></a> </span><span id="L-189"><a name="L-189"></a> srand(time(0)); </span><span id="L-190"><a name="L-190"></a> lista L = InitL(L); </span><span id="L-191"><a name="L-191"></a> </span><span id="L-192"><a name="L-192"></a> do { </span><span id="L-193"><a name="L-193"></a> </span><span id="L-194"><a name="L-194"></a> IspisiIzbornik(); </span><span id="L-195"><a name="L-195"></a> cin &gt;&gt; un; </span><span id="L-196"><a name="L-196"></a> </span><span id="L-197"><a name="L-197"></a> switch(un) { </span><span id="L-198"><a name="L-198"></a> case 1: { </span><span id="L-199"><a name="L-199"></a> bool testOk = unosOsobe(L); </span><span id="L-200"><a name="L-200"></a> if(testOk == 1) { </span><span id="L-201"><a name="L-201"></a> cout &lt;&lt; &quot;Zapis dodan.&quot; &lt;&lt; endl; } </span><span id="L-202"><a name="L-202"></a> else { </span><span id="L-203"><a name="L-203"></a> cout &lt;&lt; &quot;Greska kod dodavanja zapisa.&quot; &lt;&lt; endl; } </span><span id="L-204"><a name="L-204"></a> break; } </span><span id="L-205"><a name="L-205"></a> </span><span id="L-206"><a name="L-206"></a> case 2: Sortiranje(L); break; </span><span id="L-207"><a name="L-207"></a> case 3: Pretrazivanje(L); break; </span><span id="L-208"><a name="L-208"></a> case 4: m4Brisanje(L); break; </span><span id="L-209"><a name="L-209"></a> </span><span id="L-210"><a name="L-210"></a> default: break; } } </span><span id="L-211"><a name="L-211"></a> while(un != 9); </span><span id="L-212"><a name="L-212"></a> </span><span id="L-213"><a name="L-213"></a> return 0; } </span></pre></div> </td></tr></table>
"glavni program", "strukture podataka", "zadatak 1"