Problema: 1168
Enunciado:
João quer montar um painel de leds contendo diversos números. Ele não possui muitos leds, e não tem certeza se conseguirá montar o número desejado. Considerando a configuração dos leds que formam os números, faça um algoritmo que ajude João a descobrir a quantidade de leds necessário para montar o valor.
Linguagem: C
Neste problema é necessário saber quantos leds há em cada caractere numérico, a saber:
1: 2 leds
2: 5 leds
3: 5 leds
4: 4 leds
5: 5 leds
6: 6 leds
7: 3 leds
8: 7 leds
9: 6 leds
Desta forma, era necessário apenas percorrer a string (char *) e acumular a quantidade de leds com base na quantidade de leds que cada caractere numérico contém.
#include <stdio.h> #include <string.h> int main() { int n, leds, j, i = 0; char *v = (char *) malloc(sizeof(char) * 100); scanf("%i", &n); while (i++ < n) { leds = 0; j = 0; scanf("%s", v); while (j < strlen(v)) { switch(v[j]) { case '1': leds += 2; break; case '2': case '3': case '5': leds += 5; break; case '4': leds += 4; break; case '7': leds += 3; break; case '8': leds += 7; break; default: leds += 6; break; } j++; } printf("%i leds\n", leds); } return 0; }
Nenhum comentário:
Postar um comentário