Ir ao conteúdo
  • Cadastre-se

Ansi C

Membro Pleno
  • Posts

    3.284
  • Cadastrado em

  • Última visita

Tudo que Ansi C postou

  1. @DanielC4 Bom Dia Para mim, teu programa falhou já no início, isso mesmo, meu mestre! Ao solicitar um termo… alguém entrou com ele e o programa escreveu isto: 0 0 0 ... É coluna densa de valores desconexos. A propósito, o número que alguém entrou era um inteiro. Veja: Digite um termo inicial: 0xff Digite uma razão: Digite um número a ser pesquisado na sequência: 0 ... 145003 ... 0 -13008 7 ... Ele informou, 0xff um inteiro, né? Deu nisso, sequer tem a oportunidade dum segundo. ... O especificador nos argumentos da scanf não concorda com a mensagem na solicitação, que também não está de acordo com enunciado. Parece bobagem, eu sei! @devair1010 tua expressão também falhou no valor para termo.
  2. Boa Noite! Para mim, já falha no começo, isso mesmo no LEIA... porque do jeitinho fofo que está ..., talvez o programa não leia o dado inteiro (15). O programa escreve: Insira os valores do vetor- _ O enunciado diz: 15 posições de números inteiro Alguém Entra Insira os valores do vetor 034 0xff 0 9 8 7 6 5 4 3 2 1 20 22 02 Sim, meu bem! Acima, alguém entrou com seus 15 números no escaneamento, que apesar de enunciar inteiro, extrai em decimal, sendo 1/3 das bases que normalmente se estuda antes dessa categoria de exercício. Não chegará ao ranqueamento, mas se chegar terá resultado duvidoso, né? Daí adicione ao fato `maior_valor` que matou o sentido de usar matriz no exercício que é de matrizes - cultura deste fórum (CdH) Enfim, com uns ajustes até compila: c'11 - gcc'11.4 #include <stdio.h> int main ( ) { int vet [15]= {0}; int i= 0 , maior= 0; /* isto ler inteiro (15) */ printf("Insira valores do vetor (15)\n"); for(i= 0 ; i<15 ; i++) { int r= scanf ("%i", &vet[i]); if (EOF==r) return 1; if (1==r) continue; getchar (); --i; } /* isto ranquea o maior */ for (i= 0 ; i<15 ; i++) if (vet[maior]<vet[i]) maior= i; /* isto faz o produto */ for (i= 0 ; i<15 ; i++) vet[i]*= vet[maior]; /* isto escreve int... */ for (i= 0 ; i<15 ; i++) printf ("%i ",vet[i]); putchar ('\n'); }
  3. Boa Noite Já é um Padrão do Fórum Com certeza, exercícios de nível iniciante sobre vetores (de n-milhares) que insinua na resposta a inutilidade dos vetores num exercício dos vetores. c'11 - gcc'11.4 a.c: Na função ‘main’: a.c:9:10: erro: comparação entre ponteiro e inteiro 9 | soma == soma + n; | ^~ a.c:9:10: erro: instrução sem efeito [-Werror=unused-value] 9 | soma == soma + n; | ~~~~~^~~~~~~~~~~ a.c:13:17: erro: operandos inválidos para binário / (possuem ‘int’ e ‘int *’) 13 | media = (soma / n); | ^ | | | int * a.c:14:22: erro: formato ‘%f’ espera argumento do tipo ‘double’, mas argumento 2 tem tipo ‘int’ [-Werror=format=] 14 | printf("A media é %f.", media); | ~^ ~~~~~ | | | | | int | double | %d cc1: todos os avisos sendo tratados como erros Então moço!? A última falha é atentar contra a vida do vetor no exame de vetor! Em fim, com algumas correções, seu programinha até compila, assim: #include <stdio.h> int main () { int n= 20; int termo[n]; int i= 0; /* isto solicita os termos */ do { printf ("Insira um termo: "); scanf ("%d",&termo[i]); i= i + 1; } while (i < n); /* isto faz um somatório */ int soma= 0; i= 0; do { soma = soma + termo[i]; i= i + 1; } while (i < n); /* isto faz uma média */ float media= (float)soma / n; printf("A media é %f\n",media); return 0; } /* isto retorna ao sistema operacional rsrsrs :D */
  4. @Samuel Fortes Brasil Boa Terde! Ocorre por razão da instrução, seu comportamento e a ordem dos comandos no seu bloco de comando. Esses comandos e sua ordem exata estão escritos logo abaixo: ordem. comandos 0. repita 1. Escreval 2. contador <- contador + 1 3. Ate (contador = 10) Acompanhe o ritual comigo… O que acontece depois do incremento (2), vem a expressão lógica (3), a sua condição é? Até 10, ou seja… 1. escreve 9 2. adiciona 1 3.10 é igual a 10 pare A propósito, se queres a simulação até 10, incluso; expresse desta maneira: Algoritmo "Conte Ate 10 (inclusive)" var contador: Inteiro Inicio contador <- 0 repita contador <- contador + 1 Escreval(contador) Ate (contador = 10) Fimalgoritmo
  5. Hoje tenho uma filosofia diferente. Na C, string é um valor como texto, e não um tipo como int. Ou seja, a string “Hello W...” está para char [] da mesma maneira que 2022 está para int. Sei que parece tolice, mas, “de” e “para”, essas palavras que mudam o significado têm capacidade para cortar o raciocínio. E a pergunta foi: como 'criar' um vetor para receber varias strings? Suponho que para você existiu a opção estática, nela, declare-se o seu comprimento, depois declarem-se variáveis da definição. Deste modo, o processo ficaria um pouquinho mais documental. Assim: #include <stdio.h> typedef char Tinta [128]; int main () { Tinta paleta [132];/* Cores ... */ /* ... */ }
  6. Ansi C

    C Tirar scanf do loop

    @kgin Boa Tarde Tua expressão joga da velha não abriu. E esse exercício do jogo é de nível intermediário nas MATRIZES, sendo que essas são as únicas abstrações necessárias à solução. E MATRIZES!!!
  7. @FLASHLEGENDS Boa Dia! Disso Tem-se, simplesmente isso: int divisivel3 (int i,int j,int matriz[5][5]) { return matriz[i][j] % 3; } Ou ainda... inline int divisivel3 (int i,int j,int matriz[5][5]) { return matriz[i][j] % 3; } ... Ao avaliar a pergunta da função, ela é bem sucedida com retorno de valor 0, sendo, a propósito, apenas por curiosidade o valor na constante EXIT_SUCCESS. Por último, não notou que há uma na declaração e outra na definição a.c: Na função ‘main’: a.c:18:9: erro: declaração implícita da função ‘divisivel’; você quis dizer ‘divisivel3’? [-Wimplicit-function-declaration] 18 | if( divisivel ( i , j , matriz ) == 1 ) | ^~~~~~~~~ | divisivel3 ac:7:14: aviso: parâmetro não utilizado ‘argc’ [-Wunused-parameter] 7 | int main(int argc, char const *argv[]) | ~~~~^~~~ ac:7:32: aviso: parâmetro não utilizado ‘argv’ [-Wunused-parameter] 7 | int main(int argc, char const *argv[]) | ~~~~~~~~~~~~^~~~~~ c'11 - gcc'11.4 Compilável #include <stdio.h> int divisivel3 ( int i, int j , int matriz[5][5] ); int main () { int j , i; //Matriz com valores fixo para não fazer a leitura int matriz[5][5] = {{15,9,23,43,49}, {3,36,55,53,18}, {12,42,51,57,34}, {6,32,28,25,62}, {72,91,81,16,41} }; for(i=0; i<5; i++) for(j=0; j<5; j++) if( divisivel3 (i, j, matriz) ) // Atenção: re avaliar a pergunta printf("O Numero %3d e divisivel por 3\n",matriz [i][j]); return 0; } inline int divisivel3 ( int i, int j , int matriz[5][5] ) { return matriz[i][j] % 3; }
  8. @devair1010 Boa Noite! De fato, não precisa de um vetor para resolver esse problema. Foi um desejo que tive de momento. Minha solução é a tua solução: nela também o extremo inferior cresce a cada palpite ⇒escolha⇐ e o extremo superior diminui até que a diferença entre eles (isuperior - inferior) gera palpites próximos do número escolhido e por último ele. Obrigado!
  9. Boa Noite! ... MATRIZES É matriz na leitura, processo e saída. Sinto que existe um complô entre os editores de apontamento ou apostila das escolas e universidades furrecas, suspeito que combinaram de neutralizar ou inutilizar as matrizes nos exercícios que são das matrizes. Opinião Alguns alunos não querem usar e ousar nas matrizes a trava, suponho que não tenham consciência ou tenham medo de errar, acabam por pensar além da conta. O Problema Sem pensar muito, são 5 dados compostos de 3! É o que me diz, "3 notas de 5 alunos" ou cada aluno no programa é um dado composto de 3 notas, 3 notas é (abstração) um aluno ... Logo, Ai Está! minha opinião é outra! O contratado é: Informe as notas %i Aluno: * * * Por exemplo, nesse rascunho C'11- gcc'11.4 #include <stdio.h> #include <ctype.h> typedef float Aluno; int main () { /* solicitar a turma de 5 alunos */ Aluno turma[5] [3]= {0}; for (size_t a= 0 ; 5>a ; ++a) { int r; printf ("%s%zu%s%c","Informe as notas ",a+ 1,"º Aluno",'\n'); for (size_t n= 0 ; 3>n ; ++n) { r= getchar (); if (EOF==r) { perror ("Falha na solicitação"); a= 5; break; } if ('\n'==r) { ungetc (r,stdin); break; } if ('-'==r || ' '==r) { --n; continue; } ungetc (r,stdin); r= scanf (" %f",&turma[a][n]); if (1!=r) { getchar (); --n; } } while (EOF!=(r= getchar()) && '\n'!=r); putchar ('\n'); } printf ("%c%s%c",'\n',"Turma Notas",'\n'); for (size_t a= 0 ; 5>a ; ++a) { printf ("%zu%s",a+ 1,"º Aluno: "); for (size_t n= 0 ; 3>n ; ++n) { printf ("%.1f ",turma[a][n]); } putchar ('\n'); } /* ... */ } Sendo uma solicitação e não uma leitura, os escaneamentos terminam sempre na nova linha, de modo que cada linha é um aluno (para mim). A proposito, se fosse uma leitura, o programa ficaria preso até pegar turma. RASCUNHE UMA SOLUÇÃO SEM PENSAR MUITO! Porque pensam d+
  10. Boa Noite! Scanf meus jovens O nome completo é um composto separado por espaço em branco, certo? A função scanf argumenta com especificador '%s' e juntos correspondem a qualquer caractere que não seja espaço, OK! Use scanf!
  11. @Emerson2156547384729849 Boa Noite Sem pensar muito, basta unir os dois tipos dos diferentes tipos dos vetores e definir a matriz da união, claro que sim... declarar uma união exclusivamente para ter essa matriz, já que esse é o problema! Ou definir a matriz para o tipo que não há perda nas configurações: cuja única consequência no final é num especificador. obrigado por lê isso
  12. Sou leitor e discordo disso que você tão amargamente escreve. Entretanto, pelo menos, essa minha postagem, que foi toda desqualificada, feita de fezes, atraiu você que me proporciona diversão. Por mim, tudfo bem.
  13. Ansi C

    C Erro em calculadora C

    Concertei o daqui, que agora pelo menos compila; c'11 - gcc'11.4 #include <stdio.h> #include <stdlib.h> typedef struct valores { float x; float y; float resultado; } Valores; int calculadora (Valores *pv) { int escolha= 0; while (escolha!=5) { printf ("\n Escolha operador + opcao 1"); printf ("\n Escolha operador - opcao 2"); printf ("\n Escolha operador * opcao 3"); printf ("\n Escolha operador / opcao 4"); printf ("\n digite 5 para sair"); printf ("\n\n Escolha uma opcao: "); scanf ("%d",&escolha); } switch (escolha) { case 1: { printf("\n\n Opcao escolhida: 1 "); pv->resultado= pv->x + pv->y; } break; case 2: { printf("\n\n Opcao escolhida: 2 "); pv->resultado= pv->x - pv->y; } break; case 3: { printf("\n\n Opcao escolhida: 3 "); pv->resultado= pv->x * pv->y; } break; case 4: { printf("\n\n Opcao escolhida: 4 "); pv->resultado= pv->x / pv->y; } break; default: printf("\n\n opcao invalida"); exit (1); break; } return 0; } void captura (Valores *pv) { printf ("Forneca dois numeros."); scanf (" %f%f",&pv->x,&pv->y); } void resultado (Valores *pv) { printf ("Resultado: %f", pv->resultado); } int main (void) { Valores sv; captura (&sv); calculadora (&sv); resultado (&sv); return (0); }
  14. A expressão estava sintaticamente correta; quero dizer, apesar de sintaticamente correta para a maioria dos compiladores, esta expressão em c talvez produza resultados errados, falhos ou alertas quando submetida em outros compiladores, e depois há, hipoteticamente, usuários que a utilizem erradamente, por exemplo, entrar com letra num campo númerico. c'11 - gcc'11.4 #include <stdio.h> typedef float NUMERO; int main () { NUMERO SalarioMensal ,Dias ,Resultado; printf ("Digite o salario mensal:\n"); scanf ("%f",&SalarioMensal); printf ("Digite a quantidade de dias:\n"); scanf ("%f",&Dias); Resultado= SalarioMensal/ 365* Dias; printf("O seu decimo é :R$ %.2f\n",Resultado); } Dependendo do exercício, interessa ou não! Digitar e entrar com palavras ao invés de número, num campo numérico (salario) e logicamente, observar o programa falhar até o resultado e pensar nisso.
  15. Por exemplo, c'11 - gcc'11.4 #include <stdio.h> /* Include the header file for input and output */ #define NUMERO " %lf" #define OPERADOR " %c" #define ADICAO '+' #define SUBTRACAO '-' #define MULTIPLICACAO 'x' #define DIVISAO '/' #define RESULTADO(r) "%.2f%c",r,'\n' typedef double Numero; typedef char Operador; int main (void) { Numero esquerdo ,direito; Operador operacao; int l= scanf (NUMERO,&esquerdo); int r= scanf (NUMERO,&direito); int u= scanf (OPERADOR,&operacao); if (l!=1 || r!=1 || u!=1) { perror ("Falhou na solicitação"); return 1; } switch (operacao) { case ADICAO : esquerdo+= direito; break; case SUBTRACAO : esquerdo-= direito; break; case MULTIPLICACAO : esquerdo*= direito; break; case DIVISAO : if (direito==0.0) { printf ("%s%c","Divisão por zero",'\n'); operacao= 0; } else esquerdo/= direito; break; default: /* * Operação Inválida */ printf ("%s%c","Operador Inválido",'\n'); operacao= 0; break; } if (operacao) printf (RESULTADO(esquerdo)); return 0; } ...
  16. Bom Dia! Tem o básico de expressões lógicas, aritmética e condicionais. If else | == eq | switch | ?: ternário | scanf | printf Como Resolver ? Escanear-se o dado composto de 2 double como números, 1 char como símbolo da operação (o operador), checa-se com instruções condicionais e fluxo de controle o símbolo\sinal da operação. Deste modo, redireciona-se o programa para os comandos designados pelo símbolo conforme o enunciado no problema (do exercício). Sugerem o uso do switch para expressar o fluxo das operações.
  17. Simplesmente mais um exercício sobre vetores iniciantes das matrizes. Outro exemplo, /* declarar, definir matriz como números pseudoaleatórios */ double snumero[2][100]; size_t znumeroi= sizeof snumero/ sizeof(snumero[0]); size_t znumeroj= sizeof snumero[0]/ sizeof(snumero[0][0]); for (size_t i= 0 ; znumeroi>i ; ++i) for (size_t j= 0 ; znumeroj>j ; ++j) { snumero[i][j]= (double) 1000+ rand ()% (9999- 1000)+ 1; } /* declarar, definir os maiorais */ double smaior[znumeroj]; for (size_t j= 0 ; znumeroj>j ; ++j) smaior[j]= (snumero[0][j]>snumero[1][j])?snumero[0][j] :snumero[1][j]; /* produzir os maiorais no simulador */ int sep= 0; size_t m= 0; while (znumeroj>m) { printf ("%c%.f",sep,smaior[m]); sep= ((++m)% 10UL)?' ':'\n'; } c'11 - gcc'11.4
  18. @devair1010 |@phinky88 Boa Noite! Suponho que é um exercício sobre vetores, então, onde está o vetor? — Acredito ser por meio dum vetor que se faz isso; o programa determina tuas mentiras ao verificar quais elementos no vetor de 1 a 100 estão logicamente excluídos. É nesse mesmo vetor, que está sinalizado um elemento que simboliza o número inicialmente escolhido por você. Não sendo, a lógica permanece com 3 variáveis: os extremos e o valor escolhido pelo usuário. Deste modo, teu número estará entre os limites inferior e superior necessários aos 'palpites' aleatórios\pseudoaleatório no programa que se aproximam do número escolhido a cada ciclo e definem as mentiras: porque tudo além ou aquém dos limites é mentira.
  19. Boa Noite @pedroedumendes Esses eram alguns dos os avisos, se não todos. a.c:7:13: aviso: formato ‘%c’ espera argumento do tipo ‘char *’, mas argumento 2 tem tipo ‘char (*)[20]’ [-Wformat=] 7 | scanf("%c", &NomeNovela); | ~^ ~~~~~~~~~~~ | | | | | char (*)[20] | char * a.c:15:12: aviso: muitos argumentos para o formato [-Wformat-extra-args] 15 | printf("\nPelo que você já assistiu de", "%c", NomeNovela, "\n"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ a.c:16:12: aviso: muitos argumentos para o formato [-Wformat-extra-args] 16 | printf("\nPodemos concluir que você terminará em: ","%d", previsao, " dias"); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Teu programinha agora compila #include <stdio.h> int main (void) { int capitulos ,tempoEmDias ,totalCaps; char nomeNovela[20]; printf ("%s","Olá! Qual novela esta assistindo? "); scanf ("%19[^\n]",&nomeNovela[0]); printf ("%s","Adoro essa novela!! Qual o total de capítulos? "); scanf ("%d",&totalCaps); printf ("%s","Já está em qual capítulo? "); scanf ("%d",&capitulos); printf ("%s","Há quantos dias esta assistindo? "); scanf ("%d",&tempoEmDias); int previsao= totalCaps/ (capitulos/ tempoEmDias); printf("%s%s%c","Pelo que você já assistiu de ",nomeNovela,'\n'); printf("%s%d%s%c","Podemos concluir que você terminará em: ", previsao," dia(s)",'\n'); return 0; }
  20. @Samuel Fortes Brasil Boa Tarde! Tem relação com a expressão lógica dessa instrução. Lá, quando expressamos, por exemplo, enquanto a<b faca; isso diz ao algoritmo que pare os comandos quando a não é menor que b, por consequência, o temos 1 comando a menos. Para executar esse último comando, expressa-se a≤b Veja: Faça um teste rápido, rescreva o operador < para <=
  21. Boa Tarde Aparentimente, é mais um exercício de iteração sobre vetores das matrizes. /* definir números como pseudoaleatórios 1-10 */ int snumero[5] ,ssorteio[10]; size_t s= sizeof ssorteio/ sizeof(ssorteio[0]); for (size_t a= 0 ; s>a ; ++a) ssorteio[a]= (int) a; for (size_t a= 0 ; s>a ; ++a) { int rs= rand ()% s; int an= ssorteio[--s]; ssorteio[s]= ssorteio[rs]; ssorteio[rs]= an; } for (size_t a= 0 ; sizeof snumero/ sizeof(snumero[0])>a ; ++a) snumero[a]= ssorteio[a]; /* solicitar e checar 3 inteiros como palpites */ int spalpite[3]= {0}, check= -3; printf ("Informe 3 inteiros como palpites do sorteio? "); for (size_t a= 0 ; sizeof spalpite/ sizeof(spalpite[0])>a ; ++a) { int palpite= 0; if (scanf ("%i",&palpite)==EOF) { perror ("Falhou na solicitação do palpite"); return 1; } for (size_t a= 0 ; sizeof snumero/ sizeof(snumero[0])>a ; ++a) check+= snumero[a]==palpite; spalpite[a]= palpite; if ('\n'==getchar ()) break; } /* produzir estatus do apostador no simulador */ char sordinal[] [9]= { {"Primeiro"} , {"Segundo"} , {"Terceiro"}}; for (size_t a= 0 ; sizeof spalpite/ sizeof(spalpite[0])>a ; ++a) { printf ("%s%s",sordinal[a]," número informado pelo usuário foi: "); spalpite[a]?printf ("%d",spalpite[a]):0; putchar ('\n'); } /* ... */ if (!check) printf ("%s%c","GANHOU! Você acertou os 3 números",'\n');
  22. Aqui tua suposta matriz: #include <stdio.h> #include <stdlib.h> int main (void) { FILE *file= fopen ("grafo.csv", "w"); int linha= 5, coluna= 5; int matriz[linha] [coluna]; for (int i= 0 ; linha>i ; i++) for (int j= 0 ; coluna>j ; j++) { matriz[i] [j]= rand()% 2; matriz[j] [i]= matriz[i] [j]!=1; } for (int i= 0 ; linha>i ; i++) { for (int j= 0 ; coluna>j ; j++) { fprintf (file,"%d",matriz[i] [j]); fprintf (file,","); } fprintf(file,"\n"); } for (int i= 0 ; linha>i ; i++) { for (int j= 0 ; coluna>j ; j++) { printf ("%d",matriz[i] [j]); printf (","); } printf ("\n"); } fclose (file); return 0; }
  23. Desconheço, mas, talvez em circuito, /* calcular suas vogais */ int a ,e ,i ,o ,u; a= e= i= o= u= 0; for (size_t ai= 0 ; lin>ai ; ++ai) for (size_t aj= 0 ; col>aj ; ++aj) { int r= tolower (A[ai][aj]); a+= (r=='a'); e+= (r=='e'); i+= (r=='i'); o+= (r=='o'); u+= (r=='u'); } /* produzir soma no simulador */ int soma= a+ e+ i+ o+ u; printf ("%s%d%c","soma é: ",soma,'\n');
  24. Boa Dia! Uma análise Tamanho ¹ Não existe 'o tamanho de uma matriz' em linguagem c, o que acertadamente existem são abstrações como o tamanho de uma matriz, são configurações limitadas de modo que é um risco defina-las com base exclusivamente no que o usuário digita. Aleatório ² Já na declaração ela é aleatória, haja vista que supostamente os seus usuários declaram o seu tamanho com base em critério nenhum: que depende das circunstâncias, casualmente, cujo a definição está num espaço da memória repleta (ou não) de configurações binárias acidentais. Logo, sendo um exercício para iniciante das matrizes, e a partir da solução no post#2 Tenho por exemplo, c'11 - gcc'11.4 /* ... */ #include <ctype.h> /* ... tolower () */ #include <stdlib.h>/* ... rand () */ #include <stdio.h> /* Include the header file for input and output */ int main (void) { /* ler e declarar tamanho */ size_t col= 1; (void) scanf ("%zu",&col); size_t lin= 1; (void) scanf ("%zu",&lin); size_t const LIMIT= 100UL; /* definir e atribuir cordas pseudoaleatórias */ char A[lin%= LIMIT][col%= LIMIT]; printf ("%s%zu%c%zu%c","... declarou-se: ",lin,'x',col,'\n'); for (size_t ai= 0 ; lin>ai ; ++ai) for (size_t aj= 0 ; col>aj ; ++aj) { int num= rand ()% 26+ 65; A[ai][aj]= (char) num; } /* calcular suas vogais */ int a ,e ,i ,o ,u ,outros= 0; a= e= i= o= u= 0; for (size_t ai= 0 ; lin>ai ; ++ai) for (size_t aj= 0 ; col>aj ; ++aj) { int r= tolower (A[ai][aj]); switch (r) { case'a': ++a; break; case'e': ++e; break; case'i': ++i; break; case'o': ++o; break; case'u': ++u; break; default: ++outros; break; }} /* produzir soma no simulador */ int soma= a+ e+ i+ o+ u; printf ("%s%d%c","soma é: ",soma,'\n'); return 0; } e talvez ainda, /* calcular suas vogais */ int h[255]= {0}; for (size_t ai= 0 ; lin>ai ; ++ai) for (size_t aj= 0 ; col>aj ; ++aj) ++h[tolower (A[ai][aj])]; /* produzir soma no simulador */ int soma= h['a']+ h['e']+ h['i']+ h['o']+ h['u']; printf ("%s%d%c","soma é: ",soma,'\n'); ...
  25. Boa Dia! Como diz post #2 e eu reforço: suas variáveis `maior` e `menor` são do tipo int; e a `numeros` de tipo char[], que, com a extração, faz de seus valores aleatórios uma corda aleatória. Resolve: Declare tipo int em `numeros` e expresse a leitura num laço.

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!