Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
#include <stdio.h> #include <string.h> /** Autor : Fabrício de Medeiros Neto sobre a questão : Foi uma questão dificil, mas com muito esforço consegui chegar a doideira. email : fabricio221995@hotmail.com **/ //função para somar os leds int somaLeds(int *CaracToInt){ int i,soma1 = 0,j; int ledsSoltos[10] = {2,5,5,4,5,6,3,7,6,6}; //quantidade de leds para formar um led inteiro int LedsInteiros[10] = {1,2,3,4,5,6,7,8,9,0};//leds inteiros //relaciona cada Led Inteiro aos seus respectivos leds solto e faz a soma dos leds soltos for(j = 0; j < 10; j++){ if(*CaracToInt == LedsInteiros[j]){ soma1 += ledsSoltos[j]; break; } } return soma1; } int main(){ int casosTestes,tamanho,i,soma = 0,soma1,converter; int CaracToInt[10000]; //vetor para receber a conversão de caracter para inteiro char numeroLeds[10000]; //numero de leds; FILE *pf; pf = fopen("Log.txt","a+"); if(pf == NULL){ printf("Falha ao criar o arquivo\n"); }else{ printf("Arquivo criado/atualizado com sucesso\n"); } printf("Casos testes que voce quer?\n"); scanf("%d",&casosTestes); //onde a mágica começa. while(casosTestes--){ printf("Digite a quantidade de leds\n"); scanf("%s",&numeroLeds); tamanho = strlen(numeroLeds); //tira o tamanho do caracter. for(i = 0; i < tamanho; i++){ converter = (numeroLeds[i] - 48); //converter carac por carac e converter para inteiro. CaracToInt[i] = converter; //passa o inteiro convertido para um vetor. soma1 = somaLeds(&CaracToInt[i]); // chama a função que relaciona o LED INTEIRO ao seu LED SOLTO. soma += soma1; //soma o retorno que vem da função. } printf("Soma dos leds %s : %d\n\n",numeroLeds,soma); fprintf(pf,"\n\n######################\n\nSoma dos leds %s : %d\n\n######################\n\n",numeroLeds,soma); //zerando as variaveis,caso for fazer mais de uma vez. soma1 = 0; soma = 0; tamanho = 0; } if(fclose(pf) == 0){ printf("Arquivo fechado com sucesso\n",pf); }else{ printf("problema ao fechar o arquivo\n"); } }
Compartilhar