all: hw1sol.dvi hw1sol.pdf

clean:
	rm -f hw1sol.dvi prog1 prog1.out prog2 prog2.out prog3 prog3.out \
	prog4 prog4.out prog5 prog5.out prog6 prog6.out prog7 prog7.out \
	maple4.out hw1sol.log hw1sol.pdf util4.o

hw1sol.pdf: hw1sol.dvi
	dvipdf hw1sol.dvi

hw1sol.dvi: hw1sol.tex prog1.c prog1.out prog2.c prog2.out \
		prog3.c prog3.out prog4.c prog4.out prog5.c prog5.out \
		prog6.c prog6.out prog7.c prog7.out maple4.out util4.c
	tex hw1sol.tex

prog1: prog1.c
	gcc -o prog1 prog1.c -lm

prog1.out: prog1
	./prog1 >prog1.out

prog2: prog2.c
	gcc -o prog2 prog2.c -lm

prog2.out: prog2
	./prog2 >prog2.out

prog3: prog3.c
	gcc -o prog3 prog3.c -lm

prog3.out: prog3
	./prog3 >prog3.out

util4.o: util4.c
	gcc -c util4.c

maple4.out: maple4.mpl
	maple -q maple4.mpl >maple4.out

prog4: prog4.c util4.o
	gcc -o prog4 prog4.c util4.o -lm

prog4.out: prog4
	./prog4 >prog4.out

prog5: prog5.c util4.o
	gcc -o prog5 prog5.c util4.o -lm

prog5.out: prog5
	./prog5 >prog5.out

prog6: prog6.c util4.o
	gcc -o prog6 prog6.c util4.o -lm

prog6.out: prog6
	./prog6 >prog6.out

prog7: prog7.c
	gcc -o prog7 prog7.c -lm

prog7.out: prog7
	./prog7 >prog7.out
