TestPrimjer (TP) generatori

TP generator je program koji služi za automatsko generiranje test primjera.
Pri pokretanju generatora test primjera, proslijeđuju mu se slijedeći argumenti (točno tim redom): ime datoteke za ulazne podatke, ime datoteke za izlazne podatke i redni broj test primjera.
Iz toga je moguće i zaključiti da se taj isti program pokreće zasebno za svaki test primjer.
Neki jednostavni source u C-u bi izgledao upravo ovako (funkcionalni primjer):
#include <stdio.h>
#include <stdlib.h>

int main(int argn, char *argv[]) {
	FILE *fjl;
	fjl = fopen(argv[1], "wt");
	if (!fjl) {
		printf("Ne mogu otvoriti datoteku %s!\n", argv[1]);
		return 1;
	}
	srand(time(NULL)*atoi(argv[3]));
	fprintf(fjl, "%d %d\n", rand()%10000, rand()%10000);
	fclose(fjl);
	
	printf("OK!\n");
	
	return 0;
}
srand(time(NULL)*atoi(argv[3])) se koristi zbog toga što se generiranje test primjera najčešće izvrši za manje od sekundu. To je problem jer onda random funkcionira pri svakom pokretanju TP generatora na jednak način, tj. random pri svakom pokretanju daje jednak niz brojeva.
Problem je rješen tako da je random inicijaliziran na trenutno vrijeme pomnoženo s trenutnim brojem test primjera (broj test primjera za kojeg se prilikom trenutnog pokretanja generira test primjer).

Sve što program ispiše na standardni izlaz će se prikazati u log datoteci.
Tu log datoteku je moguće vidjeti nakon što se izvrši i posljednje generiranje test primjera, klikom na link "View log".

Napomena: Rezursi za izvršavanje TP generatora nisu ograničeni, te je vrlo važno da TP generator ne završi u beskonačnoj petlji!