Ir ao conteúdo
  • Cadastre-se

danieltm64

Membro Pleno
  • Total de itens

    23
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

13

1 Seguidor

Informações gerais

  • Cidade e Estado
    Belo Horizonte/MG
  • Sexo
    Masculino
  1. danieltm64

    Matrizes

    Olá Brunassilvas, Antes de escrever código, você deve ter uma ideia clara do algoritmo que você vai implementar. Qual algoritmo você está usando? Qual foi a estratégia geral que você tinha em mente com esse código? Uma forma de resolver esse problema seria criar dois vetores cujos tamanhos são iguais ao número de elementos na matriz, e em um vetor você guarda os elementos encontrados na matriz, e no outro vetor você coloca o número de vezes que aquele elemento foi encontrado na matriz. Assim, quando você for percorrer a matriz, basta você verificar se o elemento atual j
  2. A função que você está tendo problemas é essa:? /* Percorre todos os campos da lista e imprime ate o ponteiro proximo chegar em NULL. */ void edita_dados(Dados *dados, int item, char *nome, int idade) { int i = 0; while(dados != NULL && i <= item) { dados = dados->proximo; } if(dados != NULL && i == item) { strcpy(dados->nome,nome); dados->idade = idade; } printf("Editado com sucesso.\n"); printf("Pressione uma tecla para continuar.\n"); getch(); } Ve
  3. Michel, você poderia mencionar os títulos desses livros, e as edições deles? Assim ficaria mais fácil de esclarecer a sua dúvida, mas já adianto que se o livro não usa std:: e nem using namespace std; em lugar algum (especialmente em código), então provavelmente é bem antigo.
  4. Faça um sistema operacional quântico. lol Zoeiras a parte, uma ideia legal seria um programa gráfico que te mostra todos os detalhes de um repositório local Git. Seu programa executa os comandos Git e mostra na janela gráfica quais arquivos foram modificados, staged, etc. Ou então um programa que monta frases aleatórias. Tipo, frases mesmo, com estrutura, coesão, gramática correta e tal, mas com conteúdo completamente aleatório. Seria engraçado.
  5. Troque int main(void); por int main(void) ou seja, remova o ponto-e-vírgula. E no for interno, troque matriz[j] por matriz[i][j] mas o programa ainda imprimirá bobagem, porque você tem que preencher a matriz, senão ele imprime o que tiver na memória em que a matriz estiver armazenada.
  6. E qual é a mensagem de erro?
  7. Sim, você pode programar para Android em C++. O SDK do Android tem o tal do Android NDK (Native Development Kit, ou "Kit de Desenvolvimento Nativo"), que permite compilar código C++ (ou qualquer outra linguagem nativa) e rodá-lo no Android. O Qt é uma framework enorme em C++ que aproveita o Android NDK e torna todo o processo de desenvolvimento bem fácil, além de suportar diversas outras plataformas. Com Qt, você pode programar sua aplicação em C++ e basta compilá-la uma vez para cada plataforma em que você deseja que seu programa rode. Usando o Qt, você escreve seu código uma vez
  8. Vamos lá. O nome que você escolheu para a sua classe não é ideal. Uma classe representa uma "coisa" ou "entidade", enquanto um método representa uma "ação" ou "operação". Pense em uma classe como um substantivo e pense em um método como um verbo. O nome que você escolher deve caber nesse formato. Então em vez de chamar sua classe de MonitorarPasta, talvez o nome MonitoradorDePasta seja melhor. Já os nomes que você escolheu para os métodos da classe MonitorarPasta não seguem o estilo de código convencional do C#. Em C#, nome de método normalmente começa com letra maiúscu
  9. Olá jpsan, Filter é uma propriedade, e não um método. Logo, em vez disso: watcher.Filter("*.jpg"); escreva isso: watcher.Filter = "*.jpg"; Além disso, você só quer escrever watcher.EnableRaisingEvents = true; depois de ter configurado o watcher por completo, senão você começa a monitorar um diretório antes de ter definido o tipo de arquivo a monitorar e os métodos para chamar ao detectar alguma mudança no diretório monitorado. Percebi uma coisa estranha no seu código. Veja: static void watcher_Created(object sender, FileSystemEventArgs e) { if (!Fi
  10. Olá yasminalves, Você declara uma matriz 5 por 5 e acessa ela em um laço for. Quando o laço for começa assim: for(i=1;i<5;i++) você está dizendo que a variável i vai variar de 1 a 4, pois assim que i < 5 deixar de ser verdadeiro, o laço acaba. Você provavelmente quis dizer assim: for(i=0;i<5;i++) pois assim, o i vai variar de 0 a 4, ou seja, o laço vai rodar 5 iterações. Faça a mesma alteração para o outro laço for, fica assim: for(j=0;j<5;j++) Mais adiante, você acessa a matriz com um único índice, mas a sua matriz tem duas dimensões. Você acessa
  11. Olá Vitor, A linha de código arq.seekp(9, ios::end); pula para a décima posição a partir do fim, não do início. Tenta assim: arq.seekp(9, ios::beg); A linha de código acima pula para a décima posição a partir do início do arquivo.
  12. Olá, Philipe. Apenas para recordar, uma lista simplesmente encadeada é uma lista encadeada em que cada nodo contém, além do dado a ser armazenado, um apontador para o nodo seguinte, enquanto uma lista duplamente encadeada é uma lista encadeada em que cada nodo contém, além do dado a ser armazenado, dois apontadores: um para o nodo anterior e outro para o nodo seguinte. Uma multi-lista é uma lista encadeada em que cada nodo contém múltiplos apontadores. Uma lista duplamente encadeada é um caso particular de multi-lista, mas o termo ‘multi-lista’ é comumente usado para re
  13. Olá, eliumoraes. A linha setbuf(stdin, NULL); basicamente desassocia a entrada padrão do seu programa. você não quer isso, tire essa linha do seu código. Agora falta trocar isso: scanf("%[^\n]s",k); por isso: scanf(" %[^\n]s",k); Não tenho certeza quanto a isso, mas acredito que colocando esse espaço adicional na string passada para scanf, você permite que haja espaço entre as entradas do usuário. Se você não acrescentar esse espaço, o programa não vai ler entrada do teclado após o usuário entrar o valor de p (verifique por conta própria). Com essas
  14. Olá, Vitor. Primeiro, note que você está alocando espaço o suficiente para o arquivo inteiro, sendo que você acaba gravando apenas a metade. A primeira mudança é então trocar isso: buffer = (char*) malloc (sizeof(char)*(lSize)); por isso: buffer = (char*) malloc (sizeof(char)*(lHalfSize)); Depois, perceba que você especifica sizeof(int) como o tamanho de um elemento a ser lido/escrito nas funções fread/fwrite, sendo que você aloca buffer com sizeof(char). Além disso, você especifica sizeof(buffer) como o número de elementos a serem lidos/escritos, porém isso apenas ca
  15. Olá, Roger. A variável inteiro estava ficando tão grande que dava overflow, ou seja, ficava tão grande que voltava pra zero. Além disso, seu código imprime a variável inteiro (que é do tipo unsigned int) com %d na string que você passa para a função printf, e %d é usado para imprimir valores do tipo int (com sinal), e é por isso que o seu programa imprime valores negativos. Para resolver esses dois problemas, troque isso: unsigned int inteiro = 0; por isso: unsigned long long int inteiro = 0; para que a variável possa armazenar números maiores. Além disso, troque:

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

Aprenda a ler resistores e capacitores

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!