1.
Napisati C program koji za dve niske koje se zadaju kao argumenti komandne linije
ispisuje:
2.
Napisati program mygrep
koji iz datoteke ulaz.htm (niz linija limitirane duzine) izdvaja sve linije koje sadrže nisku koja se zadaje kao argument komandne linije i ispisuje ih na standardni izlaz.
Obezbediti da program ne pravi razliku medju malim i velikim slovima ako je medju argumentima komandne linije prisutan
opcioni
argument -i.
3.
Napisati program mytail
koji ispisuje poslednjih n linija datoteke ulaz.htm (niz linija limitirane duzine). Podrazumevana vrednost za n je 10, ali tu vrednost može da izmeni opcioni argument, tako da
mytail -n
štampa poslednjih n linija. Voditi računa o efikasnosti pri
korišćenju raspoložive memorije.
4.
Napisati program WordSort
koji sortira u neopadajućem poretku po prvoj reči linije
datoteke ulaz.txt (niz linija limitirane dužine) i prepisuje ih na standardni izlaz.
Ako je kao argument komandne linije zadat opcioni argument -n , onda izvršiti
numeričko sortiranje. Ako je kao argument komandne linije zadat opcioni argument -r , onda promeniti redosled sortiranja u nerastući poredak.
Obezbediti da program radi i kad su prisutna oba opciona argumenta -r -n .
Može se pretpostaviti da ukupan broj linija nije veći od 1000,
kao i da dužina svake linije/reči nije veća od 80 karaktera.
5.
Napisati program mygrep2
koji iz datoteke ulaz.txt (niz linija limitirane dužine) izdvaja samo one linije koje ne
sadrže nisku koja se zadaje kao argument komandne linije.
Ako je medju argumentima komandne linije prisutan opcioni
argument -n, onda obezbediti da program ispred svake linije na izlazu ispiše
i njen redni broj u tekstu sa ulaza .
6.
U datoteci pogodi.txt se čuva sadržaj reči (sastavljen od velikih slova engleske abecede) koju korisnik pogađa. Napisati program vesanje
koji od strane korisnika učitava jedno po jedno slovo koje unosi korisnik pogađajući reč. Pri učitavanju svakog uspešno pogođenog slova program treba da ispiše sve pojave onih slova u reči koja su do tada pogođena. Na mestima nepogođenih slova treba da stoje *. Voditi racuna da korisnik može da unese nešto što nije slovo (u kom slučaju program ne treba da mu ispiše trenutno stanje pogođenih slova, jer se ništa nije promenilo).
Takodje, predvideti mogućnost da se korisniku uvaži unos malog slova
(tretirati ga kao odgovarajuće veliko slovo).
Program treba da se zaustavi nakon više od n neuspelih pokušaja ili, u suprotnom da ispiše ukupan broj pokušaja (uspešnih, neuspešnih) u slučaju da su pogođena sva slova za manje od n neuspelih pokušaja.
Ceo broj n se zadaje iz komandne linije.
7.
Napisati C program koji od dve datoteke, u kojima su linije sortirane u rastućem leksikografskom poretku, formira treću datoteku koja sadrži linije koje postoje u obe
datoteke, tako da ona bude, takoće, sortirana u RASTUĆEM leksikografskom poretku.
Imena sve tri datoteke se zadaju kao argumenti komandne linije.
8.
Napisati C program koji od dve datoteke, u kojima su linije sortirane u rastućem leksikografskom poretku, formira treću datoteku koja sadrži linije koje postoje u obe
datoteke, tako da ona bude sortirana u NEOPADAJUĆEM leksikografskom poretku.
Imena sve tri datoteke se zadaju kao argumenti komandne linije.
9.
Napisati C program koji od dve datoteke, u kojima su linije sortirane u rastućem leksikografskom poretku, formira treću datoteku koja sadrži linije koje postoje u obe
datoteke, tako da ona bude sortirana u OPADAJUĆEM leksikografskom poretku.
Imena sve tri datoteke se zadaju kao argumenti komandne linije.