Introducción a la
Programación
Trimestre 2005 Otoño --- Tarea 2
Jueves 20 de octubre de 2005 a
las 22:00
hrs
Tipo de triángulo
Tres números enteros a,
b y c son las longitudes de los lados de
un triángulo si son positivos y además satisfacen las
tres desigualdades del triángulo: a + b
> c, b + c
> a y c + a
> b. Además, hay
tres tipos de triángulos: equiláteros, isóceles y
escalenos (en realidad hay otros tipos de triángulos, como los
triángulos rectángulos, pero en esta tarea sólo
nos concentraremos en estos tres tipos). Dados tres números
enteros a, b y c,
se desea saber si ellos son las longitudes de los lados de un
triángulo. Si lo son, se desea saber de que tipo es el
triángulo. Si no lo son, se desea calcular el mínimo
número entero d tal que
a + d, b
+ d y c + d
son las longitudes de los lados de un triángulo. Por ejemplo, si
a = 3, b = 4 y c = 5 entonces estamos hablando de
un triángulo escaleno, pero si a
= 3, b = 1 y c = 2 entonces no tenemos un
triángulo y necesitamos d
= 1.
Especificación
La entrada consiste de tres números enteros a, b,
y c que tendrán valores
entre -1,000,000,000 y 1,000,000,000 cada uno. La salida consiste de
dos números enteros t y
d
en ese orden y
separados por un espacio. El valor de t
será 0 si no es triángulo, 1 si es equilátero, 2
si es isóceles y 3 si es escaleno. El valor de d será 0 a menos que t = 0. El
nombre de su
programa deberá ser tipotrNN.c,
donde NN es el
número de equipo
que les fue
asignado. Los archivos tipotrNN.o
y tipotrNN.exe no deben
ser
entregados. Notas: (a) Su
programa no deberá leer ni escribir nada además de los
datos mencionados anteriormente. (b) Su programa no deberá usar
nada que no
hayamos visto en clase. (c) Para compilar su programa en UNIX usen la
instrucción gcc
tipotrNN.c -o tipotr y para probarlo usen la instrucción ./tipotr y tecleen la entrada
deseada seguida de un enter.
Ejemplos
ENTRADA:
3 4 5 ENTRADA: 3 1 2
SALIDA:
3 0 SALIDA: 0 1