#include <stdio.h>
#include <stdlib.h>
#include <err.h>

int main(int argc, char *argv[])
{
	unsigned int ua, ub;
	int a, b;

	if (argc != 3)
		errx(1, "Usage: %s <A> <B>\nPrints average of A and B",
		    argv[0]);

	a = atoll(argv[1]);
	b = atoll(argv[2]);
	printf("Signed integer average of %i %i: %i\n",
	       a, b, (a + b) / 2);

	ua = atoll(argv[1]);
	ub = atoll(argv[2]);
	printf("Unsigned integer average of %u %u: %u\n",
	       ua, ub, (ua + ub) / 2);

	printf("Correct average of %u %u: %u\n",
	       ua, ub, ua / 2 + ub / 2 + ((ua & 1) && (ub & 1)));
	return 0;
}
	       


	
