snipt

Ctrl+h for KB shortcuts

C++

Glavni_Program(Main.cpp)

//Main Program
#include <iomanip>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <conio.h>

#include "lista_polje.h"
//#include "lista_pokazivac.h"

using namespace std;
tlista *pom_lista = new tlista;

//dodatna funkcija
void unesi(char *znakovni_niz)
{
	cin.getline(znakovni_niz, 100);
	if (cin.gcount()==1)
	  	 cin.getline (znakovni_niz,100);
};

//dodatna funckcija
void s_ispis (tgame igra) {
	cout << "-----------------------------------" << endl;
	cout << "Sifra: " << igra.sifra << endl;
	cout << "Naziv: " << igra.naziv << endl;
	cout << "Proizvodjac: " << igra.proizvodjac << endl;
	cout << "Zanr: " << igra.zanr << endl;
	cout << "Podzanr: " << igra.podzanr << endl;
	cout << "PEGI: " << igra.pegi << endl;
	cout << "-----------------------------------" << endl;
}

//dodatna funckcija
int broj_igara (tlista *lista) {
	int counter = 0;
	vrijed i = firstL(lista);
	while (i != endL(lista)) {
		counter++;	
		i = nextL(i,lista);
	}
	return counter;
}

//generiranje alfanumericke sifre
void generate (char *znakovi) {
	char alfaniz [] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
	for (int i = 0; i < 6; i++) {
		znakovi[i] = alfaniz[rand() % (strlen(alfaniz)-1)];
	}
	znakovi[6] = '\0';
}

//merge sort - spajanje elemenata
void merge (tgame *polje, int beg1, int end1, int beg2, int end2){
	int i = 0, l = beg1, k;
	tgame sorted[100];
	while (beg1 <= end1 && beg2 <= end2) {
		if (strcmp(polje[beg1].sifra, polje[beg2].sifra) < 0)
			sorted[i++] = polje[beg1++];
		else
			sorted[i++] = polje[beg2++];
	}
	while (beg1 <= end1)
		sorted[i++] = polje[beg1++];
	while (beg2 <= end2)
		sorted[i++] = polje[beg2++];
	for (k = 0; k < i; k++)
		polje[l++] = sorted[k];
}

//merge sort - dijeljenje niza do pojedinacnih elemenata		
void sort (tgame *polje, int beg, int end) {
	if (beg < end) {
		int mid = (beg + end) / 2;
		sort(polje,beg,mid);
		sort(polje,mid+1,end);
		merge(polje,beg,mid,mid+1,end);
	}
}

//ispis sortiranog polja uzlazno prema sifri
void sort_ispis(tlista *lista) {
	int broji = 0;
	tgame polje[100];
	
	vrijed i = firstL(lista);
	while (i != endL(lista)) {
		polje[broji++] = retrieveL(i,lista);
		i = nextL(i,lista);
	}
	
	sort (polje, 0, broji-1);
	
	//ispis sortiranog polja (NAPOMENA: polje se moglo natrag prebaciti u listu i zatim 
	//normalno ispisati iz gl.programa -> to zahtijeva ponovno brisanje elemenata liste)
	int brojac = 0;
	for (int j = 0; j < broji; j++) {
		cout << ++brojac << ". igra" << endl;
		cout << "---------------------------------" << endl;
		cout << "Sifra: " << polje[j].sifra << endl;
		cout << "Naziv: " << polje[j].naziv << endl;
		cout << "Zanr: " << polje[j].zanr << endl;
		cout << "PEGI: " << polje[j].pegi << endl;
		cout << "---------------------------------" << endl;
		cout << endl;			
	}
}

//unošenje igara u bazu podataka
int unos(tlista *lista) {
	tgame element;
	cout << "Unesite zanr igre: ";
	unesi(element.zanr);
	cout << "Unesite podzanr igre: ";
	unesi(element.podzanr);
	generate(element.sifra);
	cout << "Izgenerirana sifra: " << element.sifra << endl;
	cout << "Unesite naziv igre: ";
	unesi(element.naziv);
	cout << "Unesite proizvodjaca igre: ";
	unesi(element.proizvodjac);
	do {
		cout << "Unesite PEGI oznaku: ";
		cin >> element.pegi;
		if (element.pegi != 3 && element.pegi != 7 &&
			element.pegi != 12 && element.pegi != 16 &&
			element.pegi != 18)
				cout << "Neispravan unos PEGI oznake" << endl;
	} while (element.pegi != 3 && element.pegi != 7 &&
			element.pegi != 12 && element.pegi != 16 &&
			element.pegi != 18);
	cout << endl;
	if (insertL(element,endL(lista),lista) == 1)
		return 1;
	else
		return 0;
}

//binarno pretraživanje
void bsearch (tgame *polje, int beg, int end, char kljuc [100]) {
	if 	(end-beg <= 0)
		if (beg == end && strcmp(polje[beg].zanr, kljuc) == 0)
			insertL(polje[beg],endL(pom_lista),pom_lista);
		else
			return;
	else {
		int mid = (beg+end) / 2;
		if (strcmp(polje[mid].zanr, kljuc) > 0)
			return bsearch(polje,beg,mid-1,kljuc);
		if (strcmp(polje[mid].zanr, kljuc) == 0) {
			insertL(polje[mid],endL(pom_lista),pom_lista);
			while (beg <= end) { //dodatno u binsearchu
				if ((strcmp(polje[beg].zanr, kljuc) == 0) && beg != mid)
					insertL(polje[beg],endL(pom_lista),pom_lista);
				beg++;
			}
			return;
		}
		if (strcmp(polje[mid].zanr, kljuc) < 0)
			return bsearch(polje,mid+1,end,kljuc);
	}
}

//ispis strateških igara
void strategy(tlista *lista) {
	int brojac = 0;
	int br_strat = 0;
	initL(pom_lista);
	int counter = broj_igara(lista);
	tgame *pom = new tgame [counter];
	vrijed i = firstL(lista);
	int j = 0;
	while ( i != endL(lista)) {
		pom[j++] = retrieveL(i,lista);
		i = nextL(i,lista);
	}

	for (int k = 1; k < counter; k++) {
		int l = k-1;
		tgame pom1 = pom[k];
		while (l >= 0 && strcmp(pom[l].zanr, pom1.zanr) > 0)
			pom[l+1] = pom[l--];
		pom[l+1] = pom1;
	}
	
	char kljuc[100];
	strcpy(kljuc,"Strategija");
	
	bsearch(pom,0,counter-1,kljuc);
	i = firstL(pom_lista);
	if (i == endL(pom_lista))
		cout << "Ne postoji niti jedna strateska igra u bazi" << endl;
	else {
		while ( i != endL(pom_lista)) {
			cout << ++brojac << ". igra" << endl;
			s_ispis(retrieveL(i,pom_lista));
			i = nextL (i,lista);
			br_strat++;
			cout << endl;
		}
		cout << "Broj strateskih igara: " << br_strat << endl;
		delete [] pom;
		deleteallL(pom_lista);
	}
}

//brisanje igara prema šifri
int brisi_sifra(tlista *lista) {
	char odabir;
	tgame igra;
	char sifra[6];
	cout << "Popis postojecih sifri: " << endl;
	for (vrijed i = firstL(lista); i != endL(lista); i = nextL(i,lista)) {
		igra = retrieveL(i,lista);
		cout << "-->" << igra.sifra << endl;
	}
	cout << endl;
	cout << "Unesite sifru koju zelite izbrisati: ";
	do {
		unesi(sifra);
	if(strlen(sifra) < 6 || strlen(sifra) > 6)
		cout << "Sifra mora imati tocno 6 znakova. Ponovni unos: ";
	} while (strlen(sifra) < 6 || strlen(sifra) > 6);
	vrijed i = locateL(sifra,lista);
	if (i != endL (lista)) {
		igra = retrieveL(i,lista);
		s_ispis(igra);
		cout << "Zelite li potvrditi brisanje zapisa(d/n): ";
		cin >> odabir;
		if (odabir == 'd') {
			deleteL(i,lista);
			return 1;
		}
		return 0;
	}
	else
		return 0;
}

//brisanje igara sa određenom pegi oznakom
int brisi_pegi(tlista *lista) {
	int pegi, provjera = 0;;
	tgame igra;
	vrijed iduci;
	cout << "Unesite PEGI oznaku(3,7,12,16,18): ";
	cin >> pegi;
	if (pegi != 3 && pegi != 7 && pegi != 12 && pegi != 16 && pegi != 18)
		return 0;
	vrijed i = firstL(lista);
	while (i != endL(lista)) {
		igra = retrieveL(i,lista);
		iduci = nextL(i,lista);
		if (igra.pegi == pegi) {
			deleteL(i,lista);
			provjera = 1;
			i = firstL(lista);
		}
		else
			i = iduci;
	}
	if (provjera == 1)
		return 1;
	else
		return 0;	
}

int main() {
	srand(time(0)); //za funkciju generate (generiranje alfanumerickoga koda od 6 znakova)
	initL(lista); //inicijalizacija prazne liste
	int izbor;
	do {
		
		//glavni izbornik
		system("cls");
		cout << "*********************IZBORNIK*********************" << endl;
		cout << "1. Unos podataka o racunalnoj igri" << endl;
		cout << "2. Ispis igara prema sifri (pomocu MergeSorta)" << endl;
		cout << "3. Strateske racunalne igre(pomocu BSearcha)" << endl;
		cout << "4. Brisanje igara (prema sifriI)" << endl;
		cout << "5. Brisanje svih igara sa odredjenom PEGI oznakom" << endl;
		cout << "9. Izlaz iz programa" << endl;
		cout << "**************************************************" << endl;
		cout << "Unesite mogucnost: "; cin >> izbor;
		cout << endl;
		
		switch (izbor) { //switch grananje s obzirom na odabranu mogucnost, tj. koju funkciju smo pokrenuli
			case 1:
				if(unos(lista) == 1)
					cout << "ZAPIS JE USPJESNO DODAN!" << endl;
				else
					cout << "DODAVANJE ZAPISA NIJE USPJELO!" << endl;
				cout << endl;
				cout << "Vracanje u izbornik - ENTER ";
				getch();
				break;	
			
			case 2:
				cout << "****SORTIRANI ISPIS POLJA****" << endl;
				sort_ispis(lista);
				cout << endl;
				cout << "Vracanje u izbornik - ENTER ";
				getch();
				break;
			
			case 3:
				cout << "****ISPIS STRATESKIH IGARA****" << endl;
				strategy (lista);
				cout << endl;
				cout << "Vracanje u izbornik - ENTER ";
				getch();
				break;
				
			case 4:
				cout << "****BRISANJE PO SIFRI****" << endl;
				if (brisi_sifra(lista) == 1)
					cout << "BRISANJE USPJESNO!" << endl;
				else
					cout << "BRISANJE NEUSPJESNO!" << endl;
				cout << endl;
				cout << "Vracanje u izbornik - ENTER ";
				getch();
				break;
			
			case 5:
				cout << "****BRISANJE PO PEGI OZNACI****" << endl;
				if (brisi_pegi(lista) == 1)
					cout << "BRISANJE USPJESNO" << endl;
				else {
					cout << "BRISANJE NEUSPJESNO!" << endl;
					cout << "POGRESAN PEGI ILI NEPOSTOJI ZAPIS SA PEGI OZNAKOM!" << endl;
				}
				cout << endl;
				cout << "Vracanje u izbornik - ENTER ";
				getch();
				break;
		}
	} while (izbor != 9);
	
	return 0;
}

Description

This main program is implementation of abstract data structures and it refers to list (ATP List). Program is constructed to work with both headers, "lista_polje.h" and "lista_pokazivac.h". Prints in code are on croatian language.
Subject of program is database of video games.
This implementation is created for course on Faculty if Organizations and Informatics in Croatia, for course "Strukture podataka".
https://snipt.net/embed/a1272a0b9d3750709a6a66aa9b6c4680/
/raw/a1272a0b9d3750709a6a66aa9b6c4680/
a1272a0b9d3750709a6a66aa9b6c4680
cpp
C++
342
2019-07-16T10:01:06
True
False
False
Nov 16, 2014 at 04:03 PM
/api/public/snipt/137197/
-f71fe507
<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> <a href="#L-214">214</a> <a href="#L-215">215</a> <a href="#L-216">216</a> <a href="#L-217">217</a> <a href="#L-218">218</a> <a href="#L-219">219</a> <a href="#L-220">220</a> <a href="#L-221">221</a> <a href="#L-222">222</a> <a href="#L-223">223</a> <a href="#L-224">224</a> <a href="#L-225">225</a> <a href="#L-226">226</a> <a href="#L-227">227</a> <a href="#L-228">228</a> <a href="#L-229">229</a> <a href="#L-230">230</a> <a href="#L-231">231</a> <a href="#L-232">232</a> <a href="#L-233">233</a> <a href="#L-234">234</a> <a href="#L-235">235</a> <a href="#L-236">236</a> <a href="#L-237">237</a> <a href="#L-238">238</a> <a href="#L-239">239</a> <a href="#L-240">240</a> <a href="#L-241">241</a> <a href="#L-242">242</a> <a href="#L-243">243</a> <a href="#L-244">244</a> <a href="#L-245">245</a> <a href="#L-246">246</a> <a href="#L-247">247</a> <a href="#L-248">248</a> <a href="#L-249">249</a> <a href="#L-250">250</a> <a href="#L-251">251</a> <a href="#L-252">252</a> <a href="#L-253">253</a> <a href="#L-254">254</a> <a href="#L-255">255</a> <a href="#L-256">256</a> <a href="#L-257">257</a> <a href="#L-258">258</a> <a href="#L-259">259</a> <a href="#L-260">260</a> <a href="#L-261">261</a> <a href="#L-262">262</a> <a href="#L-263">263</a> <a href="#L-264">264</a> <a href="#L-265">265</a> <a href="#L-266">266</a> <a href="#L-267">267</a> <a href="#L-268">268</a> <a href="#L-269">269</a> <a href="#L-270">270</a> <a href="#L-271">271</a> <a href="#L-272">272</a> <a href="#L-273">273</a> <a href="#L-274">274</a> <a href="#L-275">275</a> <a href="#L-276">276</a> <a href="#L-277">277</a> <a href="#L-278">278</a> <a href="#L-279">279</a> <a href="#L-280">280</a> <a href="#L-281">281</a> <a href="#L-282">282</a> <a href="#L-283">283</a> <a href="#L-284">284</a> <a href="#L-285">285</a> <a href="#L-286">286</a> <a href="#L-287">287</a> <a href="#L-288">288</a> <a href="#L-289">289</a> <a href="#L-290">290</a> <a href="#L-291">291</a> <a href="#L-292">292</a> <a href="#L-293">293</a> <a href="#L-294">294</a> <a href="#L-295">295</a> <a href="#L-296">296</a> <a href="#L-297">297</a> <a href="#L-298">298</a> <a href="#L-299">299</a> <a href="#L-300">300</a> <a href="#L-301">301</a> <a href="#L-302">302</a> <a href="#L-303">303</a> <a href="#L-304">304</a> <a href="#L-305">305</a> <a href="#L-306">306</a> <a href="#L-307">307</a> <a href="#L-308">308</a> <a href="#L-309">309</a> <a href="#L-310">310</a> <a href="#L-311">311</a> <a href="#L-312">312</a> <a href="#L-313">313</a> <a href="#L-314">314</a> <a href="#L-315">315</a> <a href="#L-316">316</a> <a href="#L-317">317</a> <a href="#L-318">318</a> <a href="#L-319">319</a> <a href="#L-320">320</a> <a href="#L-321">321</a> <a href="#L-322">322</a> <a href="#L-323">323</a> <a href="#L-324">324</a> <a href="#L-325">325</a> <a href="#L-326">326</a> <a href="#L-327">327</a> <a href="#L-328">328</a> <a href="#L-329">329</a> <a href="#L-330">330</a> <a href="#L-331">331</a> <a href="#L-332">332</a> <a href="#L-333">333</a> <a href="#L-334">334</a> <a href="#L-335">335</a> <a href="#L-336">336</a> <a href="#L-337">337</a> <a href="#L-338">338</a> <a href="#L-339">339</a> <a href="#L-340">340</a> <a href="#L-341">341</a> <a href="#L-342">342</a></pre></div></td><td class="code"><div class="highlight"><pre><span></span><span id="L-1"><a name="L-1"></a><span class="c1">//Main Program</span> </span><span id="L-2"><a name="L-2"></a><span class="cp">#include</span> <span class="cpf">&lt;iomanip&gt;</span><span class="cp"></span> </span><span id="L-3"><a name="L-3"></a><span class="cp">#include</span> <span class="cpf">&lt;iostream&gt;</span><span class="cp"></span> </span><span id="L-4"><a name="L-4"></a><span class="cp">#include</span> <span class="cpf">&lt;cstdlib&gt;</span><span class="cp"></span> </span><span id="L-5"><a name="L-5"></a><span class="cp">#include</span> <span class="cpf">&lt;cstring&gt;</span><span class="cp"></span> </span><span id="L-6"><a name="L-6"></a><span class="cp">#include</span> <span class="cpf">&lt;ctime&gt;</span><span class="cp"></span> </span><span id="L-7"><a name="L-7"></a><span class="cp">#include</span> <span class="cpf">&lt;conio.h&gt;</span><span class="cp"></span> </span><span id="L-8"><a name="L-8"></a> </span><span id="L-9"><a name="L-9"></a><span class="cp">#include</span> <span class="cpf">&quot;lista_polje.h&quot;</span><span class="cp"></span> </span><span id="L-10"><a name="L-10"></a><span class="c1">//#include &quot;lista_pokazivac.h&quot;</span> </span><span id="L-11"><a name="L-11"></a> </span><span id="L-12"><a name="L-12"></a><span class="k">using</span> <span class="k">namespace</span> <span class="n">std</span><span class="p">;</span> </span><span id="L-13"><a name="L-13"></a><span class="n">tlista</span> <span class="o">*</span><span class="n">pom_lista</span> <span class="o">=</span> <span class="k">new</span> <span class="n">tlista</span><span class="p">;</span> </span><span id="L-14"><a name="L-14"></a> </span><span id="L-15"><a name="L-15"></a><span class="c1">//dodatna funkcija</span> </span><span id="L-16"><a name="L-16"></a><span class="kt">void</span> <span class="nf">unesi</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">znakovni_niz</span><span class="p">)</span> </span><span id="L-17"><a name="L-17"></a><span class="p">{</span> </span><span id="L-18"><a name="L-18"></a> <span class="n">cin</span><span class="p">.</span><span class="n">getline</span><span class="p">(</span><span class="n">znakovni_niz</span><span class="p">,</span> <span class="mi">100</span><span class="p">);</span> </span><span id="L-19"><a name="L-19"></a> <span class="k">if</span> <span class="p">(</span><span class="n">cin</span><span class="p">.</span><span class="n">gcount</span><span class="p">()</span><span class="o">==</span><span class="mi">1</span><span class="p">)</span> </span><span id="L-20"><a name="L-20"></a> <span class="n">cin</span><span class="p">.</span><span class="n">getline</span> <span class="p">(</span><span class="n">znakovni_niz</span><span class="p">,</span><span class="mi">100</span><span class="p">);</span> </span><span id="L-21"><a name="L-21"></a><span class="p">};</span> </span><span id="L-22"><a name="L-22"></a> </span><span id="L-23"><a name="L-23"></a><span class="c1">//dodatna funckcija</span> </span><span id="L-24"><a name="L-24"></a><span class="kt">void</span> <span class="nf">s_ispis</span> <span class="p">(</span><span class="n">tgame</span> <span class="n">igra</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-25"><a name="L-25"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;-----------------------------------&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-26"><a name="L-26"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Sifra: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">sifra</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-27"><a name="L-27"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Naziv: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">naziv</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-28"><a name="L-28"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Proizvodjac: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">proizvodjac</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-29"><a name="L-29"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Zanr: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">zanr</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-30"><a name="L-30"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Podzanr: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">podzanr</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-31"><a name="L-31"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;PEGI: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">pegi</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-32"><a name="L-32"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;-----------------------------------&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-33"><a name="L-33"></a><span class="p">}</span> </span><span id="L-34"><a name="L-34"></a> </span><span id="L-35"><a name="L-35"></a><span class="c1">//dodatna funckcija</span> </span><span id="L-36"><a name="L-36"></a><span class="kt">int</span> <span class="nf">broj_igara</span> <span class="p">(</span><span class="n">tlista</span> <span class="o">*</span><span class="n">lista</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-37"><a name="L-37"></a> <span class="kt">int</span> <span class="n">counter</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-38"><a name="L-38"></a> <span class="n">vrijed</span> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-39"><a name="L-39"></a> <span class="k">while</span> <span class="p">(</span><span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span><span class="p">(</span><span class="n">lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-40"><a name="L-40"></a> <span class="n">counter</span><span class="o">++</span><span class="p">;</span> </span><span id="L-41"><a name="L-41"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">nextL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-42"><a name="L-42"></a> <span class="p">}</span> </span><span id="L-43"><a name="L-43"></a> <span class="k">return</span> <span class="n">counter</span><span class="p">;</span> </span><span id="L-44"><a name="L-44"></a><span class="p">}</span> </span><span id="L-45"><a name="L-45"></a> </span><span id="L-46"><a name="L-46"></a><span class="c1">//generiranje alfanumericke sifre</span> </span><span id="L-47"><a name="L-47"></a><span class="kt">void</span> <span class="nf">generate</span> <span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">znakovi</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-48"><a name="L-48"></a> <span class="kt">char</span> <span class="n">alfaniz</span> <span class="p">[]</span> <span class="o">=</span> <span class="s">&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz&quot;</span><span class="p">;</span> </span><span id="L-49"><a name="L-49"></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="mi">6</span><span class="p">;</span> <span class="n">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-50"><a name="L-50"></a> <span class="n">znakovi</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="n">alfaniz</span><span class="p">[</span><span class="n">rand</span><span class="p">()</span> <span class="o">%</span> <span class="p">(</span><span class="n">strlen</span><span class="p">(</span><span class="n">alfaniz</span><span class="p">)</span><span class="o">-</span><span class="mi">1</span><span class="p">)];</span> </span><span id="L-51"><a name="L-51"></a> <span class="p">}</span> </span><span id="L-52"><a name="L-52"></a> <span class="n">znakovi</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> <span class="o">=</span> <span class="sc">&#39;\0&#39;</span><span class="p">;</span> </span><span id="L-53"><a name="L-53"></a><span class="p">}</span> </span><span id="L-54"><a name="L-54"></a> </span><span id="L-55"><a name="L-55"></a><span class="c1">//merge sort - spajanje elemenata</span> </span><span id="L-56"><a name="L-56"></a><span class="kt">void</span> <span class="nf">merge</span> <span class="p">(</span><span class="n">tgame</span> <span class="o">*</span><span class="n">polje</span><span class="p">,</span> <span class="kt">int</span> <span class="n">beg1</span><span class="p">,</span> <span class="kt">int</span> <span class="n">end1</span><span class="p">,</span> <span class="kt">int</span> <span class="n">beg2</span><span class="p">,</span> <span class="kt">int</span> <span class="n">end2</span><span class="p">){</span> </span><span id="L-57"><a name="L-57"></a> <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">l</span> <span class="o">=</span> <span class="n">beg1</span><span class="p">,</span> <span class="n">k</span><span class="p">;</span> </span><span id="L-58"><a name="L-58"></a> <span class="n">tgame</span> <span class="n">sorted</span><span class="p">[</span><span class="mi">100</span><span class="p">];</span> </span><span id="L-59"><a name="L-59"></a> <span class="k">while</span> <span class="p">(</span><span class="n">beg1</span> <span class="o">&lt;=</span> <span class="n">end1</span> <span class="o">&amp;&amp;</span> <span class="n">beg2</span> <span class="o">&lt;=</span> <span class="n">end2</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-60"><a name="L-60"></a> <span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">beg1</span><span class="p">].</span><span class="n">sifra</span><span class="p">,</span> <span class="n">polje</span><span class="p">[</span><span class="n">beg2</span><span class="p">].</span><span class="n">sifra</span><span class="p">)</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-61"><a name="L-61"></a> <span class="n">sorted</span><span class="p">[</span><span class="n">i</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">polje</span><span class="p">[</span><span class="n">beg1</span><span class="o">++</span><span class="p">];</span> </span><span id="L-62"><a name="L-62"></a> <span class="k">else</span> </span><span id="L-63"><a name="L-63"></a> <span class="n">sorted</span><span class="p">[</span><span class="n">i</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">polje</span><span class="p">[</span><span class="n">beg2</span><span class="o">++</span><span class="p">];</span> </span><span id="L-64"><a name="L-64"></a> <span class="p">}</span> </span><span id="L-65"><a name="L-65"></a> <span class="k">while</span> <span class="p">(</span><span class="n">beg1</span> <span class="o">&lt;=</span> <span class="n">end1</span><span class="p">)</span> </span><span id="L-66"><a name="L-66"></a> <span class="n">sorted</span><span class="p">[</span><span class="n">i</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">polje</span><span class="p">[</span><span class="n">beg1</span><span class="o">++</span><span class="p">];</span> </span><span id="L-67"><a name="L-67"></a> <span class="k">while</span> <span class="p">(</span><span class="n">beg2</span> <span class="o">&lt;=</span> <span class="n">end2</span><span class="p">)</span> </span><span id="L-68"><a name="L-68"></a> <span class="n">sorted</span><span class="p">[</span><span class="n">i</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">polje</span><span class="p">[</span><span class="n">beg2</span><span class="o">++</span><span class="p">];</span> </span><span id="L-69"><a name="L-69"></a> <span class="k">for</span> <span class="p">(</span><span class="n">k</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">k</span> <span class="o">&lt;</span> <span class="n">i</span><span class="p">;</span> <span class="n">k</span><span class="o">++</span><span class="p">)</span> </span><span id="L-70"><a name="L-70"></a> <span class="n">polje</span><span class="p">[</span><span class="n">l</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">sorted</span><span class="p">[</span><span class="n">k</span><span class="p">];</span> </span><span id="L-71"><a name="L-71"></a><span class="p">}</span> </span><span id="L-72"><a name="L-72"></a> </span><span id="L-73"><a name="L-73"></a><span class="c1">//merge sort - dijeljenje niza do pojedinacnih elemenata </span> </span><span id="L-74"><a name="L-74"></a><span class="kt">void</span> <span class="nf">sort</span> <span class="p">(</span><span class="n">tgame</span> <span class="o">*</span><span class="n">polje</span><span class="p">,</span> <span class="kt">int</span> <span class="n">beg</span><span class="p">,</span> <span class="kt">int</span> <span class="n">end</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-75"><a name="L-75"></a> <span class="k">if</span> <span class="p">(</span><span class="n">beg</span> <span class="o">&lt;</span> <span class="n">end</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-76"><a name="L-76"></a> <span class="kt">int</span> <span class="n">mid</span> <span class="o">=</span> <span class="p">(</span><span class="n">beg</span> <span class="o">+</span> <span class="n">end</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</span><span class="p">;</span> </span><span id="L-77"><a name="L-77"></a> <span class="n">sort</span><span class="p">(</span><span class="n">polje</span><span class="p">,</span><span class="n">beg</span><span class="p">,</span><span class="n">mid</span><span class="p">);</span> </span><span id="L-78"><a name="L-78"></a> <span class="n">sort</span><span class="p">(</span><span class="n">polje</span><span class="p">,</span><span class="n">mid</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="n">end</span><span class="p">);</span> </span><span id="L-79"><a name="L-79"></a> <span class="n">merge</span><span class="p">(</span><span class="n">polje</span><span class="p">,</span><span class="n">beg</span><span class="p">,</span><span class="n">mid</span><span class="p">,</span><span class="n">mid</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="n">end</span><span class="p">);</span> </span><span id="L-80"><a name="L-80"></a> <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><span id="L-83"><a name="L-83"></a><span class="c1">//ispis sortiranog polja uzlazno prema sifri</span> </span><span id="L-84"><a name="L-84"></a><span class="kt">void</span> <span class="nf">sort_ispis</span><span class="p">(</span><span class="n">tlista</span> <span class="o">*</span><span class="n">lista</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-85"><a name="L-85"></a> <span class="kt">int</span> <span class="n">broji</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-86"><a name="L-86"></a> <span class="n">tgame</span> <span class="n">polje</span><span class="p">[</span><span class="mi">100</span><span class="p">];</span> </span><span id="L-87"><a name="L-87"></a> </span><span id="L-88"><a name="L-88"></a> <span class="n">vrijed</span> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-89"><a name="L-89"></a> <span class="k">while</span> <span class="p">(</span><span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span><span class="p">(</span><span class="n">lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-90"><a name="L-90"></a> <span class="n">polje</span><span class="p">[</span><span class="n">broji</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">retrieveL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-91"><a name="L-91"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">nextL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-92"><a name="L-92"></a> <span class="p">}</span> </span><span id="L-93"><a name="L-93"></a> </span><span id="L-94"><a name="L-94"></a> <span class="n">sort</span> <span class="p">(</span><span class="n">polje</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">broji</span><span class="o">-</span><span class="mi">1</span><span class="p">);</span> </span><span id="L-95"><a name="L-95"></a> </span><span id="L-96"><a name="L-96"></a> <span class="c1">//ispis sortiranog polja (NAPOMENA: polje se moglo natrag prebaciti u listu i zatim </span> </span><span id="L-97"><a name="L-97"></a> <span class="c1">//normalno ispisati iz gl.programa -&gt; to zahtijeva ponovno brisanje elemenata liste)</span> </span><span id="L-98"><a name="L-98"></a> <span class="kt">int</span> <span class="n">brojac</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-99"><a name="L-99"></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="mi">0</span><span class="p">;</span> <span class="n">j</span> <span class="o">&lt;</span> <span class="n">broji</span><span class="p">;</span> <span class="n">j</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-100"><a name="L-100"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="o">++</span><span class="n">brojac</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;. igra&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-101"><a name="L-101"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;---------------------------------&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-102"><a name="L-102"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Sifra: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">polje</span><span class="p">[</span><span class="n">j</span><span class="p">].</span><span class="n">sifra</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-103"><a name="L-103"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Naziv: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">polje</span><span class="p">[</span><span class="n">j</span><span class="p">].</span><span class="n">naziv</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-104"><a name="L-104"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Zanr: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">polje</span><span class="p">[</span><span class="n">j</span><span class="p">].</span><span class="n">zanr</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-105"><a name="L-105"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;PEGI: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">polje</span><span class="p">[</span><span class="n">j</span><span class="p">].</span><span class="n">pegi</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-106"><a name="L-106"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;---------------------------------&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-107"><a name="L-107"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-108"><a name="L-108"></a> <span class="p">}</span> </span><span id="L-109"><a name="L-109"></a><span class="p">}</span> </span><span id="L-110"><a name="L-110"></a> </span><span id="L-111"><a name="L-111"></a><span class="c1">//unošenje igara u bazu podataka</span> </span><span id="L-112"><a name="L-112"></a><span class="kt">int</span> <span class="nf">unos</span><span class="p">(</span><span class="n">tlista</span> <span class="o">*</span><span class="n">lista</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-113"><a name="L-113"></a> <span class="n">tgame</span> <span class="n">element</span><span class="p">;</span> </span><span id="L-114"><a name="L-114"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite zanr igre: &quot;</span><span class="p">;</span> </span><span id="L-115"><a name="L-115"></a> <span class="n">unesi</span><span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">zanr</span><span class="p">);</span> </span><span id="L-116"><a name="L-116"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite podzanr igre: &quot;</span><span class="p">;</span> </span><span id="L-117"><a name="L-117"></a> <span class="n">unesi</span><span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">podzanr</span><span class="p">);</span> </span><span id="L-118"><a name="L-118"></a> <span class="n">generate</span><span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">sifra</span><span class="p">);</span> </span><span id="L-119"><a name="L-119"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Izgenerirana sifra: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">element</span><span class="p">.</span><span class="n">sifra</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-120"><a name="L-120"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite naziv igre: &quot;</span><span class="p">;</span> </span><span id="L-121"><a name="L-121"></a> <span class="n">unesi</span><span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">naziv</span><span class="p">);</span> </span><span id="L-122"><a name="L-122"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite proizvodjaca igre: &quot;</span><span class="p">;</span> </span><span id="L-123"><a name="L-123"></a> <span class="n">unesi</span><span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">proizvodjac</span><span class="p">);</span> </span><span id="L-124"><a name="L-124"></a> <span class="k">do</span> <span class="p">{</span> </span><span id="L-125"><a name="L-125"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite PEGI oznaku: &quot;</span><span class="p">;</span> </span><span id="L-126"><a name="L-126"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span><span class="p">;</span> </span><span id="L-127"><a name="L-127"></a> <span class="k">if</span> <span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">3</span> <span class="o">&amp;&amp;</span> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">7</span> <span class="o">&amp;&amp;</span> </span><span id="L-128"><a name="L-128"></a> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">12</span> <span class="o">&amp;&amp;</span> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">16</span> <span class="o">&amp;&amp;</span> </span><span id="L-129"><a name="L-129"></a> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">18</span><span class="p">)</span> </span><span id="L-130"><a name="L-130"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Neispravan unos PEGI oznake&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-131"><a name="L-131"></a> <span class="p">}</span> <span class="k">while</span> <span class="p">(</span><span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">3</span> <span class="o">&amp;&amp;</span> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">7</span> <span class="o">&amp;&amp;</span> </span><span id="L-132"><a name="L-132"></a> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">12</span> <span class="o">&amp;&amp;</span> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">16</span> <span class="o">&amp;&amp;</span> </span><span id="L-133"><a name="L-133"></a> <span class="n">element</span><span class="p">.</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">18</span><span class="p">);</span> </span><span id="L-134"><a name="L-134"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-135"><a name="L-135"></a> <span class="k">if</span> <span class="p">(</span><span class="n">insertL</span><span class="p">(</span><span class="n">element</span><span class="p">,</span><span class="n">endL</span><span class="p">(</span><span class="n">lista</span><span class="p">),</span><span class="n">lista</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> </span><span id="L-136"><a name="L-136"></a> <span class="k">return</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-137"><a name="L-137"></a> <span class="k">else</span> </span><span id="L-138"><a name="L-138"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-139"><a name="L-139"></a><span class="p">}</span> </span><span id="L-140"><a name="L-140"></a> </span><span id="L-141"><a name="L-141"></a><span class="c1">//binarno pretraživanje</span> </span><span id="L-142"><a name="L-142"></a><span class="kt">void</span> <span class="nf">bsearch</span> <span class="p">(</span><span class="n">tgame</span> <span class="o">*</span><span class="n">polje</span><span class="p">,</span> <span class="kt">int</span> <span class="n">beg</span><span class="p">,</span> <span class="kt">int</span> <span class="n">end</span><span class="p">,</span> <span class="kt">char</span> <span class="n">kljuc</span> <span class="p">[</span><span class="mi">100</span><span class="p">])</span> <span class="p">{</span> </span><span id="L-143"><a name="L-143"></a> <span class="k">if</span> <span class="p">(</span><span class="n">end</span><span class="o">-</span><span class="n">beg</span> <span class="o">&lt;=</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-144"><a name="L-144"></a> <span class="k">if</span> <span class="p">(</span><span class="n">beg</span> <span class="o">==</span> <span class="n">end</span> <span class="o">&amp;&amp;</span> <span class="n">strcmp</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">beg</span><span class="p">].</span><span class="n">zanr</span><span class="p">,</span> <span class="n">kljuc</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-145"><a name="L-145"></a> <span class="n">insertL</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">beg</span><span class="p">],</span><span class="n">endL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">),</span><span class="n">pom_lista</span><span class="p">);</span> </span><span id="L-146"><a name="L-146"></a> <span class="k">else</span> </span><span id="L-147"><a name="L-147"></a> <span class="k">return</span><span class="p">;</span> </span><span id="L-148"><a name="L-148"></a> <span class="k">else</span> <span class="p">{</span> </span><span id="L-149"><a name="L-149"></a> <span class="kt">int</span> <span class="n">mid</span> <span class="o">=</span> <span class="p">(</span><span class="n">beg</span><span class="o">+</span><span class="n">end</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</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">strcmp</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">mid</span><span class="p">].</span><span class="n">zanr</span><span class="p">,</span> <span class="n">kljuc</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-151"><a name="L-151"></a> <span class="k">return</span> <span class="n">bsearch</span><span class="p">(</span><span class="n">polje</span><span class="p">,</span><span class="n">beg</span><span class="p">,</span><span class="n">mid</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="n">kljuc</span><span class="p">);</span> </span><span id="L-152"><a name="L-152"></a> <span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">mid</span><span class="p">].</span><span class="n">zanr</span><span class="p">,</span> <span class="n">kljuc</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-153"><a name="L-153"></a> <span class="n">insertL</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">mid</span><span class="p">],</span><span class="n">endL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">),</span><span class="n">pom_lista</span><span class="p">);</span> </span><span id="L-154"><a name="L-154"></a> <span class="k">while</span> <span class="p">(</span><span class="n">beg</span> <span class="o">&lt;=</span> <span class="n">end</span><span class="p">)</span> <span class="p">{</span> <span class="c1">//dodatno u binsearchu</span> </span><span id="L-155"><a name="L-155"></a> <span class="k">if</span> <span class="p">((</span><span class="n">strcmp</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">beg</span><span class="p">].</span><span class="n">zanr</span><span class="p">,</span> <span class="n">kljuc</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="n">beg</span> <span class="o">!=</span> <span class="n">mid</span><span class="p">)</span> </span><span id="L-156"><a name="L-156"></a> <span class="n">insertL</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">beg</span><span class="p">],</span><span class="n">endL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">),</span><span class="n">pom_lista</span><span class="p">);</span> </span><span id="L-157"><a name="L-157"></a> <span class="n">beg</span><span class="o">++</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">return</span><span class="p">;</span> </span><span id="L-160"><a name="L-160"></a> <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">strcmp</span><span class="p">(</span><span class="n">polje</span><span class="p">[</span><span class="n">mid</span><span class="p">].</span><span class="n">zanr</span><span class="p">,</span> <span class="n">kljuc</span><span class="p">)</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-162"><a name="L-162"></a> <span class="k">return</span> <span class="n">bsearch</span><span class="p">(</span><span class="n">polje</span><span class="p">,</span><span class="n">mid</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="n">end</span><span class="p">,</span><span class="n">kljuc</span><span class="p">);</span> </span><span id="L-163"><a name="L-163"></a> <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><span id="L-166"><a name="L-166"></a><span class="c1">//ispis strateških igara</span> </span><span id="L-167"><a name="L-167"></a><span class="kt">void</span> <span class="nf">strategy</span><span class="p">(</span><span class="n">tlista</span> <span class="o">*</span><span class="n">lista</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-168"><a name="L-168"></a> <span class="kt">int</span> <span class="n">brojac</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-169"><a name="L-169"></a> <span class="kt">int</span> <span class="n">br_strat</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-170"><a name="L-170"></a> <span class="n">initL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">);</span> </span><span id="L-171"><a name="L-171"></a> <span class="kt">int</span> <span class="n">counter</span> <span class="o">=</span> <span class="n">broj_igara</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-172"><a name="L-172"></a> <span class="n">tgame</span> <span class="o">*</span><span class="n">pom</span> <span class="o">=</span> <span class="k">new</span> <span class="n">tgame</span> <span class="p">[</span><span class="n">counter</span><span class="p">];</span> </span><span id="L-173"><a name="L-173"></a> <span class="n">vrijed</span> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-174"><a name="L-174"></a> <span class="kt">int</span> <span class="n">j</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-175"><a name="L-175"></a> <span class="k">while</span> <span class="p">(</span> <span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span><span class="p">(</span><span class="n">lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-176"><a name="L-176"></a> <span class="n">pom</span><span class="p">[</span><span class="n">j</span><span class="o">++</span><span class="p">]</span> <span class="o">=</span> <span class="n">retrieveL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-177"><a name="L-177"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">nextL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-178"><a name="L-178"></a> <span class="p">}</span> </span><span id="L-179"><a name="L-179"></a> </span><span id="L-180"><a name="L-180"></a> <span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">k</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="n">k</span> <span class="o">&lt;</span> <span class="n">counter</span><span class="p">;</span> <span class="n">k</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-181"><a name="L-181"></a> <span class="kt">int</span> <span class="n">l</span> <span class="o">=</span> <span class="n">k</span><span class="o">-</span><span class="mi">1</span><span class="p">;</span> </span><span id="L-182"><a name="L-182"></a> <span class="n">tgame</span> <span class="n">pom1</span> <span class="o">=</span> <span class="n">pom</span><span class="p">[</span><span class="n">k</span><span class="p">];</span> </span><span id="L-183"><a name="L-183"></a> <span class="k">while</span> <span class="p">(</span><span class="n">l</span> <span class="o">&gt;=</span> <span class="mi">0</span> <span class="o">&amp;&amp;</span> <span class="n">strcmp</span><span class="p">(</span><span class="n">pom</span><span class="p">[</span><span class="n">l</span><span class="p">].</span><span class="n">zanr</span><span class="p">,</span> <span class="n">pom1</span><span class="p">.</span><span class="n">zanr</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">)</span> </span><span id="L-184"><a name="L-184"></a> <span class="n">pom</span><span class="p">[</span><span class="n">l</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">pom</span><span class="p">[</span><span class="n">l</span><span class="o">--</span><span class="p">];</span> </span><span id="L-185"><a name="L-185"></a> <span class="n">pom</span><span class="p">[</span><span class="n">l</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">pom1</span><span class="p">;</span> </span><span id="L-186"><a name="L-186"></a> <span class="p">}</span> </span><span id="L-187"><a name="L-187"></a> </span><span id="L-188"><a name="L-188"></a> <span class="kt">char</span> <span class="n">kljuc</span><span class="p">[</span><span class="mi">100</span><span class="p">];</span> </span><span id="L-189"><a name="L-189"></a> <span class="n">strcpy</span><span class="p">(</span><span class="n">kljuc</span><span class="p">,</span><span class="s">&quot;Strategija&quot;</span><span class="p">);</span> </span><span id="L-190"><a name="L-190"></a> </span><span id="L-191"><a name="L-191"></a> <span class="n">bsearch</span><span class="p">(</span><span class="n">pom</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="n">counter</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="n">kljuc</span><span class="p">);</span> </span><span id="L-192"><a name="L-192"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">);</span> </span><span id="L-193"><a name="L-193"></a> <span class="k">if</span> <span class="p">(</span><span class="n">i</span> <span class="o">==</span> <span class="n">endL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">))</span> </span><span id="L-194"><a name="L-194"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Ne postoji niti jedna strateska igra u bazi&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-195"><a name="L-195"></a> <span class="k">else</span> <span class="p">{</span> </span><span id="L-196"><a name="L-196"></a> <span class="k">while</span> <span class="p">(</span> <span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-197"><a name="L-197"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="o">++</span><span class="n">brojac</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;. igra&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-198"><a name="L-198"></a> <span class="n">s_ispis</span><span class="p">(</span><span class="n">retrieveL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">pom_lista</span><span class="p">));</span> </span><span id="L-199"><a name="L-199"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">nextL</span> <span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-200"><a name="L-200"></a> <span class="n">br_strat</span><span class="o">++</span><span class="p">;</span> </span><span id="L-201"><a name="L-201"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-202"><a name="L-202"></a> <span class="p">}</span> </span><span id="L-203"><a name="L-203"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Broj strateskih igara: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">br_strat</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-204"><a name="L-204"></a> <span class="k">delete</span> <span class="p">[]</span> <span class="n">pom</span><span class="p">;</span> </span><span id="L-205"><a name="L-205"></a> <span class="n">deleteallL</span><span class="p">(</span><span class="n">pom_lista</span><span class="p">);</span> </span><span id="L-206"><a name="L-206"></a> <span class="p">}</span> </span><span id="L-207"><a name="L-207"></a><span class="p">}</span> </span><span id="L-208"><a name="L-208"></a> </span><span id="L-209"><a name="L-209"></a><span class="c1">//brisanje igara prema šifri</span> </span><span id="L-210"><a name="L-210"></a><span class="kt">int</span> <span class="nf">brisi_sifra</span><span class="p">(</span><span class="n">tlista</span> <span class="o">*</span><span class="n">lista</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-211"><a name="L-211"></a> <span class="kt">char</span> <span class="n">odabir</span><span class="p">;</span> </span><span id="L-212"><a name="L-212"></a> <span class="n">tgame</span> <span class="n">igra</span><span class="p">;</span> </span><span id="L-213"><a name="L-213"></a> <span class="kt">char</span> <span class="n">sifra</span><span class="p">[</span><span class="mi">6</span><span class="p">];</span> </span><span id="L-214"><a name="L-214"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Popis postojecih sifri: &quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-215"><a name="L-215"></a> <span class="k">for</span> <span class="p">(</span><span class="n">vrijed</span> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> <span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> <span class="n">i</span> <span class="o">=</span> <span class="n">nextL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-216"><a name="L-216"></a> <span class="n">igra</span> <span class="o">=</span> <span class="n">retrieveL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-217"><a name="L-217"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;--&gt;&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">igra</span><span class="p">.</span><span class="n">sifra</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-218"><a name="L-218"></a> <span class="p">}</span> </span><span id="L-219"><a name="L-219"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-220"><a name="L-220"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite sifru koju zelite izbrisati: &quot;</span><span class="p">;</span> </span><span id="L-221"><a name="L-221"></a> <span class="k">do</span> <span class="p">{</span> </span><span id="L-222"><a name="L-222"></a> <span class="n">unesi</span><span class="p">(</span><span class="n">sifra</span><span class="p">);</span> </span><span id="L-223"><a name="L-223"></a> <span class="k">if</span><span class="p">(</span><span class="n">strlen</span><span class="p">(</span><span class="n">sifra</span><span class="p">)</span> <span class="o">&lt;</span> <span class="mi">6</span> <span class="o">||</span> <span class="n">strlen</span><span class="p">(</span><span class="n">sifra</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">6</span><span class="p">)</span> </span><span id="L-224"><a name="L-224"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Sifra mora imati tocno 6 znakova. Ponovni unos: &quot;</span><span class="p">;</span> </span><span id="L-225"><a name="L-225"></a> <span class="p">}</span> <span class="k">while</span> <span class="p">(</span><span class="n">strlen</span><span class="p">(</span><span class="n">sifra</span><span class="p">)</span> <span class="o">&lt;</span> <span class="mi">6</span> <span class="o">||</span> <span class="n">strlen</span><span class="p">(</span><span class="n">sifra</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">6</span><span class="p">);</span> </span><span id="L-226"><a name="L-226"></a> <span class="n">vrijed</span> <span class="n">i</span> <span class="o">=</span> <span class="n">locateL</span><span class="p">(</span><span class="n">sifra</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-227"><a name="L-227"></a> <span class="k">if</span> <span class="p">(</span><span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span> <span class="p">(</span><span class="n">lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-228"><a name="L-228"></a> <span class="n">igra</span> <span class="o">=</span> <span class="n">retrieveL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-229"><a name="L-229"></a> <span class="n">s_ispis</span><span class="p">(</span><span class="n">igra</span><span class="p">);</span> </span><span id="L-230"><a name="L-230"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Zelite li potvrditi brisanje zapisa(d/n): &quot;</span><span class="p">;</span> </span><span id="L-231"><a name="L-231"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">odabir</span><span class="p">;</span> </span><span id="L-232"><a name="L-232"></a> <span class="k">if</span> <span class="p">(</span><span class="n">odabir</span> <span class="o">==</span> <span class="sc">&#39;d&#39;</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-233"><a name="L-233"></a> <span class="n">deleteL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-234"><a name="L-234"></a> <span class="k">return</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-235"><a name="L-235"></a> <span class="p">}</span> </span><span id="L-236"><a name="L-236"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-237"><a name="L-237"></a> <span class="p">}</span> </span><span id="L-238"><a name="L-238"></a> <span class="k">else</span> </span><span id="L-239"><a name="L-239"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-240"><a name="L-240"></a><span class="p">}</span> </span><span id="L-241"><a name="L-241"></a> </span><span id="L-242"><a name="L-242"></a><span class="c1">//brisanje igara sa određenom pegi oznakom</span> </span><span id="L-243"><a name="L-243"></a><span class="kt">int</span> <span class="nf">brisi_pegi</span><span class="p">(</span><span class="n">tlista</span> <span class="o">*</span><span class="n">lista</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-244"><a name="L-244"></a> <span class="kt">int</span> <span class="n">pegi</span><span class="p">,</span> <span class="n">provjera</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;;</span> </span><span id="L-245"><a name="L-245"></a> <span class="n">tgame</span> <span class="n">igra</span><span class="p">;</span> </span><span id="L-246"><a name="L-246"></a> <span class="n">vrijed</span> <span class="n">iduci</span><span class="p">;</span> </span><span id="L-247"><a name="L-247"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite PEGI oznaku(3,7,12,16,18): &quot;</span><span class="p">;</span> </span><span id="L-248"><a name="L-248"></a> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">pegi</span><span class="p">;</span> </span><span id="L-249"><a name="L-249"></a> <span class="k">if</span> <span class="p">(</span><span class="n">pegi</span> <span class="o">!=</span> <span class="mi">3</span> <span class="o">&amp;&amp;</span> <span class="n">pegi</span> <span class="o">!=</span> <span class="mi">7</span> <span class="o">&amp;&amp;</span> <span class="n">pegi</span> <span class="o">!=</span> <span class="mi">12</span> <span class="o">&amp;&amp;</span> <span class="n">pegi</span> <span class="o">!=</span> <span class="mi">16</span> <span class="o">&amp;&amp;</span> <span class="n">pegi</span> <span class="o">!=</span> <span class="mi">18</span><span class="p">)</span> </span><span id="L-250"><a name="L-250"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-251"><a name="L-251"></a> <span class="n">vrijed</span> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-252"><a name="L-252"></a> <span class="k">while</span> <span class="p">(</span><span class="n">i</span> <span class="o">!=</span> <span class="n">endL</span><span class="p">(</span><span class="n">lista</span><span class="p">))</span> <span class="p">{</span> </span><span id="L-253"><a name="L-253"></a> <span class="n">igra</span> <span class="o">=</span> <span class="n">retrieveL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-254"><a name="L-254"></a> <span class="n">iduci</span> <span class="o">=</span> <span class="n">nextL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-255"><a name="L-255"></a> <span class="k">if</span> <span class="p">(</span><span class="n">igra</span><span class="p">.</span><span class="n">pegi</span> <span class="o">==</span> <span class="n">pegi</span><span class="p">)</span> <span class="p">{</span> </span><span id="L-256"><a name="L-256"></a> <span class="n">deleteL</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-257"><a name="L-257"></a> <span class="n">provjera</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-258"><a name="L-258"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">firstL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-259"><a name="L-259"></a> <span class="p">}</span> </span><span id="L-260"><a name="L-260"></a> <span class="k">else</span> </span><span id="L-261"><a name="L-261"></a> <span class="n">i</span> <span class="o">=</span> <span class="n">iduci</span><span class="p">;</span> </span><span id="L-262"><a name="L-262"></a> <span class="p">}</span> </span><span id="L-263"><a name="L-263"></a> <span class="k">if</span> <span class="p">(</span><span class="n">provjera</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> </span><span id="L-264"><a name="L-264"></a> <span class="k">return</span> <span class="mi">1</span><span class="p">;</span> </span><span id="L-265"><a name="L-265"></a> <span class="k">else</span> </span><span id="L-266"><a name="L-266"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-267"><a name="L-267"></a><span class="p">}</span> </span><span id="L-268"><a name="L-268"></a> </span><span id="L-269"><a name="L-269"></a><span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span> </span><span id="L-270"><a name="L-270"></a> <span class="n">srand</span><span class="p">(</span><span class="n">time</span><span class="p">(</span><span class="mi">0</span><span class="p">));</span> <span class="c1">//za funkciju generate (generiranje alfanumerickoga koda od 6 znakova)</span> </span><span id="L-271"><a name="L-271"></a> <span class="n">initL</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> <span class="c1">//inicijalizacija prazne liste</span> </span><span id="L-272"><a name="L-272"></a> <span class="kt">int</span> <span class="n">izbor</span><span class="p">;</span> </span><span id="L-273"><a name="L-273"></a> <span class="k">do</span> <span class="p">{</span> </span><span id="L-274"><a name="L-274"></a> </span><span id="L-275"><a name="L-275"></a> <span class="c1">//glavni izbornik</span> </span><span id="L-276"><a name="L-276"></a> <span class="n">system</span><span class="p">(</span><span class="s">&quot;cls&quot;</span><span class="p">);</span> </span><span id="L-277"><a name="L-277"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;*********************IZBORNIK*********************&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-278"><a name="L-278"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;1. Unos podataka o racunalnoj igri&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-279"><a name="L-279"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;2. Ispis igara prema sifri (pomocu MergeSorta)&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-280"><a name="L-280"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;3. Strateske racunalne igre(pomocu BSearcha)&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-281"><a name="L-281"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;4. Brisanje igara (prema sifriI)&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-282"><a name="L-282"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;5. Brisanje svih igara sa odredjenom PEGI oznakom&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-283"><a name="L-283"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;9. Izlaz iz programa&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-284"><a name="L-284"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;**************************************************&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-285"><a name="L-285"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Unesite mogucnost: &quot;</span><span class="p">;</span> <span class="n">cin</span> <span class="o">&gt;&gt;</span> <span class="n">izbor</span><span class="p">;</span> </span><span id="L-286"><a name="L-286"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-287"><a name="L-287"></a> </span><span id="L-288"><a name="L-288"></a> <span class="k">switch</span> <span class="p">(</span><span class="n">izbor</span><span class="p">)</span> <span class="p">{</span> <span class="c1">//switch grananje s obzirom na odabranu mogucnost, tj. koju funkciju smo pokrenuli</span> </span><span id="L-289"><a name="L-289"></a> <span class="k">case</span> <span class="mi">1</span><span class="o">:</span> </span><span id="L-290"><a name="L-290"></a> <span class="k">if</span><span class="p">(</span><span class="n">unos</span><span class="p">(</span><span class="n">lista</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> </span><span id="L-291"><a name="L-291"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;ZAPIS JE USPJESNO DODAN!&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-292"><a name="L-292"></a> <span class="k">else</span> </span><span id="L-293"><a name="L-293"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;DODAVANJE ZAPISA NIJE USPJELO!&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-294"><a name="L-294"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-295"><a name="L-295"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Vracanje u izbornik - ENTER &quot;</span><span class="p">;</span> </span><span id="L-296"><a name="L-296"></a> <span class="n">getch</span><span class="p">();</span> </span><span id="L-297"><a name="L-297"></a> <span class="k">break</span><span class="p">;</span> </span><span id="L-298"><a name="L-298"></a> </span><span id="L-299"><a name="L-299"></a> <span class="k">case</span> <span class="mi">2</span><span class="o">:</span> </span><span id="L-300"><a name="L-300"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;****SORTIRANI ISPIS POLJA****&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-301"><a name="L-301"></a> <span class="n">sort_ispis</span><span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-302"><a name="L-302"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-303"><a name="L-303"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Vracanje u izbornik - ENTER &quot;</span><span class="p">;</span> </span><span id="L-304"><a name="L-304"></a> <span class="n">getch</span><span class="p">();</span> </span><span id="L-305"><a name="L-305"></a> <span class="k">break</span><span class="p">;</span> </span><span id="L-306"><a name="L-306"></a> </span><span id="L-307"><a name="L-307"></a> <span class="k">case</span> <span class="mi">3</span><span class="o">:</span> </span><span id="L-308"><a name="L-308"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;****ISPIS STRATESKIH IGARA****&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-309"><a name="L-309"></a> <span class="n">strategy</span> <span class="p">(</span><span class="n">lista</span><span class="p">);</span> </span><span id="L-310"><a name="L-310"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-311"><a name="L-311"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Vracanje u izbornik - ENTER &quot;</span><span class="p">;</span> </span><span id="L-312"><a name="L-312"></a> <span class="n">getch</span><span class="p">();</span> </span><span id="L-313"><a name="L-313"></a> <span class="k">break</span><span class="p">;</span> </span><span id="L-314"><a name="L-314"></a> </span><span id="L-315"><a name="L-315"></a> <span class="k">case</span> <span class="mi">4</span><span class="o">:</span> </span><span id="L-316"><a name="L-316"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;****BRISANJE PO SIFRI****&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-317"><a name="L-317"></a> <span class="k">if</span> <span class="p">(</span><span class="n">brisi_sifra</span><span class="p">(</span><span class="n">lista</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> </span><span id="L-318"><a name="L-318"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;BRISANJE USPJESNO!&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-319"><a name="L-319"></a> <span class="k">else</span> </span><span id="L-320"><a name="L-320"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;BRISANJE NEUSPJESNO!&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-321"><a name="L-321"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-322"><a name="L-322"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Vracanje u izbornik - ENTER &quot;</span><span class="p">;</span> </span><span id="L-323"><a name="L-323"></a> <span class="n">getch</span><span class="p">();</span> </span><span id="L-324"><a name="L-324"></a> <span class="k">break</span><span class="p">;</span> </span><span id="L-325"><a name="L-325"></a> </span><span id="L-326"><a name="L-326"></a> <span class="k">case</span> <span class="mi">5</span><span class="o">:</span> </span><span id="L-327"><a name="L-327"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;****BRISANJE PO PEGI OZNACI****&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-328"><a name="L-328"></a> <span class="k">if</span> <span class="p">(</span><span class="n">brisi_pegi</span><span class="p">(</span><span class="n">lista</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> </span><span id="L-329"><a name="L-329"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;BRISANJE USPJESNO&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-330"><a name="L-330"></a> <span class="k">else</span> <span class="p">{</span> </span><span id="L-331"><a name="L-331"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;BRISANJE NEUSPJESNO!&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-332"><a name="L-332"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;POGRESAN PEGI ILI NEPOSTOJI ZAPIS SA PEGI OZNAKOM!&quot;</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-333"><a name="L-333"></a> <span class="p">}</span> </span><span id="L-334"><a name="L-334"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="n">endl</span><span class="p">;</span> </span><span id="L-335"><a name="L-335"></a> <span class="n">cout</span> <span class="o">&lt;&lt;</span> <span class="s">&quot;Vracanje u izbornik - ENTER &quot;</span><span class="p">;</span> </span><span id="L-336"><a name="L-336"></a> <span class="n">getch</span><span class="p">();</span> </span><span id="L-337"><a name="L-337"></a> <span class="k">break</span><span class="p">;</span> </span><span id="L-338"><a name="L-338"></a> <span class="p">}</span> </span><span id="L-339"><a name="L-339"></a> <span class="p">}</span> <span class="k">while</span> <span class="p">(</span><span class="n">izbor</span> <span class="o">!=</span> <span class="mi">9</span><span class="p">);</span> </span><span id="L-340"><a name="L-340"></a> </span><span id="L-341"><a name="L-341"></a> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> </span><span id="L-342"><a name="L-342"></a><span class="p">}</span> </span></pre></div> </td></tr></table>
"ATP List", "ATP Lista", "apstract data structures", "data structures", "strukture podataka", algorithms, algoritmi, array, c++, infomratics, informatika, list, pointers, programiranje, programming