-
Posts
3.563 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
Tudo que Midori postou
-
A dica do Mauro é bem simples de ser aplicada. Ele criou uma string, onde o terceiro índice deverá receber o valor (char) da precisão desejada.
-
Qual é o problema?
-
Que tipo de erro?
-
Sim, qual é a dúvida?
-
Qual é o problema?
-
Esse exercício pode ser facilmente resolvido multiplicando uma variável auxiliar por 2, dentro de um loop, a cada ciclo Declare um vetor de char para armazenar os bits. A operação da variável 'b' já retorna os valores, potências de 2, que serão multiplicados pelos bits digitados pelo usuário. char bits[9]; int i, decimal = 0, b = 1; printf("bits: "); scanf("%s", bits); for(i = strlen(bits) - 1; i >= 0; i--){ decimal += b * (bits[i] - '0'); b *= 2; } printf("%s = %d\n", bits, decimal);Assim fica fácil inclusive aumentar o número de bits a serem apresentadosPor exemplo, se quiser 16 bits. char bits[17]long decimal......
-
Ronimar, vamos pegar como exemplo o valor 9876. A posição correspondente de cada algarísmo determina se é unidade, dezena, centena, unidade de milhar, etc Como o nosso sistema numérico é base dez, contamos de 10 em 10 e cada uma dessas posições (da direita para a esquerda) é sempre 10 vezes maior que a anterior. Logo, temos que: 9876 = (9 * 1000) + (8 * 100) + (7 * 10) + 6 E se você usar potência de 10 fica 9*10^3 + 8*10^2 + 7*10^1 + 6*10^0 Portanto a operação que o código faz é essa: 9876 = (9 * 1000) + (8 * 100) + (7 * 10) + 6 + 4321 = (4 * 1000) + (3 * 100) + (2 * 10) + 1 ------------------------------------------------ 14197 = (13 * 1000) + (11 * 100) + (9 * 10) + 7
-
No primeiro for, altere i<3 para i<4. Igual está no segundo for Além disso você deve atribuir 1 a variável aux (aux=1) e não zero.
-
use a função sprintf
-
Uma forma simples de resolver é multiplicando a soma dos índices pela posição de unidade, dezena, etc for(i = 3; i >= 0; i--){ switch(i){ case 3: aux = 1;break; case 2: aux = 10;break; case 1: aux = 100;break; case 0: aux = 1000;break; } soma += (vet1[i] + vet2[i]) * aux; O código pode mais ser refinado, iniciando aux com 1 e deixando o loop assim apenas for(i = 3; i >= 0; i--){ soma += (vet1[i] + vet2[i]) * aux; aux *= 10; }
-
Para remover o nome do vetor, você pode usar um loop que vai da posição desejada até número de elementos - 1 Por exemplo for(i = posicao; i < 10 - 1; i++){ strcpy(aluno[i], aluno[i + 1]);}strcpy(aluno[i], "");
-
Você deve criar uma função com uma variável auxiliar para contar o número de ocorrencias int conta_num(int matriz[][10], int num){ int aux;...Aí é só comparar num com os valores da matriz e incrementar aux... if(matriz[i][j] == num) aux++;
-
O ideal é procurar uma função compatível ou semelhante do próprio code blocks. Já tentou usar kbhit?
-
Compilei esse código normalmente no Turbo C++. O blocks deve ter removido o suporte para essa função.
-
O protótipo dessa função está em dos.h Porque implementar?
-
É que no scanf do TPS você usou %f no primeiro parâmetro, quando deveria ser %d já que se trata de um inteiro
-
Consigo cadastrar char de até 7 caracteres, mais que isso dá erro. Por que?
Midori respondeu ao tópico de Kleber Lauton em C/C#/C++
Não faz sentido usar sizeof(60). Dependendo da implementação do compilador, ele vai retornar o tamanho de um inteiro que pode ser 2 ou 4 bytes. Se quiser alocar espaço para 60 caracteres, basta passar o valor sem sizeof. -
É path, ou seja, caminho do diretório... E não pack. Tente reinstalar.
-
Qual compilador você está usando? Ele não está encontrado iostream, veja se o path está configurado corretamente.
-
No seu if-else tem um void loop() que não devia estar lá. Além disso esses ifs estão bem confusos. Faça uma revisão nessa parte e corrija os blocos (ao abir/fechar chaves). if(..){}else{}
-
Quem usa o dev-c++ vai poder te ajudar melhor, mas tente procurar uma opção para criar um projeto console. E não simpĺesmente acrescentar um novo .c file, se é que você está tentando fazer isso... Por exemplo, deve ter alguma opção assim: File > New Project > Console Application
-
Sintaticamente está correto, faltou apenas acrescentar o include referente a função getch.
-
O primeiro você pode resolver com um loop, usando i como contador. Aí o seu contador vai de 0 até i < x. Declare as outras variáveis sendo int b = 1. Agora fica fácil resolver, dentro do loop: b = b * a. De qualquer forma, sugiro que você procure um livro sobre lógica de programação para aprender a programar.
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