Napisati program koji računa prosek ocena učenika iz pet predmeta koristeći dinamički definisane nizove. Predmeti su Srpski, Matematika, Engleski, Fizicko i Programiranje. Ove predmete definisati kao konstantan niz stringova. Potrebno je napraviti meni. 1) Prva opcija služi za smeštanje učenika u niz. Svaki put kada se odabere ova opcija korisnik unosi broj učenika, unose se prezimena i ocene učenika i smeštaju se novi učenici u niz prezimena i niz proseka (koristiti funkciju malloc ili calloc) a stari se brišu. Broj učenika u razredu ne može da bude veći od 30. 2) U okviru druge opcije potrebno je izlistati prezimena učenika i proseka u dve kolone razdvojene tabom. Kod učenika koji iz nekog predmeta imaju jedinicu ispisati umesto proseka poruku nedovoljan. Pitati korsinika da li želi da izmeni ocene učenika. Ukoliko je odgovor da,unosom rednog broja učenika omogućiti ponovni unos ocena (Izmena ocena ucenika).
3) Treća opcija služi za nadodavanje učenika u već postojeći niz učenika (koristiti funkciju realloc). Korisnik unosi broj novih učenika i oni se nadodaju na postojeće. 4)Četvrta opcija služi za brisanje učenika. Potrebno je prikazati redom učenike i potom pitati korisnika za redni broj učenika kojeg želi da obriše. Obrisati tog učenika tako što ćete pomeriti sve učenike za jedno mesto u levo počevši od tog učenika i zatim ćete funkcijom realloc promeniti veličinu niza. 5) Peta opcija služi da prikaže učenika sa najboljim prosekom 6) Šesta opcija je za izlazak iz programa. Za niz prezimena učenika kreirati novu promenljivu tipa string. Napisati potprograme za unos prezimena učenika i ocena, ispis prezimena učenika i proseka, za izmenu ocena učenika, za nadodavanje učenika, za brisanje učenika, za izračunavanje aritmetičke sredine (tu se računa prosek) i određivanje najboljeg učenika. Za realizaciju menija koristitie funkciju bez argumenata kojoj će povratna vrednost da bude odabir korisnika. Nizove realizovati dinamički.
printf("\t\t\tProgram za izracunavanje prosecne ocene");
printf("\n\tOdaberite zeljenu opciju");
printf("\n\t1) Unos imena novih ucenika i njihovih ocena");
printf("\n\t2) Ispis i izmena ucenika i njihovih ocena");
printf("\n\t3) Nadodavanje novih ucenika");
printf("\n\t4) Brisanje ucenika");
printf("\n\t5) Najbolji učenik");
printf("\n\t6) Kraj programa");
printf("\n\tOdaberite opciju:");Napisati program za kasu u prodavnici. Potrebno je napraviti meni. U okviru prve opcije potrebno je uneti prvo cenu proizvoda pa onda naziv proizvoda sve dok kasirka ne unese cenu koja je manja ili jednaka sa nulom. Svaki put kada se odabere ova opcija naodadaju se proizvodi na već postojeće proizvode. Broj proizvoda ne može da bude veći od 50. Za čuvanje podataka koristiti statičke nizove. Napisati funkciju unos koja će da omogući unos proizvoda i kojoj će bočni efekat funckije da bude broj unetih proizvoda. U okviru druge opcije ispisati nazive i cene proizvoda kao i ukupnu cenu svih proizvoda. Napisati funkcij za ispis i funkciju koja računa ukupnu cenu proizvoda. U okviru treće opcije ispisati najskuplji i najjeftini proizvod. Napisati funckiju kojoj će povratna vrednost da bude redni broj najskupljeg proizvoda i bočni efekat redni broj najjeftinijeg proizvoda i ispisati najskuplji/najjeftini u funkciji main. U okviru četvrte opcije prikazati broj proizvoda koji je skuplji od cene koju unosi korisnik i ispisati te proizvode i njihove cene. To realizovati kao posebnu funkciju. Peta opcija je za izlazak iz programa. Definisati novi tip podataka string kao niz od 30 karaktera u čijim promenljivima će da se čuvaju nazivi proizvoda. U opcijama 2, 3 i 4 ukoliko nije unesen nijedan proizvod obavestiti porukom korisnika o tome. Za realizaciju menija koristitie funkciju bez argumenata kojoj će povratna vrednost da bude odabir korisnika.
printf("\t\t\tProgram za kasu u prodavnici");
printf("\n\tOdaberite zeljenu opciju");
printf("\n\t1) Unos proizvoda");
printf("\n\t2) Ispis proizvoda, njihovih cena i ukupne cene proizvoda");
printf("\n\t3) Ispis najskupljeg/najjeftinijeg proizvoda");
printf("\n\t4) Ispis broja proizvoda skupljih od odredjene cene");
printf("\n\t5) Kraj programa");
printf("\n\tOdaberite opciju:");Zadatak 1:
GSP Subotica Trans je rapisala konkurs da se napiše program koji treba da izračuna rastojanje korisnika do najbliže autobuske stanice. Pozicija korisnika i autobuskih stanica je određena koordinatama. Program treba da ima sledeće opcije: 1) Unos novih autobuskih stanica. Unosi se prvo broj autobuskih stanica pa onda se unosi naziv i koordinate za svaku autobuku stanicu. Svaki put kada se odabere ova opcija ponovo se unose nove autobuske stanice a stare se brišu. Broj stanica ne može da bude veći od 30 2) Izmena koordinata postojeći autobuskih stanica. Svaki put kada se odabere ova opcija izlistaju se nazivi autobuskih stanica i njihove koordinate u dve kolone. Pitati korisnika da li želi da izmeni koordinate i naziv neke od stanica. Ukoliko je odgovor da,unosom rednog broja stanice omogućiti ponovni unos naziva i koordinata stanice. 3) Treća opcija služi za nadodavanje autobuskih stanica u već postojeći niz stanica (koristiti funkciju realloc). Korisnik unosi broj novih ustanica i oni se nadodaju na postojeće. 4) Četvrta opcija služi za brisanje stanica. Potrebno je prikazati redom stanice i potom pitati korisnika za redni broj stanice koju želi da obriše. Obrisati tu stanicu tako što ćete pomeriti sve stanice za jedno mesto u levo počevši od te stanice i zatim ćete funkcijom realloc promeniti veličinu nizova.
5) Izračunavanje rastojanja do najbliže autobuske stanice. U okviru ove opcije korisnik treba da unese svoje koordinate i onda je potrebno da se prikažu rastojanja od svih autobuskih stanica i na kraju da se prikaže najbliža autobuska stanica (naziv koordinate i rastojanje) 6) Kraj programa. Potrebno je koristiti potprograme za unos stanica, ispis stanica, za izmenu autobuske stanice,za nadodavanje stanice, za brisanje autobuske stanice, za određivanje najbliže stanice u okviru koje će se ispisati sva rastojanja autobuskih stanica (nazivi i koordinate) od korisnika i koja će da vrati rastojanje do najbliže autobuske stanice a bočni efekat funckije treba da bude redni broj najbliže stanice. Ispis naziva, koordinata I rastojanja najbliže stanice ispisati u funkciji main u opciji 5. Dinamički definsati nizove.
printf("\t\t\tAutobuska stanica");
printf("\n\tOdaberite zeljenu opciju");
printf("\n\t1) Unos autobuskih stanica");
printf("\n\t2) Izmena parametara autobuskih stanica");
printf("\n\t2) Nadodavanje novih autobuskih stanica");
printf("\n\t3) Brisanje autobuske stanice");
printf("\n\t4) Rastojanje do najblize stanice");
printf("\n\t5) Kraj programa");
printf("\n\tOdaberite opciju:");