Ir ao conteúdo
  • Cadastre-se

Andrey Felipe

Membro Júnior
  • Posts

    3
  • Cadastrado em

  • Última visita

Reputação

0
  1. Andrey Felipe

    Ajuda

    Olá estou escrevendo um codigo que le um número de 0 a 9999 e o devolve por extenso até o momento foi emplementado de 0a 999 não estou conseguindo implementar de 999 ate 9999 alguem poderia me ajudar grato desde já segue abaixo o código. #include <stdio.h> #include <string.h> #include <stdlib.h> // Variaveis globais char *unidades[] = {"zero","um","dois","tres","quatro","cinco","seis","sete","oito","nove"}; char *dezVinte[] = {"","onze","doze","treze","quatorze","quinze","dezesseis","dezessete","dezoito","dezenove"}; char *dezenas[] = {"","dez","vinte", "trinta","quarenta","cinquenta","sessenta","setenta,","oitenta","noventa"}; char *centenas[] = {"","cento","duzentos","trezentos","quatrocentos","quinhentos","seiscentos","setecentos","oitocentos","novecentos"}; char *appendStr(char *str1, char *str2) { int a,b; char *app; a=strlen(str1); b=strlen(str2); app=(char *)malloc(a+b+1); app[a+b+1]=13; for (int f=0; f<a+b; f++) { if (f<a) app[f]=str1[f]; else app[f]=str2[f-a]; } return app; } char *findName(int num) { char *e = " e "; char *nome; int c,d,dv,u; c=num/100; d=num/10-c*10; u=num-(num/10)*10; dv=d*10+u; nome=unidades; if (num<10) return nome; // Onze a dezenove if ((dv>10) && (dv<20)) nome=dezVinte[dv-10]; else { if (u==0) nome=dezenas[d]; else { nome=appendStr(e,nome); nome=appendStr(dezenas[d],nome); } } if (num<100) return nome; // Inteiro if ((d==0)&&(u==0)) { if (c==1) nome="cem"; else nome=centenas[c]; } else { nome=appendStr(e,nome); nome=appendStr(centenas[c],nome); } return nome; } int main(void) { // Variaveis int numero; char *nomeNum; printf("Entre com um numero 0-999: "); scanf("%d",&numero); if ((numero<0) || (numero>999)) { printf("Valor fora da faixa!\n"); return 0; } nomeNum=findName(numero); printf("Numero %d: %s\n",numero,nomeNum); return 0; }
  2. Obrigado pela ajuda amigo xD
  3. Andrey Felipe

    Ajuda em C

    Ola gente preciso de ajuda para um programa em C que receba um numero de 4 digitos e o devolva por extenso, também convertendo ele para binario, hexadecimal e octal e voltando para decimal depois se puderem me ajudar agradeço =) bases de (2 a 10)

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...