--- /dev/null
+#include <stdio.h>
+
+float imc(float peso, float altura);
+void escreveCategoria(float imc);
+float pesoMinimo(float altura);
+float pesoMaximo (float altura);
+
+int main() {
+ float h, w;
+
+ printf("Altura: ");
+ scanf("%f", &h);
+ printf("Peso: ");
+ scanf("%f", &w);
+
+ escreveCategoria(imc(w, h));
+
+ printf("Normal: %.2f < peso < %.2f\n",
+ pesoMinimo(h),
+ pesoMaximo(h));
+
+ return 0;
+}
+
+float imc(float peso, float altura) {
+ return peso / (altura*altura);
+}
+
+void escreveCategoria(float imc) {
+
+ printf("Categoria (IMC %f): ", imc);
+
+ if (imc < 19) printf("Magro");
+ else if (imc <= 25) printf("Normal");
+ else if (imc <= 30) printf("Excesso de peso");
+ else if (imc <= 40) printf("Obeso");
+ else printf("Obesidade Mórbida");
+
+ printf("\n");
+}
+
+float pesoMinimo(float altura) {
+ return 19*altura*altura;
+}
+
+float pesoMaximo (float altura) {
+ return 25*altura*altura;
+}
+
--- /dev/null
+#include <stdio.h>
+
+#define SPACE 2
+
+void piramide (int N);
+void escreveCaracter(char c, int n);
+void escreveNumerosAsc(int a, int b);
+void escreveNumerosDesc(int a, int b);
+
+int main() {
+ int n;
+
+ do {
+ printf("Número: ");
+ scanf("%d", &n);
+ } while (n < 2);
+
+ piramide(n);
+
+ return 0;
+}
+
+void piramide (int N) {
+ int i;
+
+ for (i = 1; i <= N; i++) {
+ escreveCaracter(' ', (SPACE + 1)*(N - i));
+ escreveNumerosAsc(1, i);
+ escreveNumerosDesc(i - 1, 1);
+ putchar('\n');
+ }
+}
+
+void escreveCaracter(char c, int n) {
+ while (n--)
+ putchar(c);
+}
+
+void escreveNumerosAsc(int a, int b) {
+ while (a <= b)
+ printf(" %*d", SPACE, a++);
+}
+
+void escreveNumerosDesc(int a, int b) {
+ while (a >= b)
+ printf(" %*d", SPACE, a--);
+}
+