Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 11336

7 segmentos

$
0
0
Boas... Aqui fica o código feito pelo nosso amigo HappyHiipyHippo. Eu acho que percebi o código por alto e posso tentar ajudar em alguma dúvida que possas ter e que eu saiba explicar! E apesar de isto não ser prática correcta, a de colocar aqui a solução, acho que não irias lá chegar tão cedo, até porque eu também jamais chegaria a esta solução! Tenta mesmo perceber o código, porque se isto fôr para algum trabalho, que depois tenhas que defender, vais acabar por deitar tudo a perder porque não vais saber explicar como o código funciona! Nem tão pouco vais ficar a saber como se faz! #include <stdio.h> char DIGITS[10][3][3] = { { {' ', '_', ' '}, { '|', ' ', '|'}, { '|', '_', '|'} }, { {' ', ' ', ' '}, { ' ', ' ', '|'}, { ' ', ' ', '|'} }, { {' ', '_', ' '}, { ' ', '_', '|'}, { '|', '_', ' '} }, { {' ', '_', ' '}, { ' ', '_', '|'}, { ' ', '_', '|'} }, { {' ', ' ', ' '}, { '|', '_', '|'}, { ' ', ' ', '|'} }, { {' ', '_', ' '}, {'|', '_', ' '}, { ' ', '_', '|'} }, { {' ', ' ', ' '}, { '|', '_', ' '}, { '|', '_', '|'} }, { {' ', '_', ' '}, { ' ', ' ', '|'}, { ' ', ' ', '|'} }, { {' ', '_', ' '}, { '|', '_', '|'}, { '|', '_', '|'} }, { {' ', '_', ' '}, { '|', '_', '|'}, { ' ', ' ', '|'} } }; void printNumberRec(int number, int line){ if (line >= 3) return; int suf = number / 10; int digit = number % 10; if (suf) printNumberRec(suf, line); printf("%c%c%c", DIGITS[digit][line][0], DIGITS[digit][line][1], DIGITS[digit][line][2]); // poderia ser uma string ... mas a matrix já está criada } void printNumber(int number) { for (int line = 0; line < 3; ++line) { printNumberRec (number, line); printf("\n"); } } int main(){ int number; printf("digite um numero:\n"); printf(">>>"); scanf("%d", &number); printNumber(number); return 0; }

Viewing all articles
Browse latest Browse all 11336

Trending Articles