//Rus ste i radite u Roscosmos-u (Федеральное космическое агентство России Federal'noye kosmicheskoye agentstvo Rossii). Vaš glavni zadatak je da generirate signale i
//šaljete ih amerikancima kako bi oni mislili da zapravo hvataju vanzemaljske signale i kako bi vi bili u prednosti navodeći ih na krivi put. Uočili ste da amerikanci puno
//pažnje poklanjaju signalima koji predstavljaju niz znakova, za koji vrijede sljedeća pravila:
//Niz u sebi sadrži 2 znaka: # ili !(može biti 2 '#' ili 2 '!' ili '#' i '!'), pomoću kojih je jedan niz rastavljen na 3 manja niza.
//Unutar svakog od manjih nizova je skrivena poruka na način da se ista poruka pojavljuje u sva 3 niza, i ima svojstvo da je najduži podniz u sva 3 niza.
//Odlučili ste napisati program koji će „zamaskirati“ neku poruku gore opisanim algoritmom.Dodatno program zahtjeva unos 6 brojeva koji određuju način skrivanja poruke, po
//2 broja za skrivanje unutar svakog niza.Prvi broj označava koliko slučajnih znakova je potrebno izgenerirati u prvom nizu lijevo od poruke, drugi broj označava koliko
//slučajnih znakova je potrebno izgenerirati u prvom nizu desno od poruke.Treći broj i četvrti broj govore to isto za drugi niz, a peti i šesti broj za treći niz.
//Za generiranje svakog od 3 podniza koristiti ISTU funkciju sa sljedećim protitipom(spojiti generirane nizove u main funkciji, alocirati memoriju dinamički) :
// char generirajNiz(char poruka, int brSlovaPrije, int brSlovaPoslije)
// Za ispravno generiranje slučajnih brojeva potrebno je pozvati srand(1000) na početku programa, i zatim pozivati funkciju rand() za generiranje slučajnog znaka.Generirani
// znakovi trebaju biti samo znamenke, velika te mala slova engleske abecede, prema sljedećim naputcima :
//ukoliko rand() vrati broj manji od 10 - tada je znamenka
//ukoliko vrati broj između 10 i 35 - veliko slovo
//broj između 36 i 61 - malo slovo
//ne odbacivati niti jedan rand() poziv, nego koristiti% operator kako bi dobili odgovarajuće vrijednosti
//što se tiče # i !, potrebno ih je staviti u poretku !, pa zatim # (nije rand() funkcija).
//Rus ste i radite u Roscosmos-u (Федеральное космическое агентство России Federal'noye kosmicheskoye agentstvo Rossii). Vaš glavni zadatak je da generirate signale i //šaljete ih amerikancima kako bi oni mislili da zapravo hvataju vanzemaljske signale i kako bi vi bili u prednosti navodeći ih na krivi put. Uočili ste da amerikanci puno //pažnje poklanjaju signalima koji predstavljaju niz znakova, za koji vrijede sljedeća pravila: //Niz u sebi sadrži 2 znaka: # ili !(može biti 2 '#' ili 2 '!' ili '#' i '!'), pomoću kojih je jedan niz rastavljen na 3 manja niza. //Unutar svakog od manjih nizova je skrivena poruka na način da se ista poruka pojavljuje u sva 3 niza, i ima svojstvo da je najduži podniz u sva 3 niza. //Odlučili ste napisati program koji će „zamaskirati“ neku poruku gore opisanim algoritmom.Dodatno program zahtjeva unos 6 brojeva koji određuju način skrivanja poruke, po //2 broja za skrivanje unutar svakog niza.Prvi broj označava koliko slučajnih znakova je potrebno izgenerirati u prvom nizu lijevo od poruke, drugi broj označava koliko //slučajnih znakova je potrebno izgenerirati u prvom nizu desno od poruke.Treći broj i četvrti broj govore to isto za drugi niz, a peti i šesti broj za treći niz. //Za generiranje svakog od 3 podniza koristiti ISTU funkciju sa sljedećim protitipom(spojiti generirane nizove u main funkciji, alocirati memoriju dinamički) : // char generirajNiz(char poruka, int brSlovaPrije, int brSlovaPoslije) // Za ispravno generiranje slučajnih brojeva potrebno je pozvati srand(1000) na početku programa, i zatim pozivati funkciju rand() za generiranje slučajnog znaka.Generirani // znakovi trebaju biti samo znamenke, velika te mala slova engleske abecede, prema sljedećim naputcima : //ukoliko rand() vrati broj manji od 10 - tada je znamenka //ukoliko vrati broj između 10 i 35 - veliko slovo //broj između 36 i 61 - malo slovo //ne odbacivati niti jedan rand() poziv, nego koristiti% operator kako bi dobili odgovarajuće vrijednosti //što se tiče # i !, potrebno ih je staviti u poretku !, pa zatim # (nije rand() funkcija).
/* ulaz: kozmonaut 3 2 0 1 1 1 izlaz: Ib3kozmonautQL!kozmonauth#ikozmonautY
ulaz: krumpir 7 11 96 43 13 198 izlaz: Ib3QLhikrumpirYOsPdgdwOMP!gMFnW3Mq5tGRpqHtUiYwjLxYBZfVfJOeofybrOIBLpoGRguxbQC11U5XnagxkzLflH6FUjzA697j9LoR1g7hsfsnaFibybokkrumpirCn0muKC5VaWX8qXNzYCMrHG2xVvbS1FYJk7OmC3dAtT#tOQX1eY0QKubrkrumpirIq6i0K6ZJ89F70eHEDaa80c3lelMuMd9U8BoGJ62Qupe8gNNsAb0rE2tYHKITdUexkjlbSufuwbzqJaXHqQboQOLjKfseQCwgTw4fScqy9Vh3CUlem6NY9eX76uqq7AOb6BLNf9OxIlKGLhLhxlUr8FvSPLzFqgEfHwBOkrPbfBSnTBPdJEbIpSnZTMklQyUtEMq9w
ulaz: blitva 1002 1 0 0 0 0 izlaz: Ib3QLhiYOsPdgdwOMPgMFnW3Mq5tGRpqHtUiYwjLxYBZfVfJOeofybrOIBLpoGRguxbQC11U5XnagxkzLflH6FUjzA697j9LoR1g7hsfsnaFibybokCn0muKC5VaWX8qXNzYCMrHG2xVvbS1FYJk7OmC3dAtTtOQX1eY0QKubrIq6i0K6ZJ89F70eHEDaa80c3lelMuMd9U8BoGJ62Qupe8gNNsAb0rE2tYHKITdUexkjlbSufuwbzqJaXHqQboQOLjKfseQCwgTw4fScqy9Vh3CUlem6NY9eX76uqq7AOb6BLNf9OxIlKGLhLhxlUr8FvSPLzFqgEfHwBOkrPbfBSnTBPdJEbIpSnZTMklQyUtEMq9wwqixlIESMvjFUT9tvDFzV39q43kZBcNnYx7KdaMT0BE4bTafkeJcU0Jq0dnKruYyfMeR1gqHHnOdJVOhrpcR8h2p6k23uAtQDSApOT2QjDZcU5Em8s10PLnQ8jWE4vuDyV13i129qCVnAmxrmBupwjNxFJqHdJMBcb73DKlqQL2HyGGaRVeMyjHSSVX4bWpMGeKnDbPgk61hDj3M6udVNnqAj6jS5pYxIN4BA2rysDn6LYyDhKLejv51rL2EL4eO7rmVASqlOlG0vZWyXRd5hiNdYBa7lDQHUyN5zHnl8glOBHtYIq2aYMIsuRzpPjzzzyNe0vTSSCiAxE4h2ORto7BHvowVvDhUgNhRFRpxUNXjl2oGGpt9YIh4TkbjfsBbU4rZrzA9qcgOFudpohM1UohkrZf53OqBhGregiUZze3vC8lDRqM4WhswBvpbj7Lw0Vjl9SaxF19503JtnxxKAx712logQx5BVdzsr1Uotdw2kdX4Pc8H4IdVNONmUMnTfMiVWs4lZgvR9sYcBdzsYOrCUSjjUQu3sfS21VNAIhbtVNfBTh6W23Y49NhOZl9tsSnMs2mbVXUuqIU3xJ349BAlQR0023VdprrHDatNywAXGvREjLxmXiSfrFblitvaW!blitva#blitva
ulaz: moskva 0 0 0 0 0 0 izlaz: moskva!moskva#moskva
*/
char generirajNiz(char poruka, int brSlovaPrije, int brSlovaPoslije);
define _CRT_SECURE_NO_WARNINGS
include
include
include
int main() { char rijec[100]; int d1, d2, d3, d4, d5, d6; srand(1000);
}
char generirajNiz(char poruka, int brSlovaPrije, int brSlovaPoslije) { char novapor = (char)calloc(strlen(poruka) + brSlovaPrije + brSlovaPoslije + 1, sizeof(char)); int br = 0; char tmp;
}