Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.

Pesquisar na Comunidade

Mostrando resultados para as tags ''C++''.



Mais opções de pesquisa

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Categorias

  • Armazenamento
  • Áudio
  • Energia
  • Entrada
  • Feiras e Eventos
  • Gabinetes
  • Memória
  • Museu
  • Placas-mãe
  • Portáteis
  • Processadores
  • Programas
  • Rádio CdH
  • Redes
  • Refrigeração
  • Smartphones
  • Tablets
  • Vídeo
  • Outros

Categorias

  • Blog

Categorias

  • Armazenamento
  • Áudio
  • Câmeras
  • Computadores
  • Consoles
  • Eletrônicos
  • Energia
  • Entrada
  • Gabinetes
  • Impressão
  • Jogos
  • Memória
  • Placas-mãe
  • Portáteis
  • Processadores
  • Programas
  • Redes
  • Refrigeração
  • Smartphones
  • Tablets
  • Vídeo
  • Outros

Categorias

  • Livros disponíveis
  • Livros esgotados

Categorias

  • Cursos

Fóruns

  • Mensagens do Clube do Hardware
    • Regras gerais
    • Boletins do Clube do Hardware
    • Notícias da administração
  • Hardware
    • Recomendações de computadores
    • Placas de vídeo
    • Placas-mãe e chipsets
    • Processadores
    • Problemas de gargalo e desempenho
    • Memórias
    • Armazenamento
    • Refrigeração e superaquecimento
    • Fontes e energia
    • Gabinetes e casemods
    • Placas de som e áudio on-board
    • Periféricos
    • Mac
    • Overclock
    • Hardware - outros
  • Computação móvel
    • Notebooks
    • Tablets
    • Smartphones e apps
  • Redes e Internet
    • Redes e Internet
    • Hospedagem de sites e registro de domínios
  • Segurança da informação
    • Remoção de malware
    • Dúvidas sobre invasões e infecções
    • Programas de proteção
  • Programação e desenvolvimento
    • Java
    • C/C#/C++
    • Pascal/Delphi
    • .NET
    • Bancos de dados
    • Programação web
    • Programação - iniciantes
    • Programação de microcontroladores
    • Programação - outros
  • Software
    • Jogos
    • Pacotes de escritório
    • Computação distribuída (Folding@Home, Bitcoin etc.)
    • Virtualização
    • Design, animação e tratamento de imagens
    • Edição de áudio e vídeo
    • Programas
  • Sistemas Operacionais
    • Recomendação de sistemas operacionais
    • Windows
    • GNU/Linux, BSD, Unix-like e software livre
    • Mac OS
  • Eletrônicos
    • Equipamentos de som, home theaters e gravadores de mesa
    • Televisores e projetores
    • Câmeras e filmadoras
    • Players portáteis
    • Consoles (videogames)
    • GPS
    • Telefonia fixa
    • Eletrônica
    • Retrocomputação
  • Outros
    • Recomendações de serviços e lojas
    • Preços e promoções
    • Notícias
    • Bolsa de empregos, certificações e mercado de trabalho
    • "Causos"
    • Encontros de usuários
    • Feira do Rolo
  • Clube do Hardware
    • Comentários, elogios, críticas, sugestões e questões sobre o Clube do Hardware
    • Comentários de artigos
    • Fórum para testes de funcionalidades

Categorias

  • Hardware
  • Redes
  • Eletrônica
  • Sistemas operacionais

Encontrado 346 registros

  1. Olá pessoal, estou com dificuldade para resolver uma questão de c++, com matriz, e gostaria de saber se teria como algum me ajudar. Eu cheguei a montar um algoritmo, mas dá erro quando tento executar, segue a pergunta e o que eu consegui fazer: '' programa multiplica_matrizes; matriz mat1, mat2, mat3; inteiro linha, coluna, i, acumula; "leia mat1"; "leia mat2"; "verifique se mat1 é compativel com mat2"; para linha de 1 até "numero de linhas de mat1" faça para coluna de 1 até "numero de colunas de mat2" faça acumula=0; para i de 1 até "numero de colunas de mat1" faça acumula=acumula+mat1[linha]*mat2[coluna]; fimpara; mat3[linha][coluna]=acumula; fimpara; fimpara; imprima mat3; fim programa;'' #include <stdio.h> #include <stdlib.h> int main(){ int M[3][3]; int V[3]; int i,j; for(i=1; i<=3; i++) { for(j=1; j<=3; j++){ scanf("%d\n", M[i][j]); }; }; for(j=1; j<=3; j++) { V[j]=0; for(i=1; i<=3; i++) V[j] = V[j] + M[i][j]; }; for(j=1; j<=3; j++) printf("%d", V[j]); system("pause"); return 0; }
  2. #include <iostream> #include <cstring> using namespace std; int main() { int x; char palavra[21]; cin >> palavra; x = strlen(palavra) // Até aqui tudo bem porém não sei como fazer no if pra veriricar a palavra toda, eu sei q o último caractere tem que ser igual ao primeiro tipo, palavra[x-1] (último caractere) == palavra[0] (primeiro caractere), mas como faço pra verificar o resto? Ou eu devo inverter a palavra que entrar e depois verificar se ela é igual a quando ela entrou? se for assim me ensinem como faço pra inverter pfv. if( ) { cout << "É um Palíndromo."; } else { cout << "Não é um Palíndromo."; } return 0; } Boa noite pessoal! Eu tenho que fazer um programa em C++ que receba como entrada um nome, o programa dará como saída se o nome digitado é um palíndromo ou não. Palíndromos são aquelas palavras que você consegue ler de trás pra frente tipo OMO, ELE, ARARA. Eu já sei um pouco como se trabalha com strings, mas não estou conseguindo fazer isso. Me ajudem. Obrigado desde já.
  3. usei comando Sleep no bc5 e funcionou. eu estava o getch() que as vezes falha e também o system("Pause")
  4. Pessoal, Boa Noite Preciso de ajuda em programinha que estou fazendo pra faculdade sobre lista encadeada simples. Preciso criar uma função pesquisar que receba um numero por digitação, pesquisa-lo na lista e informar, qual é o seu endereço e em que lugar se encontra na lista. Já tentei de todas as formas e não consegui, alguém pode me ajudar ? Segue código : #include <iostream> #include <stdlib.h> #include <locale.h> using namespace std; struct lista //estrutura { int elemento; //item armazenado struct lista *proximo; //ender. próximo item lista } *inicio, *fim, *novo; //ender. primeiro e último item int qtde; //quantidade de itens da lista // protótipos das funções void inserir ( ); void remover ( ); void listar ( ); void inserirInicio ( ); void inserirMeio ( ); void inserirFim ( ); void pesquisar( ); void atualizar ( ); void esvaziar ( ); int main( ) { setlocale (LC_ALL, "Portuguese"); //permite acentuação em portugues int opcao; inicio = NULL; //inicializa com endereço nulo fim = NULL; //inicializa com endereço nulo qtde = 0; while ( opcao != 7 ) {cout << "\n\n\n Lista Encadeada Simples - Escolha uma opção"; cout << "\n 1 - Inserir um elemento na lista"; cout << "\n 2 - Remover um elemento da lista"; cout << "\n 3 - Listar os elementos da lista"; cout << "\n 4 - Pesquisar numero na lista"; cout << "\n 5 - Atualizar função"; cout << "\n 6 - Esvaziar lista:"; cout << "\n 7- Sair do programa\n"; cin >> opcao; switch (opcao) {case 1: inserir ( ); break; case 2: remover ( ); break; case 3: listar ( ); break; case 4: pesquisar();break; case 7: break; default: cout << "\n Opção inválida "; } } } void inserir ( ) { int opcao; novo = (struct lista*) malloc (sizeof (struct lista)); cout <<"\nDigite o valor do elemento a ser inserido na lista: "; cin>> novo->elemento; //armazena o valor no endereço em novo if (inicio == NULL) //lista esta vazia? {novo->proximo = NULL; //não existe próximo inicio = novo; //endereço do primeiro item da lista fim = novo; //endereço do último item da lista qtde++; //mais um item inserido na lista cout << "\n Valor inserido com sucesso"; return; } while ( opcao != 4 ) {cout << "\n\n\n Escolha um tipo de inserção"; cout << "\n 1 - Inserir um elemento no inicio"; cout << "\n 2 - Inserir um elemento no meio"; cout << "\n 3 - Inserir um elemento no final"; cout << "\n 4 – Sair\n"; cin >> opcao; switch (opcao) {case 1: inserirInicio ( ); break; case 2: inserirMeio ( ); break; case 3: inserirFim ( ); break; case 4: break; default: cout << "\n Opção invalida "; } } return; } void inserirInicio ( ) { novo->proximo = inicio; //o primeiro será o próximo inicio = novo; //o novo será o primeiro qtde++; //mais um item inserido na lista cout << "\n Valor inserido com sucesso"; } void inserirMeio ( ) { int posicao, cont; struct lista *aux, *ant; cout <<"\nDigite a posição na lista para a inserção de meio: "; cin>> posicao; if (posicao == 1 || posicao > qtde) {cout << "\nEsta posição não está no meio da lista"; return; } ant = inicio; //salva o ender. primeiro da lista aux = inicio->proximo; //salva o ender. segundo da lista for (cont=2;cont<posicao; cont++) //enquanto não for posição escolhida {ant = aux; //salva endereço atual em ant aux = aux->proximo; //endereço do próximo da lista em aux } //insere o novo elemento entre ant e aux ant->proximo = novo; //novo: próximo do anterior novo->proximo = aux; //atual: próximo após novo qtde++; //mais um item inserido na lista cout << "\n Valor inserido com sucesso"; } void inserirFim ( ) { novo->proximo = NULL; //será o último da lista fim->proximo = novo; //atualiza quem era o último fim = novo; // atualiza endereço do último qtde++; //mais um item inserido na lista cout << "\n Valor inserido com sucesso"; } void remover ( ) { struct lista *aux, *ant; int valor; if (inicio == NULL) { cout <<"\n Lista vazia"; return; } cout <<"\nDigite o valor a ser removido da lista: "; cin>> valor; //verifica se o valor a ser removido é o primeiro da lista if (inicio ->elemento == valor) {aux = inicio; //salva endereço do primeiro inicio = inicio->proximo; //recebe ender. do segundo free (aux); //libera ender. do item removido qtde--; //menos um item na lista if (qtde == 0) fim = NULL; //lista vazia cout << "\n Valor removido com sucesso"; return; } //verifica se o valor se encontre entre os demais da lista ant = inicio; //salva ender. primeiro da lista aux = inicio->proximo; //salva ender. segundo da lista while (aux) // enquanto endereço valido {if (aux->elemento == valor) {ant->proximo = aux->proximo; //atualiza endereços free(aux); //libera o ender. item removido qtde--; //menos um item na lista if (qtde == 0) fim = NULL; //lista vazia cout << "\n Valor removido com sucesso"; return; } else {ant = aux; //salva endereço atual em ant aux = aux->proximo; //endereço do próximo da lista } } cout << "\n Valor informado não foi encontrado na lista"; } void listar ( ) { struct lista *aux; if (inicio == NULL) { cout <<"\n Lista vazia"; return; } aux = inicio; //endereço primeiro da lista cout << "\nRelação de itens contidos na lista encadeada\n"; while (aux) //endereço valido ? {cout << "\n"<< aux->elemento; aux = aux->proximo; //endereço do próximo da lista } } void pesquisar () { int num,valor, i=0; struct lista *aux; if (inicio == NULL) { cout <<"\n Lista vazia"; return; } cout <<"\n Digite o valor a ser pesquisado na lista:"; cin>> valor; aux=inicio; while(aux!= NULL) if(aux->elemento == valor) aux= aux->proximo; cout<<"\n a posição é"<<aux->proximo; }
  5. Olá pessoal, estou com uma dificuldade em C é o seguinte, estou fazendo um trabalho da faculdade que tenho que desenvolver um programa para transformar numeros decimais em ponto flutuantes, e vice e versa, mas eu nao estou conseguindo isolar somente o numero após a virgula do float, por exemplo 1,625 eu nao estou conseguindo pegar somente o 0,625. alguem pode me ajudar.
  6. Olá pessoal, estou inciando uma disciplina em C++ e estou montando um jogo de xadrez, eu já consegui montar um tabuleiro com as peças, alguém poderia me dizer como eu faço para movimentar as peças, usando 3 arquivos, main.c para a função main, onde ira chamar as funções, xadrez.h header que contenha as assinaturas que vai ser adicionado ao arquivo main, xadrez.c contendo a implementação das funções. segue a parte que eu já fiz: #include <stdio.h> #define TAM_TABULEIRO 8 int main(){ char tabuleiro[TAM_TABULEIRO][TAM_TABULEIRO]; for (int i=0;i<TAM_TABULEIRO;i++){ for (int j=0;j<TAM_TABULEIRO;j++){ tabuleiro[j]='.'; } } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[1]='p'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][0]='t'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][1]='c'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][2]='b'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][3]='d'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][4]='r'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][5]='b'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][6]='c'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[0][7]='t'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[6]='P'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][0]='T'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][1]='C'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][2]='B'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][3]='D'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][4]='R'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][5]='B'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][6]='C'; } for(int i=0;i<TAM_TABULEIRO;i++){ tabuleiro[7][7]='T'; } for (int i=0;i<TAM_TABULEIRO;i++){ printf("\n"); for (int j=0;j<TAM_TABULEIRO;j++){ printf(" %c",tabuleiro[j]); } } }
  7. este exercicio caiu na minha prova de c++ : Crie um programa em que o usuário digite 2 valores numéricos inteiros, e depois insira qual operação matemática ele quer realizar. Para escolher a operação matemática, o usuário deve digitar "som", "sub", "div" ou "mult". Caso o usuário digite "som", o programa deve mostrar a soma dos valores. Caso digite "sub", o programa deve mostrar a subtração destes valores. Caso digite "div", o programa deve mostrar a divisão destes programas. Caso o usuário digite "mult", o programa deve mostrar a multiplicação destes valores. eis a minha resposta: #include <iostream> #include <stdlib.h> using namespace std; int main(){ int x; int y; int oper; float som; int sub, mult, div; cout << "Digite um valor para x: "; cin >> x; cout << "Digite um valor para y: "; cin >> y; cout << "Se voce for somar digite som, se for subtrair digite sub, se for dividir, digite div, se for multipicar digite mult: "; cin >> oper; if (oper = som) { cout << x + y; } if(oper = sub) { cout << x - y; } if(oper = mult) { cout << x * y; } if(oper =div) { cout << x / y; } } não consigo resolver, creio que o erro está nas variáveis que estou atribuindo mas não consigo por favor me ajudem
  8. Olá, estou fazendo um código de votação e no começo dele eu peço para que o usuário digite um número de título de eleitor, o programa é baseado no Sistema eleitoral brasileiro, então é necessário que o usuário digite apenas 12 dígitos (nem mais, nem menos). Existe alguma biblioteca ou função que faça um limite de dados digitados do usuário? adicionado 5 minutos depois O código está assim: #include <cctype> int main(){ int v=7,depEstAnaR=0, depEstAnaG=0, depEstAdal=0, vn=0, vb=0, titulo=0, depFedAna=0, depFedPau=0, GovMaia=0, GovGen=0, GovSel=0,SenGut=0, SenFer=0,PresMae=0, PresAnt=0, PresLis=0, Mulher=0, Homem=0; setlocale(LC_ALL,""); printf("Seja bem vindo, inicie a sua votação!\n Digite seu titulo:"); scanf("%d", &titulo); do{ printf("\n\nDeputado Estadual:\n 51-Ana Rita Pacheco\n 34-Ana Guilherme\n 11-Adalberto Campos\n 10-Voto Nulo\n 15-Voto Branco"); printf("\nDigite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v){ case 0: printf("Votação encerrada!"); break; case 51: depEstAnaR=depEstAnaR+1; Mulher=Mulher+1; printf("Ana Rita Pacheco. Voto registrado!"); break; case 34: depEstAnaG=depEstAnaG+1; Mulher=Mulher+1; printf("Ana Guilherme. Voto registrado!"); break; case 11: depEstAdal=depEstAdal+1; Homem=Homem+1; printf("Adalberto Campos. Voto registrado!"); break; case 10: vn=vn+1; printf("Voto Nulo registrado!"); break; case 15: vb=vb+1; printf("Voto Branco registrado!"); break; default: printf("OPCAO INVALIDA. Digite algo válido!"); } } while(v!=0 && v!=51 && v!=34 && v!=11 && v!=10 && v!=15); do{ printf("\n\nDeputado Federal:\n56-Ana Vitória\n33-Paulo Guilherme\n20-Voto Nulo\n25-Voto Branco"); printf("\nDigite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v){ case 56: depFedAna=depFedAna+1; Mulher=Mulher+1; printf("Ana Vitória. Voto registrado!"); break; case 33: depFedPau=depFedPau+1; Homem=Homem+1; printf("Paulo Guilherme. Voto registrado!"); break; case 20: vn=vn+1; printf("Voto Nulo registrado!"); break; case 25: vb=vb+1; printf("Voto Branco registrado!"); default: printf("OPCAO INVALIDA. Digite algo válido!"); break;} } while(v!=56 && v!=33 && v!=20 && v!=25); do{ printf("\n\nGovernador:\n38-Maia da Ana\n40-Gentil\n18-Selma Silva\n30-Voto Nulo\n35-Voto Branco"); printf("\nDigite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v){ case 38: GovMaia=GovMaia+1; Mulher=Mulher+1; printf("Maia da Ana. Voto registrado!"); break; case 40: GovGen=GovGen+1; Homem=Homem+1; printf("Gentil. Voto registrado!"); break; case 18: GovSel=GovSel+1; Mulher=Mulher+1; printf("Selma Silva. Voto registrado!"); break; case 30: vn=vn+1; printf("Voto Nulo registrado!"); break; case 35: vb=vb+1; printf("Voto Branco registrado!"); break; default: printf("OPCAO INVALIDA. Digite algo válido!"); break;} } while(v!=38 && v!=40 && v!=18 && v!=30 && v!=35); do{ printf("\n\nSenador:\n04-Gutemberg Silva\n67-Fernando Fernandes\n45-Voto Nulo\n50-Voto Branco"); printf("\nDigite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v){ case 04: SenGut=SenGut+1; Homem=Homem+1; printf("Gutemberg Silva. Voto registrado!"); break; case 67: SenFer=SenFer+1; Homem=Homem+1; printf("Fernando Fernandes. Voto registrado!"); break; case 45: vn=vn+1; printf("Voto Nulo registrado!"); break; case 50: vb=vb+1; printf("Voto Branco registrado!"); break; default: printf("OPCAO INVALIDA. Digite algo válido!"); break;} } while(v!=04 && v!=67 && v!=45 && v!=45 && v!=50); do{ printf("\n\nPresidente:\n17-Maeli Gente Boa\n22-Antônio do Brasil\n31-Lissandro Progresso\n55-Voto Nulo\n60-Voto Branco"); printf("\nDigite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v){ case 17: PresMae=PresMae+1; Mulher=Mulher+1; printf("Maeli Gente Boa. Voto registrado!"); break; case 22: PresAnt=PresAnt+1; Homem=Homem+1; printf("Antônio do Brasil. Voto registrado!"); break; case 31: PresLis=PresLis+1; Homem=Homem+1; printf("Lissandro Progresso. Voto registrado!"); break; case 55: vn=vn+1; printf("Voto Nulo registrado!"); break; case 60: vb=vb+1; printf("Voto Branco registrado!"); break; default: printf("OPCAO INVALIDA. Digite algo válido!"); break;} } while(v!=17 && v!=22 && v!=31 && v!=55 && v!=60); printf("Resultados de Deputado Estadual:\n Ana Rita Pacheco\t% i\n Ana Guilherme\t %i\n Adalberto\t %i\n Votos Nulos\t %i\n Voto Branco\t %i\n",depEstAnaR,depEstAnaG,depEstAdal,vn,vb); return 0; }
  9. Bom dia, estou fazendo um trabalho para a faculdade onde eu preciso passar uma matriz para uma função, no trabalho o professor especifica que eu tenho que trabalhar como um projeto, e também tenho que separa o arquivo principal (main) do de funções. Vou deixar meu projeto inteiro para download. Desde já agradeço qualquer um que se disponha a ajudar. trabalho.rar
  10. Galera eu estou com um problema, eu preciso fazer uma votação e fiz tudo em switch case, ela está correta porém quando voto em um número que não seja dos candidatos ele para o switch e continua o código que está abaixo dele. Preciso fazer o default repetir o switch, pois ao votar um número que não é de nenhum candidato ele continua o código que está fora do switch. Olhem como está o código: while(v!=0) { printf("\n\nDeputado Estadual:\n 51-Ana Rita Pacheco\n 34-Ana Guilherme\n 11-Adalberto Campos\n 10-Voto Nulo\n 15-Voto Branco"); printf("\nDigite o número correspondente ao seu voto e aperte ENTER: "); scanf("%d",&v); switch(v){ case 0: printf("Votação encerrada!"); break; case 51: depEstAnaR=depEstAnaR+1; Mulher=Mulher+1; printf("Ana Rita Pacheco. Voto registrado!"); break; case 34: depEstAnaG=depEstAnaG+1; Mulher=Mulher+1; printf("Ana Guilherme. Voto registrado!"); break; case 11: depEstAdal=depEstAdal+1; Homem=Homem+1; printf("Adalberto Campos. Voto registrado!"); break; case 10: vn=vn+1; printf("Voto Nulo registrado!"); break; case 15: vb=vb+1; printf("Voto Branco registrado!"); default: printf("OPCAO INVALIDA. Digite algo válido!");}
  11. Olá boa tarde, Eu estou fazendo um exercício para inverter um numero(um numero da escolha do usuário) exemplo:1234 vira 4321 mas apesar do programa rodar,quando eu coloco 3 dígitos ou mais ,os números aparecem invertidos ,mas o ultimo digito não aparece alguém poderia me ajudar? #include <stdio.h> #include <stdlib.h> int main() { int n,cifra,i; int *v; v =(int*) malloc (n*sizeof(int)); printf("digite um numero:"); scanf("%i",&n); for (i=0;i<n;i++) { cifra=n%10; n=n/10; v=cifra; printf("%i",v );} return 0;}
  12. Boa tarde, estou fazendo um menu de opções e tenho que fazer com que volte ao menu caso a pessoa digite uma opção invalida. Eu fiz assim: int main(){ float s,f,d,n,m; int op; setlocale(LC_ALL, "Portuguese"); printf("MENU:\n "); printf("\nEscolha a opção desejada:\t"); printf("\n (1) = Salário novo \n (2) = Férias\n (3) = Décimo terceiro\n (4) = Sair\n\nOpção:\t"); scanf("%d", &op); do{ switch (op){ case 1: printf("\nDigite seu salário atual:\t"); scanf("%f", &s); if (s<=350){ n=s*0.15+s; } else if ((350<s)&&(s<=600)){ n=s*0.10+s; } else if (s>600){ n=s*0.05+s; } printf("\nO novo salário será:\t\t%.2f", n); break; case 2: printf("\nFavor insira seu salário atual:\t"); scanf("%f", &s); f=s*1/3+s; printf("\nO valor de suas férias será: \t %.2f \n\n\n\n\n", f); break; case 3: printf("\nFavor insira seu salário atual:\t"); scanf("%f", &s); printf("\nFavor insira o número de meses de trabalho:\t"); scanf("%f", &m); d=(s/12)*m; printf("\nO valor décimo terceiro salário será: %.2f \t \n\n\n\n\n", d); break; case 4: printf("Programa encerrado!\n"); break; } } while(op<1 || op>4); return 0; } MAS, não volta, o programa simplesmente encerra... O que estou fazendo errado?
  13. 1) Uma empresa decidiu fazer o recrutamento para preencher algumas vagas . Os candidatos serão cadastrados por computador . Faça um algoritmo para : a) Ler o número de inscrição do candidato , idade, sexo Mostrar a idade média dos candidatos . c) Mostrar o número total de candidatos (homens e mulheres). Qual o código e/ou fluxograma que devo fazer? (Lembrando, não posso usar matrizes)
  14. Eu u tenho que declarar um vetor de 10 posições e o preencher com os 10 primeiros números impares e imprimir. Fiz o codigo abaixo, mas não esta rodando, o que tem de errado? #include<stdio.h> #include<stdlib.h> main () { int vet[10]; for (int x=0;x<10;x++) { vet[x]=x+2; } printf(" %d - ",vet[x]); }
  15. Estou cursando curto técnico em informática e tenho que fazer uma tarefa que consiste no seguinte: O usuário vai digitar um número e tenho que mostrar todos os números primos de 0 até esse número. (Preciso usar obrigatoriamente o "enquanto") Já tentei muito mas não consigo, ai esta meu código atual: #include <stdio.h> #include <stdlib.h> #include <math.h> main() { int cont,i,r,d; printf("Digite um numero qualquer: "); scanf("%d", &cont); i = cont; while (i >= 2){ i= i-1; r= cont % i; if (r == 0) d = d + 1; if (i == 2 && cont > 0){ cont = cont - 1; i = cont; if (d == 2){ printf("%1.d\n ",cont); } d = 0; } }
  16. falae galera, alguém poderia me dar uma forcinha para fazer um código no qual eu coloque o numero inteiro ,a posição do digito que eu quero ,e o programa me retorna o digito naquela posição E seria da direita para esquerda , todos os código que faço vem trocentos acho que estou fazendo tudo muito errado tpo assim (7452,0)=7 .o digito na posição 0 é 7 valeu
  17. olá pessoal alguém poderia me ajudar, estou estudando a linguagem c++ e consegui fazer esse código, mas ele está apresentado mensagens " warnig " , queria saber como acertar o código para não aparecer essas mensagens e porque o desenho faz linhas aleatórias onde não era para fazer, e também como detectar se a tecla ESC foi pressionada . ps : para rodar esse código precisa colocar ele como new project / windows application no dev c++ ou new project / Win32 GUI project no codeblocks . esse é o relatório de erros : ||=== Build: Debug in desenhar uma estrela_3 (compiler: GNU GCC Compiler) ===| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp||In function `LRESULT WndProc(HWND__*, UINT, WPARAM, LPARAM)':| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp|51|warning: passing `double' for converting 2 of `BOOL MoveToEx(HDC__*, int, int, tagPOINT*)'| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp|51|warning: passing `double' for converting 3 of `BOOL MoveToEx(HDC__*, int, int, tagPOINT*)'| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp|53|warning: passing `double' for converting 2 of `BOOL LineTo(HDC__*, int, int)'| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp|53|warning: passing `double' for converting 3 of `BOOL LineTo(HDC__*, int, int)'| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp|54|warning: passing `double' for converting 2 of `BOOL LineTo(HDC__*, int, int)'| C:\Users\usuario\Documents\Arquivos_win32GUI\desenhar uma estrela_3\main.cpp|54|warning: passing `double' for converting 3 of `BOOL LineTo(HDC__*, int, int)'| ||=== Build finished: 0 error(s), 6 warning(s) (0 minute(s), 2 second(s)) ===| ||=== Run: Debug in desenhar uma estrela_3 (compiler: GNU GCC Compiler) ===| o código completo é esse : #include <windows.h> #include <math.h> #include <conio.h> static int i; LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow){ static TCHAR szAppName[] = TEXT ("Connect") ; HWND janela ; MSG msg ; WNDCLASS wndclass ; wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.lpfnWndProc = WndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hInstance = hInstance ; wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ; wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ; wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ; wndclass.lpszMenuName = NULL ; wndclass.lpszClassName = szAppName ; if (!RegisterClass (&wndclass)){ MessageBox (NULL, TEXT ("Program requires Windows NT!"), szAppName, MB_ICONERROR) ; return 0 ; } janela = CreateWindow (szAppName, TEXT ("Desenhar Uma Estrela"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL) ; ShowWindow (janela, iCmdShow) ; UpdateWindow (janela) ; while (GetMessage (&msg, NULL, 0, 0)){ TranslateMessage (&msg) ; DispatchMessage (&msg) ; } return msg.wParam ; } LRESULT CALLBACK WndProc (HWND janela, UINT message, WPARAM wParam, LPARAM lParam){ HDC tela ; COLORREF color; PAINTSTRUCT ps ; int z=0; double x,y,x2,y2,x3,y3,x4,y4,x5,y5; double k,w,k2,w2,k3,w3,k4,w4,k5,w5; tela = GetDC (janela) ; switch (message){ case WM_COMMAND: if(kbhit())z=getch(); if(z==27){ PostQuitMessage (0) ; return 0; } case WM_PAINT : tela = BeginPaint (janela, &ps) ; x =cos( i *3.141615/180)*200+300; y =sin( i *3.141615/180)*200+250; x2=cos((i+72 )*3.141615/180)*200+300; y2=sin((i+72 )*3.141615/180)*200+250; x3=cos((i+144)*3.141615/180)*200+300; y3=sin((i+144)*3.141615/180)*200+250; x4=cos((i+216)*3.141615/180)*200+300; y4=sin((i+216)*3.141615/180)*200+250; x5=cos((i+288)*3.141615/180)*200+300; y5=sin((i+288)*3.141615/180)*200+250; k =cos( i+36 *3.141615/180)*100+300; w =sin( i+36 *3.141615/180)*100+250; k2=cos((i+108)*3.141615/180)*100+300; w2=sin((i+108)*3.141615/180)*100+250; k3=cos((i+180)*3.141615/180)*100+300; w3=sin((i+180)*3.141615/180)*100+250; k4=cos((i+252)*3.141615/180)*100+300; w4=sin((i+252)*3.141615/180)*100+250; k5=cos((i+324)*3.141615/180)*100+300; w5=sin((i+324)*3.141615/180)*100+250; i++; MoveToEx(tela,x ,y,0) ;//posição de inicio LineTo (tela,k ,w ) ;//vai para essa posição LineTo (tela,x2,y2 ) ; LineTo (tela,k2,w2 ) ; LineTo (tela,x3,y3 ) ; LineTo (tela,k3,w3 ) ; LineTo (tela,x4,y4 ) ; LineTo (tela,k4,w4 ) ; LineTo (tela,x5,y5 ) ; LineTo (tela,k5,w5 ) ; LineTo (tela,x ,y ) ; if(i>360)i=0; Sleep(500); InvalidateRect (janela, NULL, TRUE) ;//limpa a tela EndPaint (janela, &ps) ; return 0 ; case WM_DESTROY: PostQuitMessage (0) ; return 0 ; } return DefWindowProc (janela, message, wParam, lParam) ; }
  18. recentemente eu comecei curso de programação em c++ só e passei a usar uma estrutura de código que meu professor passou mas vejo muita gente usando uma diferente a estrutura de código que meu professor passou : #include <iostream> using namespace std; int main(){ //conteúdo do código return 0; } a estrutura que vejo muitas pessoas usando na internet: #include <stdio.h> #include <locale.h> int main() { //conteúdo do código } qual das duas é mais fácil ?
  19. Olá por favor estou com problema para ter ler um input de uma string com acento. Usando setlocale arrumei a saída, mas a entrada ainda permanece com uma simbolo no lugar da letra acentuada. Alguém por gentileza poderia me indicar onde se encontra o erro. Grato /*15) Faça um algoritmo e o fluxograma que leia o nome da capital do Brasil. Se a resposta estiver correta, imprimir PARABÉNS, caso contrário, ERROU. (Considerar: Brasília).*/ #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <string.h> main () { setlocale (LC_ALL,"portuguese"); //---------------------------------------------------- char capital[9]; printf("Digite qual é a capital do Brasil: "); fgets(capital,9,stdin); // limitar a string a 8 caractes + 1 //---------------------------------------------------- if (strcmp(capital,"Brasília")==0) { // COMPARA DUAS STRINGS printf("PARABÉNS"); } else { printf("**INCORRETO**\n\n O digitado foi %s e o correto é Brasília\n",capital); } }
  20. Bom eu estou fazendo um programa do jogo da velha e estou com um problema na hora de fazer o programa declarar se: a posição escolhida já foi escolhida antes ,ou caso a posição seja maior que o numero de casas, e para fazer o programa empatar(que é quando nem o jogador que controla"X" e nem o jogador que controla "O" ganhou). O código: #include <iostream> using namespace std; void mostrar(); int pos[9],velha[3][3],o,p,r,c,s; string aux="O"; bool g,preencher=false; void X_ou_O(){ if(aux=="O"){ aux = "X"; }else{ if(aux=="X"){ aux = "O"; } } } void terminou_velha(){ g = false; //horizontal if(velha[0][0]==velha[0][1]&&velha[0][1]==velha[0][2]){ g = true; }else{ if(velha[1][0]==velha[1][1]&&velha[1][1]==velha[1][2]){ g = true; }else{ if(velha[2][0]==velha[2][1]&&velha[2][1]==velha[2][2]){ g = true; }else{ //vertical if(velha[0][0]==velha[1][0]&&velha[1][0]==velha[2][0]){ g = true; }else{ if(velha[0][1]==velha[1][1]&&velha[1][1]==velha[2][1]){ g = true; }else{ if(velha[0][2]==velha[1][2]&&velha[1][2]==velha[2][2]){ g = true; }else{ //diagonal if(velha[0][0]==velha[1][1]&&velha[1][1]==velha[2][2]){ g = true; }else{ if(velha[0][2]==velha[1][1]&&velha[1][1]==velha[2][0]){ g = true; } } } } } } } } } void jogada_invalida(){ for(o=0;o<3;o++){ for(p=0;p<3;p++){ } } if(pos[r]>9){ preencher = true; } } int main(){ for(o=0;o<3;o++){ for(p=0;p<3;p++){ c = c + 1; velha[o][p] = c; } } mostrar(); for(r=0;r<9;r++){ X_ou_O(); jogada_invalida(); if(preencher==true){ cout << " JOGADA INVALIDA " << endl; cout << " +----+-----+----+" << endl; cout << " Digite uma posicao para colocar {" << aux << "} de novo" << endl; cin >> pos[r]; system("cls"); }else{ if(g==false){ cout << "voce vai colocar {" << aux << "} " << "em que posicao" << endl; cin >> pos[r]; system("cls"); }else{ if(g==true){ cout << " JOGO ENCERRADO!!!!!! " << endl; system("pause"); return 0; } } } cout << " +----+-----+----+" << endl; for(o=0;o<3;o++){ for(p=0;p<3;p++){ if(pos[r] != velha[o][p]){ if(velha[o][p] > 9)cout << " [ " << char (velha[o][p]) << "] "; else cout << " [ " <<(velha[o][p]) << "] "; }else{ velha[o][p] = (int)aux[0]; cout << " [ " << char ( velha[o][p] ) << "] "; } } cout << endl; cout << " +----+-----+----+" << endl; } terminou_velha(); } system ("pause"); return 0; } void mostrar(){ cout << " +----+-----+----+" << endl; for(o=0;o<3;o++){ for(p=0;p<3;p++){ cout << " [ " << velha[o][p] << "] " ; } cout << endl; cout << " +----+-----+----+" << endl; } }
  21. Galera, preciso fazer um algoritmo que permita o calculo da aceleração da gravidade local, com resistencia do ar desprezada pois trata-se de queda livre. - dados de entrada: altura maxima e tempo total de queda livre (velocidade inicial zero) - dados de saida: aceleração da gravidade e velocidade com que o corpo chega ao chão
  22. Pessoal ! Tudo bem ? Alguem pode me ajudar a resolver isso ! simplesmente o programa nao ta dando o resultado da media ! ( 2 ) Media ponderada < -- escolha essa opção #include <stdio.h> #include <stdlib.h> #include <locale.h> /* Esta função calcula a média simples entre dois valores * x1, x2 */ float mediaSimples(float x1, float x2) { return (x1+x2)/2; } /* Esta função calcula a média ponderada entre dois valores * x1, x2, pesos p1, p2 respectivamente */ float mediaPonderada(float x1, float x2, float p1, float p2) { return (x1*p1 + x2*p2)/(p1+p2); } /* Esta função calcula a média simples entre n valores x[i] * Onde 0 < i < n */ float mediaSimplesVetor(int n, float x[]) { int i; float soma=0.0; for(i=0; i<n; i++) soma=soma+x[i]; // calcule somatorio de Xi return soma/n; // retorne a media } /* Esta função calcula a média pnderada entre n valores x[i] * e pesos p[i], onde 0 < i < n */ float mediaPonderadaVetor(int n, float x[], float p[]) { int i; float media; float somaX=0.0; float somaP=0.0; for(i=0; i<n; i++) // somatorio para 0<i<n-1 { somaX=somaX+(x[i]*p[i]); // somatorio de Xi.Pi somaP=somaP+p[i]; // somatorio de Pi }; media = somaX/somaP; // calcule a media return media; // retorne a media } /* Esta função mostra as notas no vetor x[i] * onde 0 < i < n */ void mostraNotas(int n, float x[]){ int i; printf("\n"); printf("As %d Notas Digitadas:\n",n); printf("\n"); for(i=0; i<n; i++ ) printf(" Nota %d = %5.1f\n",i+1,x[i]); } /* INICIO */ int main(int argc, char *argv[]) { setlocale(LC_ALL, "Portuguese"); int num ; int rep; float numero_max; float *provas; float media; int i; int n; int maior=0, menor=0; do { printf( " Digite: \n " "(1) Media Normal \n " "(2) Media Ponderada \n"); printf("\n"); scanf("%i", &num); printf("\n"); //Media Simples - Vetor if (num == 1 ) { printf("Quantas Provas ? "); scanf("%i",&n); printf("\n"); provas = (float*) malloc(n*sizeof(float)); for (i = 0;i < n;++i) { printf(" Nota %i: ",i + 1); scanf("%f",&provas[i]); if(i==0){maior=provas[i];menor=provas[i];} if(provas[i]>maior){ maior=provas[i]; } else{ if(provas[i]<menor){ menor=provas[i]; } } } mostraNotas(n,provas); printf("\n"); media = mediaSimplesVetor(n, provas); printf("A Media é: %5.2f\n",media); printf("\n"); printf("\n Maior Nota %d: \n", maior); printf("\n Menor Nota %d: \n\n", menor); } else { //Media Ponderada - Vetor float provas[i]; int n, media; printf("Quantas Provas ? "); scanf("%i",&n); printf("\n"); for( i=0; i<n; i++){ printf(" Nota %i: ",i +1); scanf("%f", & provas); } for( i=0; i<n; i++){ printf("Peso %d: ",i + 1); scanf("%f", & provas); } } printf("\n"); media = mediaPonderadaVetor (n, provas, provas); printf("A Media é: %5.2f\n", media); printf("\n"); printf( "Digite (1) para continuar ou (2) para sair \n"); scanf("%d", &rep); printf("\n"); }while (rep==1); system("PAUSE"); return 0; };
  23. Eu gostaria de saber qual é o meu erro, porque o programa executa mas na hora da 'opção 3', ele o mesmo triangulo, parece que ta imprimindo sujeira basicamente. Gostaria de saber qual o problema no meu programa! Grata ;-;! obs: o programa deve ler três lados e dizer se é ou não um triângulo, e se for um triângulo qual tipo #include "iomanip" #include "iostream" #include "conio.h" #include "string.h" #include "math.h" using namespace std; struct triangulo{ double ladoa, ladob, ladoc, semiperimetro, base, altura, area; }; int main(){ setlocale(LC_ALL, "Portuguese"); struct triangulo triangulo[3]; int i, figura; figura=0; char tecla='0'; while(tecla!=27){ system("cls"); cout<<"\n------TRIANGULOS-------\ \n1- Cadastrar Dados\ \n2- Efetuar Calculos\ \n3- EXIBIR\ \n4- SAIR\n"; tecla= getch(); if(tecla=='1'){ for(i=0;i<3; i++){ cout<<"\nDigite o lado a:"; cin>>triangulo.ladoa; cout<<"\nDigite o lado b:"; cin>>triangulo.ladob; cout<<"\nDigite o lado c:"; cin>>triangulo.ladoc; cout<<"\n----------------\n"; } } if(tecla=='2'){ for(i=0;i<3;i++){ if((triangulo.ladoa>(triangulo.ladob+triangulo.ladoc)) || ((triangulo.ladob>(triangulo.ladoa+triangulo.ladoc))) || ((triangulo.ladoc>(triangulo.ladoa+triangulo.ladob))) ) figura=1; else if((triangulo.ladoa==triangulo.ladob) && (triangulo.ladob==triangulo.ladoc)) figura=2; else if((triangulo.ladoa==triangulo.ladob && triangulo.ladoa!=triangulo.ladoc) || (triangulo.ladoa==triangulo.ladoc && triangulo.ladoa!=triangulo.ladob) || (triangulo.ladob==triangulo.ladoc && triangulo.ladob!=triangulo.ladoa)) figura=3; else if((triangulo.ladoa!=triangulo.ladob) && (triangulo.ladoa!=triangulo.ladoc) && (triangulo.ladob!=triangulo.ladoc)) figura=4; } } if(tecla=='3'){ for(i=0;i<3;i++){ if(figura==1) cout<<"\nNAO É FIGURA!"; else if(figura==2){ cout<<"\nTriângulo Equilátero!"; } else if(figura==3){ cout<<"\nTriângulo Isóceles!"; } else if(figura==4){ cout<<"\nTriângulo Escaleno!"; } } system("pause"); } } return 0; }
  24. Boa noite Eu estou com muita dificuldade para fazer uma parte do código, na qual devo criar uma função que me retorne a posição dos dígitos de um numero inteiro. Por exemplo , numero 546 posição= 012 5 na posição 0,4 na posição 1,6 na posição 2. desde já agradeço pela ajuda
  25. Olá, estou tentando criar um menu para navegar melo meu código mas por alguma razão, independente do valor que eu atribua a resposta (variável resp que escolhe a opção do menu), tudo o que recebo ao executar é uma chuva de "Opção inválida, tente novamente" (opções 2, 3 e 4), o que não deveria acontecer caso eu responda "1". Alguma dica? PS: Ainda irei implementar as demais funções para 2, 3 e 4. #include <stdio.h> #include <stdlib.h> #include <math.h> #include <locale.h> #include <conio.h> menu1() { float s, s0, v0, a, t; int loop, repet, linha, coluna; setlocale(LC_ALL,"portuguese"); printf ("\n\t\t\t\tATRIBUIÇÃO DE VALORES"); printf("\n\n"); printf ("\tQuantidade de objetos: "); scanf ("%d", &loop); printf ("\n"); float matriz [loop][6]; for (linha = 0; linha < loop; linha++){ matriz[linha][0] = linha; printf ("\tObjeto %f - Posição inicial (s0): ", linha); coluna = 1; scanf ("%f", &s0); matriz[linha][coluna] = s0; printf ("\tObjeto %f - Velocidade inicial (v0): ", linha); coluna = coluna + 1; scanf ("%f", &v0); matriz[linha][coluna] = v0; printf ("\tObjeto %f - Aceleração (a): ", linha); coluna = coluna + 1; scanf ("%f", &a); matriz[linha][coluna] = a; printf ("\tObjeto %f - Tempo (t): ", linha); coluna = coluna + 1; scanf ("%f", &t); matriz[linha][coluna] = t; matriz[linha][5] = (s0 + v0*t + ((a*(t*t))/2)); printf ("\n"); } printf ("\t\t\t\t"); printf ("TABELA DE VALORES"); printf ("\n\n"); printf ("\t"); printf ("Objeto Posição(s0) Velocidade(v0) Aceleração(a) Tempo(t)"); printf ("\n\n"); for (repet = 0; repet < loop; repet++){ for (coluna = 0; coluna < 6; coluna++){ printf ("\t%.2f\t|", matriz [repet][coluna]); } printf ("\n"); } } main () { int resp; setlocale(LC_ALL,"portuguese"); printf ("\tFUNÇÃO HORÁRIA DA POSIÇÃO"); printf ("\n\n"); printf ("1 - Atribuição e apresentação de dados\n"); printf ("2 - Função horária da velocidade e da aceleração\n"); printf ("3 - Resolutor de derivadas simples\n"); printf ("4 - Sair\n\n"); printf ("Digite o número da opção desejada: "); scanf ("&d", &resp); while (resp <= 4) { switch (resp) { case 1: menu1(); break; case 2: printf ("Opção inválida, tente novamente!"); break; case 3: printf ("Opção inválida, tente novamente!"); break; case 4: printf ("Opção inválida, tente novamente!"); break; default: printf ("Opção inválida, tente novamente!"); break; } } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×