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 e sugestões sobre o Clube do Hardware
    • Comentários de artigos
    • Fórum para testes de funcionalidades

Categorias

  • Hardware
  • Redes
  • Eletrônica
  • Sistemas operacionais

Encontrado 74 registros

  1. Olá, Gostaria de saber como é feito um programa em c, sobre cadastro de clientes, relatório e locação de veículos, tenho que desenvolver um programa para a faculdade com essa base e não estou conseguindo, alguém poderia me ajudar, a respeito do mesmo, com um exemplo feito. Obrigado.
  2. C Como criar uma GUI "redonda"?

    Quero desenvolver um propeller clock usando o micro-controlador STM32F411RE e ser capaz de, por meio de uma interface, desenhar a imagem que quero exibir no pc e transmitir por bluetooth para o arm, mas não tenho nenhuma ideia de como desenvolver uma interface, ainda mais que seja redonda, como a da imagem. A ideia por trás do código do pc seria transformar tudo em uma matriz e enviar para o arm. As linhas seriam os números de LEDs, e as colunas seriam os "ângulos" que vou acionar. Vale ressaltar que vou trabalhar com leds de uma cor só e que a imagem eu peguei de uma página que da uma explicação em como desenvolver o código do micro-controlador, mas não do PC. http://www.wittyrobo.com/povd/index.html Enfim, alguém saberia como desenvolver algo assim usando C?
  3. C Comunicação serial enviada pelo Micro

    Boa tarde Gostaria de manda alguns valores em hexadecimal pelo porte serial, exemplo (0xA6, 0x45, 0xDE...). estou usando um PIC16F877A e queria saber se tem como me dar um exemplo de como configuro a saída seria. Baud 9600, bits 7, sem paridade , 1 stop bit. E também como faço uma programação para enviar esses valores! (crystal de 4M).
  4. C Converter Algoritmo para visualg

    Oi pessoal, estou tentando entender esse algoritmo, mas estou iniciando agora nessa área e consigo mais entender programas em VisualG, quero entender esse algoritmo, porém ele está em C, se alguém transformasse para VisualG eu ficaria grato #include <stdio.h> int main( void ) { int a[ 3 ][ 3 ], soma = 0; int i, j, tentativas; for( i = 0; i < 3; ++i ) for( j = 0; j < 3; ++j ) scanf("%d", &a[ i ][ j ]); for( i = 0; i < 3; ++i ) if( (a[ i ][ 0 ] == 0) + (a[ i] [ 1 ] == 0) + (a[ i ][ 2 ] == 0) == 0 ) soma = a[ i ][ 0 ] + a[ i ][ 1 ] + a[ i ][ 2 ]; for( j = 0; j < 3; ++j ) if( (a[ 0 ][ j ] == 0) + (a[ 1 ][ j ] == 0) + (a[ 2 ][ j ] == 0) == 0 ) soma = a[ 0 ][ j ] + a[ 1 ][ j ] + a[ 2 ][ j ]; if( (a[0][0] == 0) + (a[ 1 ][ 1 ] == 0) + (a[ 2 ][ 2 ] == 0) == 0 ) soma = a[ 0 ][ 0 ] + a[ 1 ][ 1 ] + a[ 2 ][ 2 ]; if( (a[0][2] == 0) + (a[ 1 ][ 1 ] == 0) + (a[ 2 ][ 0 ] == 0) == 0) soma = a[ 0 ][ 2 ] + a[ 1 ][ 1 ] + a[ 2 ][ 0 ]; if( soma == 0 ) { for( i = 0; i < 3; ++i ) for( j = 0; j < 3; ++j ) soma += a[ i ][ j ]; soma /= 2; } for( tentativas = 0; tentativas < 3; ++tentativas ) { for( i = 0; i < 3; ++i ) for( j = 0; j < 3; ++j ) { /*Testa mesma linha*/ if( (a[ i ][ j ] == 0) && (a[ i ][ 0 ] == 0) + (a[ i ][ 1 ] == 0) + (a[ i ][ 2 ] == 0) == 1 ) a[ i ][ j ] = soma - a[ i ][ 0 ] - a[ i ][ 1 ] - a[ i ][ 2 ]; /*Testa mesma coluna*/ if( (a[ i ][ j ] == 0) && (a[ 0 ][ j ] == 0) + (a[ 1 ][ j ] == 0) + (a[ 2 ][ j ] == 0) == 1 ) a[ i ][ j ] = soma - a[ 0 ][ j ] - a[ 1 ][ j ] - a[ 2 ][ j ]; } } for( i = 0; i < 3; ++i ) { for( j = 0; j < 3; ++j) printf( "%d ", a[ i ][ j ] ); printf( "\n" ); } return 0; }
  5. C preciso entender com resolve este problema em c

    Este problema preciso de dica para resolver não conseguir entender bem com resolve. "Ivenilton criou um projeto de circuitos digitais e pediu ajuda para que crie uma função de raiz quadrada, mas para que seu projeto tenha baixo custo ele resolveu criar o circuito utilizando apenas operador de soma (O sistema só deve conter soma). Elabore um algoritmo que Resolva o desafio proposto por Ivenilton. (Fique claro que não deve utilizar funções já definidas)."
  6. C Problema com ordernação em c

    Então minha dúvida é o que esta acontecendo, quando eu coloco 3 pessoas ele compila e ordena, mas se eu colocar 4 ou mais ele buga, aparece coisas estranhas, estou usando o qsort Novo Documento de Texto.txt typedef struct coisas { int number; int pessoas; char nome[50]; } Coisas; int comparaNome(const void *a, const void *b) { int r = strcmp((*(struct coisas*)a).nome, (*(struct coisas*)b).nome); if(r==0) return 0; //iguais else if(r<0) return -1; //vem antes else return 1; //vem depois } int main() { setlocale(LC_ALL, "portuguese"); int x; printf("Digite a quantidade de pessoas : "); scanf("%d", &x); Coisas c[x]; int i=0; getchar(); for(; i<x; i++) { printf("Digite o %d° nome: ", (i+1)); fgets(c.nome, 50, stdin); printf("Digite a %d° idade: ", (i+1)); scanf("%d", &c.number); qsort(c, x, sizeof(struct coisas), comparaNome); } printf("\t-DADOS EM ORDEM ALFABETICA-\n"); for(i=0; i<x; i++) { printf("%s\n", c.nome); } return 0; }
  7. C Calcular espaço entre números

    Olá, Eu tenho o seguinte problema: Estão dispostos os números de 0 a 7 em círculo na ordem crescente e em sentido horário. O programa recebe 4 números e eu devo comparar se o "espaço" entre esses pares de números é o mesmo. Ex: 7 - 2 e 6 - 1 (perceba que de 7 até 2 são 3 espaços ~ 7 * 0 * 1 * 2 e de 6 até 1 são também 3 espaços ~ 6 * 7 * 0 * 1 * representa os espaços Alguém tem alguma ideia de como posso implementar isso? Só posso utilizar desvios condicionais, laços e vetores de uma dimensão. Att.
  8. Tenho o seguinte código: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> typedef struct { char nome[30]; char email[30]; char telefone[30]; } agenda; agenda* alocar(); void cadastro(agenda*, int *); int realocar(agenda *, int); void consultar(agenda *,int); void alterar(agenda *, int); void pesquisar(agenda *, int); int main() { int resp; int i = 0; agenda *p = alocar(); while (resp != 9) { printf("\n1 - Cadastrar"); //printf("\n2 - Alterar"); printf("\n3 - Consultar"); // printf("\n4 - Excluir"); // printf("\n5 - Pesquisar"); printf("\n9 - Sair\n"); printf("--> "); scanf("%d",&resp); fflush(stdin); if (resp == 1) { cadastro(p,&i); } else if(resp == 2) { //alterar(p,&i); } else if(resp == 3) { consultar(p,i); } else if(resp == 4) { //excluir(p,i); } else if(resp == 5) { //pesquisar(p,i); } else { }; } return 0; } agenda* alocar() { agenda *p = (agenda*) malloc(1*sizeof(agenda)); if (p!= NULL) { return p; } else { printf("\nMEMORIA INSUFICIENTE\n"); exit(1); } } int realocar(agenda *p,int i) { p = (agenda*) realloc(p,i*sizeof(agenda)); if(p!= NULL) { printf("\nRealocado com sucesso!"); return 1; } else { printf("\nN foi possivel realocar!"); return 0; } } void cadastro(agenda*p, int *i) { int resp; int j = *i; printf("Digite o nome: "); gets(p[j].nome); printf("Digite o email: "); gets(p[j].email); printf("Digite um telefone: "); gets(p[j].telefone); j++; *i = j; printf("\nCadastrar mais (s-1/n-0): "); scanf("%d",&resp); system("cls"); while (resp == 1) { realocar(p,j); fflush(stdin); printf("\nDigite o nome: "); gets(p[j].nome); printf("Digite o email: "); gets(p[j].email); printf("Digite um telefone: "); gets(p[j].telefone); printf("\nCadastrar mais (s-1/n-0): "); scanf("%d",&resp); } } void consultar(agenda *p, int i) { int k; for (k = 0; k <= i; k++) { printf("\nNome: %s",p[k].nome); printf("\nEmail: %s",p[k].email); printf("\nTelefone: %s",p[k].telefone); } } Tentei de tudo a a função cadastro e Consultar não funcionam, quando eu cadastro, os dados se sobrescrevem !!! Alguém tem alguma ideia? sou novo em Estruturas de dados e ta muito complicado entender . adicionado 0 minutos depois Não coloquei todas as funções porque iria ficar muito grande ..
  9. C Problema de intervalos na condicional IF

    Estou com um problema para representar intervalos de valores no condicional IF. Por exemplo: eu quero dizer que um aluno que tirou entre 6 e 8.9 deve ganhar conceito B. Como representar isso no condicional? adicionado 13 minutos depois Consegui resolver o problema: "amarrando" a condicional no operando E (&&). Se colocar tipo: if (valorNota <6 && valorNota >8.9999) ele vai buscar somente neste intervalo, não vai buscar em outro. O meu problema era que ele estava dando conceitos diferentes pro mesmo resultando, mas consegui resolver com o operando. Moderador, se quiser pode apagar o tópico. Obrigado
  10. C Programa Grupo de Empresa

    Olá. Estou realizando um trabalho na faculdade estou no 2º Semestre de CC, e preciso de uma ajuda quanto a alguns comandos nesse trabalho. Preciso criar 3 grupos de 5 pessoas cada onde neles possuam 5 gestores e 10 colaboradores, e que no primeiro tempo estejam os 5 gestores no grupo um e no segundo eles misturem-se com outros grupos e as pessoas dos outros grupos alternem também. Deverá estar numerado exemplo: Gestor 1, 2... Colaborador 1, 2... Preciso apenas de um comando que quando chegar a quantidade máxima permitida no grupo ele coloque os outros nos outros grupos. Digamos que eu decida colocar 20 pessoas, tem que haver uma forma que ele entenda que se passar de 5 no grupo ele coloque no próximo grupo.. Obrigado
  11. C erro ao usar struct e vetor

    Bom dia, estou tendo um problema no meu codigo, queria ver se alguem poderia em dar uma luz. Na hora de compilar ele da um erro dizendo "invalid conversion from 'char' to 'const char' [-fpermissive] #include<stdio.h> #include<stdlib.h> #include<string.h> struct prof{ char nome[5]; char departamento[10]; }; int main(){ int i,j; char dcomp; struct prof vetor[3]; for (i=0;i<3;i++){ scanf("%s",&vetor[i]); if(strcmp(vetor[i].departamento,dcomp)==0) printf(vetor[i].nome); } return 0; }
  12. Faça um programa onde o usuário informe o nome, a idade, a cidade e o sexo de uma quantidade indeterminada de pessoas. Ao termino da digitação o programa deverá mostrar quantas pessoas foram digitadas, o percentual de homens, a quantidade de mulheres, quantas pessoas moram em Araçatuba e quantas moram em outras cidades e o percentual de homens adultos (considere adulta a pessoa que tem 18 anos ou mais).
  13. é esse o codigo #include <stdio.h> #include <stdlib.h> int main(){ int n1,n2,menor,maior,soma; float media; char opicao; printf("--------------------------------\n"); printf("MENU\n"); printf("--------------------------------\n"); printf("A-Maior Numero\n"); printf("B-Menor Numero\n"); printf("C-Media Aritmetica\n"); printf("D-Finalizar\n"); printf("--------------------------------\n"); printf(" \n"); printf("Digite um numero:"); scanf("%d",&n1); printf("Digite outro numero"); scanf("%d",&n2); printf("Digite a opiçao desejada de acordo com o MENU"); scanf('%c',&opicao); switch(opicao){ case 'A': if(n1>n2){ maior=n1; }else{ maior=n2;} printf("Maior numero %d",maior); break; case 'B': if(n1<n2){ menor=n1; }else{ menor=n2;} printf("Menor numro eh%d",menor); break; case 'C': soma=n1+n2; media=soma/2; printf("a media eh %f",media); break; case 'D': printf("FIM"); break; } system("PAUSE"); return 0; }
  14. C Converter codigo de C++ em C

    Preciso passa esse codigo de C++ para C alguem pode me ajudar? Esse é o codigo que quero passar: #include <iostream> #include <stack> using namespace std; int main() { stack<char> st; string expressao; cout << "Digite a expressao: "; cin >> expressao; int i; bool valid = false; for(i=0; i < expressao.size(); i++) { if (expressao[i] == '(') st.push(expressao[i]); else if (expressao[i] == ')') { if (st.empty()) goto FIM; st.pop(); } } valid = st.empty(); FIM: if (valid) cout << "Expressao valida" << endl; else cout << "Expressao invalida" << endl; } E esse é o que estou tentando em C int main(){ char pilha[max_pilha]; int i; printf ("Digite a expreção que deseja verificar:"); scanf ("%c", &pilha[i]); for(i=0; i < max_pilha; i++) { if (pilha[i] == '(') Pilha_Push(pilha[i]); else (pilha[i] == ')') Pilha_Pop(pilha[i]); } } if (max_pilha=0) Printf ("Expressao valida"); else Printf ("Expressao invalida"); } Alguem pode me ajudar ?
  15. C Programa para calcular média de um aluno

    Boa noite, poderiam me ajudar a resolver essa questão? Sou novo no ramo da programação e não estou conseguindo fazer esse código, pois quando chega nas condicionais eu não consigo seguir adiante. Enunciado da questão está logo abaixo. " Ler os valores de quatro notas escolares bimestrais de um aluno representadas pelas variáveis N1, N2, N3 e N4. Calcular a média aritmética (variável MD1) desse aluno e apresentar a mensagem "Aprovado" se a média obtida for maior ou igual a 7; caso contrário, o programa deve solicitar a quinta nota (nota de exame, representada pela variável NE) do aluno e calcular uma nova média aritmética (variável MD2) entre a nota de exame e a primeira média aritmética. Se o valor da nova média for maior ou igual a cinco, apresentar a mensagem "Aprovado em exame"; caso contrário, apresentar a mensagem "Reprovado". Informar também, após a apresentação das mensagens, o valor da média obtida pelo aluno. " meu código abaixo: #include <stdio.h> #include <stdlib.h> main() { float N1, N2, N3, N4, MD1, NE, MD2; printf ("Informe a primeira nota: "); scanf ("%f", &N1); printf ("Informe a segunda nota: "); scanf ("%f", &N2); printf ("Informe a terceira nota: "); scanf ("%f", &N3); printf ("Informe a quarta nota: "); scanf ("%f", &N4); MD1 = (N1 + N2 + N3 + N4)/4; MD2 = (MD1 + NE)/5; if (MD1 >=7) { printf ("Parabens, voce foi APROVADO "); printf ("Sua media foi de: %f ", MD1); } else A partir dai não consigo seguir adiante, se fossem apenas duas condicionais eu conseguiria, mas tem mais de uma condição. Se alguém puder ajudar ficarei muito grato. 4 - Media do aluno.rar
  16. C União de 2 vetores em C

    Olá, estou no momento fazendo uma atividade onde tenho que criar 2 listas, com essas 2 listas tenho que fazer uma 3 lista que coloco todos os elementos da lista 1 e lista 2, depois tenho que fazer uma 4 lista que é a interseção dos elementos da lista 1 e lista 2, e por fim criar uma lista 5 que é a união da lista 1 e lista 2, ou seja ter os elementos da lista 1 e 2 mas se tiver números iguais mostrar somente uma vez, e nessa parte não estou conseguindo pensar numa forma de fazer isso. as 4 primeiras listas eu consegui fazer, só me enrolei um pouco nessa :/ Meu código tá assim: #include <stdio.h> #include <stdlib.h> #include <locale.h> int main() { setlocale(LC_ALL, "Portuguese"); int lista_1[10]; int lista_2[10]; int quantidade_1, quantidade_2, valor, lista, continuar,i,j,k; quantidade_1 = 0; quantidade_2 = 0; printf("Deseja inserir um numero na lista? 1 para sim 2 para nao: \n"); scanf("%d", &continuar); while (continuar == 1) { printf("Informe um valor: \n"); scanf("%d", &valor); printf("Escolha uma lista: 1 ou 2: \n"); scanf("%d", &lista); if (lista == 1) { inserirSemRepetir(lista_1, valor, &quantidade_1, 10); } else { inserirSemRepetir(lista_2, valor, &quantidade_2, 10); } printf("Deseja inserir outro numero? 1 para sim 2 para nao: \n"); scanf("%d", &continuar); } printf("Lista 1: \n"); ImprimirLista(lista_1, quantidade_1); printf("Lista 2: \n"); ImprimirLista(lista_2, quantidade_2); int lista_3 [quantidade_1+quantidade_2]; for (i = 0; i < quantidade_1; i++) { lista_3[ i ] = lista_1; } for (j = 0; j < quantidade_2; j++) { lista_3[ i ] = lista_2[j]; i++; } int quantidade_3 = quantidade_1+quantidade_2; printf("Lista 3: \n"); ImprimirLista(lista_3, quantidade_3); int quantidade_4 = 0; for (i = 0; i < quantidade_1; i++){ for (j=0; j < quantidade_2; j++){ if (lista_1 [ i ] == lista_2 [j]) { quantidade_4++; } } } k = 0; int lista_4[quantidade_4]; for (i = 0; i < quantidade_1; i++){ for (j = 0; j < quantidade_2; j++ ) { if (lista_1[ i ] == lista_2[j]) { lista_4[k] = lista_1[ i ]; k++; } } } printf("Lista Interseção de Lista 1 e Lista 2: \n"); ImprimirLista(lista_4, quantidade_4); } void inserirSemRepetir(int lista[],int valor, int *quantidade, int max) { if (*quantidade >= max) { printf("Erro: Lista Cheia!!"); } int i = 0; int n =0; while ( i == 0 && n < 10) { if (valor == lista[n]) { i = 1; } n++; } if (i == 1) { printf("O numero %d pertence a lista \n",valor); printf("Digite um valor diferente: \n"); } else { lista[*quantidade] = valor; *quantidade = *quantidade+1; } } void ImprimirLista (int lista[], int n) { int i; for (i=0; i<n; i++) { printf("Valores em lista: %d\n", lista); } }
  17. C problema sobre programa em c que não consigo resolver

    Exercício 1: Escreva um programa que lê um valor N e depois lê dados a respeito de N pessoas. Os dados são idade e salário. Ao final, o programa deverá: - Exibir a maior idade. - Exibir a menor idade. - Exibir a média de idade entre as pessoas que ganham R$ 3.000,00 ou mais. Ao invés disso, se nenhuma pessoa se enquadrar nessa categoria, exibir mensagem de aviso. - Exibir a média de idade entre as pessoas que ganham menos de R$ 3.000,00. Ao invés disso, se nenhuma pessoa se enquadrar nessa categoria, exibir mensagem de aviso. Importante: Cuidado com o tipo dos dados ao realizar uma divisão: idades inteiras podem ter uma média não inteira! O programa deve exibir corretamente a média também para estes casos. Exercício 2: Escreva um programa que lê dois valores inteiros base b e expoente e e então calcula o resultado de b e utilizando repetidas multiplicações.
  18. #include <stdio.h> #include <stdlib.h> #include <string.h> int main(void) { char str[50]; char caracteres[53] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; int i, j, total = 0; int tam1 = strlen(str); int tam2 = strlen(caracteres); for(i=0; i<tam1; i++){ for(j=0; j<tam2; j++){ if(str[i] == caracteres [j]){ total++; break; } } } printf ("Numero de caracteres = %d\n", total); system("pause"); return 0; } Boa madrugada, caros colegas. Preciso criar um programa em que o usuário digite uma string (palavra/frase de no máximo [50] caracteres) e, após, digite um caractere (letra do alfabeto) e o programa calcule quantas vezes o caractere informado ocorre dentro da string, sendo ao final da execução informado, ao usuário, a quantidade de vezes que o caractere se repete na string. estou batendo cabeça e não saio do lugar. grato desde já pela colaboração.
  19. Sou iniciante ai na área de programação e principalmente na linguagem C. Fiz um validador de CPF e estou querendo checar o numero se é valido ou não, porém quando coloco ele não faz o calculo de CPF*10, ele dá um numero diferente assim fazendo com que eu não consiga concatenar. Tentei até por no short e mesmo assim nada! #include <stdio.h> int main ( ) { int x1 , x2 , x3 , x4 , x5 , x6 , x7 , x8 , x9, D1 , D2; short cpfval, CPF, cpf2; printf("\nDigite o CPF: "); scanf("%9d",&CPF); x1 = CPF /100000000; x2 = (CPF/10000000)%10; x3 = (CPF/1000000)%10; x4 = (CPF/100000)%10; x5 = (CPF/10000)%10; x6 = (CPF/1000)%10; x7 = (CPF/100)%10; x8 = (CPF/10)%10; x9 = CPF%10; D1 = ((x1*10)+(x2*9)+(x3*8)+(x4*7)+(x5*6)+(x6*5)+(x7*4)+(x8*3)+(x9*2))%11; if(D1<2) D1 = 0; else { D1 = 11 - D1; } D2 = ((x1*11)+(x2*10)+(x3*9)+(x4*8)+(x5*7)+(x6*6)+(x7*5)+(x8*4)+(x9*3)+(D1*2))%11; if(D2<2) D2=0; else D2=11 - D2; printf("x1: %d\n",x1); printf("x2: %d\n",x2); printf("x3: %d\n",x3); printf("x4: %d\n",x4); printf("x5: %d\n",x5); printf("x6: %d\n",x6); printf("x7: %d\n",x7); printf("x8: %d\n",x8); printf("x9: %d\n",x9); printf("D1: %d\n",D1); printf("D2: %d\n",D2); cpf2 = D1*10+D2; cpfval = CPF*100+cpf2; if(cpfval == cpf2) printf("CPF Valido: %d%d\n",CPF,cpf2); else printf("Invalido\n %d\n",cpfval); return 0; } Por favor me ajudem! Se possível sem usar estrutura de repetição... Caso não dê me avisem!
  20. C Salvar dados em uma variavel

    Pessoal, boa noite! To desenvolvendo um software pra faculdade que pede para salvar um número de peças que um funcionario do sexo masculino ou feminino criou, gostaria de saber como faço para salvar o caractere que digitei. #include<stdio.h> #include<stdlib.h> #include<math.h> main(){ int numf, pec, f, totpec, totpecf, totpecm; char sex; float sal, saltot, saltotm, saltotf, maiorsa; printf("Bem vindo ao Software\n"); do{ printf("\nDigite o numero do funcionario: "); scanf("%d", &numf); fflush(stdin); printf("Digite o sexo do funcionario :"); scanf("%s", &sex); fflush(stdin); printf("Digite a quantidade de pecas que o funcionario produziu: "); scanf("%d", &pec); fflush(stdin); sal= 600; totpec=totpec+pec; if(pec<=30){ sal= 600; printf("O salario do funcionario e: %f", sal); }else{ if((pec>30)&&(pec<36)) { sal=((18*(pec-30))+600); printf("O salario do funcionario e: %f", sal); }else{ sal=((30*(pec-30))+600); printf("O salario do funcionario e: %f\n", sal); } }if(sex=){ totpecm=totpecm+pec; } printf("\nDigite 0 para encerrar ou qualquer outra tecla para continuar: "); scanf("%d", &f); fflush(stdin); saltot=saltot+sal; } while(f!=0); printf("Quantidade de pecas masculino e %d\n", totpecm); printf("Quantidade de pecas feminino e %d\n", totpecf); printf("-Total de pecas e : %d\n", totpec); printf("-Total dos salarios: %f\n", saltot); printf("salario para homens: %f\n", saltotm); printf("salario para mulheres: %f\n", saltotf); printf("maior salario: %f\n", maiorsa); } por enquanto o codigo esta assim
  21. " [Error] allegro.h: No such file or directory" instalei o allegro, mas aparece como se não tivesse diretório pra isso, alguém pode me ajudar? ;-;
  22. C Números primos positivos em C

    Alguém pode me dizer porque esse código não serve pra identificar os números primos positivos? Só pode usar a biblioteca stdio.h e math.h. Alem disso só pode usar até estruturas de repetição(while). #include<stdio.h> int main () { int a; scanf("%d",&a); if((a!=2 && a!=3 && a!=5 && a!=7)&& ((a%2)==0 || (a%3)==0 || (a%5)==0 || (a%7)==0) || a==1 || a==0) printf("NAO PRIMO\n"); else printf("PRIMO\n"); return 0; }
  23. Oi! Sou novo no fórum, e já venho pedindo ajuda =P Mas é o seguinte, tenho que entregar esse exercício até quinta, e por me enrolar estudando cálculo, GA e física, acabei deixando pra última hora esse exercício! D: Esse é o cabeçalho do exercício: Escrever um programa para gerenciar passagens reservadas: O programa deve mostrar um menu com 4 opções, 1 - Reservar Passagem 2 - Cancelar Passagem 3 - Verificar Passagem Reservada 4 - Mostrar Passageiros A informação deve ser armazenada em uma lista, com nomes em ordem alfabética. Cada passageiro pode reservar apenas uma vez. O programa deve ser em C. Deve ser feito utilizando Listas Simplesmente Encadeadas. Estou utilizando o CodeBlocks. Como base, tenho o seguinte código: #include <stdio.h> #include <stdlib.h> typedef struct elemento{ int dado; struct elemento *proximo; } Elemento; typedef struct listasimples{ Elemento *inicio; int tamanho; } ListaSimples; ListaSimples *inicializaLista() { ListaSimples *l; l = (ListaSimples *)malloc(sizeof(ListaSimples)); l->inicio = NULL; l->tamanho = 0; return l; } void colocaDado(int d, ListaSimples *l, int pos){ Elemento *andarilho = l->inicio; Elemento *anterior = NULL; Elemento *novoDado; novoDado = (Elemento *)malloc(sizeof(Elemento)); novoDado->dado = d; int i = 0; while(andarilho != NULL && i < pos) { anterior = andarilho; andarilho = andarilho->proximo; i++; } if (anterior == NULL){ novoDado->proximo = l->inicio; l->inicio = novoDado; } else{ anterior->proximo = novoDado; novoDado->proximo = andarilho; } l->tamanho++; } int retiraDado(ListaSimples *l,int pos) { if (l->inicio == NULL){ printf("A lista esta vazia, não há o que retirar! \n"); return 0; } else { Elemento *andarilho = l->inicio; Elemento *anterior = NULL; Elemento *retirado; retirado = (Elemento *)malloc(sizeof(Elemento)); int i = 0; while(i < pos) { anterior = andarilho; andarilho = andarilho->proximo; i++; } retirado = andarilho; int saida = retirado->dado; if (anterior == NULL) { l->inicio = andarilho->proximo; } else{ anterior->proximo = andarilho->proximo; } free(retirado); return saida; } } void imprimeListaSimples(ListaSimples *l) { Elemento *iterador; iterador = l->inicio; if (iterador == NULL) { printf("Lista vazia!"); } else{ while (iterador != NULL) { printf("%i",iterador->dado); iterador = iterador->proximo; } } printf("\n"); } void limpaListaSimples(ListaSimples *l) { Elemento *iterador, *anterior; iterador = l->inicio; anterior = NULL; if (iterador == NULL) { printf("Lista vazia!"); } else{ while (iterador != NULL) { anterior = iterador; iterador = iterador->proximo; free(anterior); } } l->inicio = NULL; } int main(void) { ListaSimples *l = inicializaLista(); colocaDado(1,l,0); imprimeListaSimples(l); colocaDado(2,l,1); imprimeListaSimples(l); colocaDado(3,l,1); imprimeListaSimples(l); colocaDado(4,l,2); imprimeListaSimples(l); retiraDado(l,0); imprimeListaSimples(l); retiraDado(l,0); imprimeListaSimples(l); colocaDado(5,l,0); imprimeListaSimples(l); colocaDado(6,l,0); imprimeListaSimples(l); retiraDado(l,0); imprimeListaSimples(l); retiraDado(l,2); imprimeListaSimples(l); retiraDado(l,1); imprimeListaSimples(l); retiraDado(l,0); imprimeListaSimples(l); retiraDado(l,0); return 0; } e meu código está atualmente assim: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <strings.h> typedef struct elemento{ char nome[20]; int dado; struct elemento *proximo; } Elemento; typedef struct listasimples{ Elemento *inicio; int tamanho; } ListaSimples; ListaSimples *inicializaLista() { ListaSimples *l; l = (ListaSimples *)malloc(sizeof(ListaSimples)); l->inicio = NULL; l->tamanho = 0; return l; } void colocaDado(char d, ListaSimples *l, int pos){ Elemento *andarilho = l->inicio; Elemento *anterior = NULL; Elemento *novoDado; novoDado = (Elemento *)malloc(sizeof(Elemento)); novoDado->nome[20] = d; int i = 0; while(andarilho != NULL && i < pos) { anterior = andarilho; andarilho = andarilho->proximo; i++; } if (anterior == NULL){ novoDado->proximo = l->inicio; l->inicio = novoDado; } else{ anterior->proximo = novoDado; novoDado->proximo = andarilho; } l->tamanho++; } int retiraDado(ListaSimples *l,int pos) { if (l->inicio == NULL){ printf("A lista esta vazia, não há o que retirar! \n"); return 0; } else { Elemento *andarilho = l->inicio; Elemento *anterior = NULL; Elemento *retirado; retirado = (Elemento *)malloc(sizeof(Elemento)); int i = 0; while(i < pos) { anterior = andarilho; andarilho = andarilho->proximo; i++; } retirado = andarilho; int saida = retirado->dado; if (anterior == NULL) { l->inicio = andarilho->proximo; } else{ anterior->proximo = andarilho->proximo; } free(retirado); return saida; } } void imprimeListaSimples(ListaSimples *l) { Elemento *iterador; iterador = l->inicio; if (iterador == NULL) { printf("Lista vazia!"); } else{ while (iterador != NULL) { //printf("%s",iterador->nome); puts(iterador->nome); iterador = iterador->proximo; } } printf("\n"); } void limpaListaSimples(ListaSimples *l) { Elemento *iterador, *anterior; iterador = l->inicio; anterior = NULL; if (iterador == NULL) { printf("Lista vazia!"); } else{ while (iterador != NULL) { anterior = iterador; iterador = iterador->proximo; free(anterior); } } l->inicio = NULL; } int main(void) { ListaSimples *l = inicializaLista(); int escolha=0; char name[20]; printf("Reservator v0.1\n"); printf("1 - Reservar Passagem\n2 - Cancelar Passagem\n3 - Verificar Passagem Reservada\n4 - Mostrar Passageiros\n"); while(escolha<1 || escolha>4) { scanf("%d",&escolha); } gets(name); colocaDado(name,l,0); imprimeListaSimples(l); colocaDado("ass",l,1); imprimeListaSimples(l); retiraDado(l,0); return 0; } Eu empaquei, e minhas dúvidas são as seguintes: 1) Como eu faço para enviar um nome, com espaços, para a lista??? 2) Como eu faço para a lista se organizar em ordem alfabética? (pensei em usar o strcmp, mas n sei como fazer isso junto da lista), 3) Como eu imprimo esses nomes da lista? Por favor, me ajudem To desesperado pois tenho prova de fisica na quinta, mesmo dia da entrega desse exercício que vale nota..
  24. C Mesmo erro em dois programas diferentes

    Sou iniciante na linguagem C e estou passando por uns maus bocados no momento que os meus programas entram em uma estrutura condicional ou laço de repetição. O programa para de funcionar e vem aquela mensagem chata que o windows sempre dá quando encontra um erro, mas até agora eu não consegui identificar onde está o erro. São programas simples, porque eu estou revendo apenas alguns conceitos que já aprendi. Precisa urgentemente da ajuda de vocês, porque estarei realizando provas nesse fim de semana e esses conceitos com certeza irão cair! O erro só aparece nesse programa quando eu digito o segundo número do laço: #include <stdio.h> #include <stdlib.h> #include <locale.h> #include <cstdlib> int main (void) { int num[5]; int soma = 0; setlocale (LC_ALL, "portuguese"); for (int i= 0; i <= 4 ; i++ ) { printf ("\nDigite o %d ° número = ", i+1); scanf ("%d",num); } for (int i=0;i<=4;i++) { soma += num; } printf ("A soma dos 5 números é %d", soma); system ("pause"); return 0; } Esse é mais complicado e dá erro logo que eu digito o número #include <stdio.h> #include <cstdlib> #include <locale.h> #include <conio.h> int main (void) { int c, num; setlocale(LC_ALL, "Portuguese"); printf ("Digite um número = "); scanf ("%d",num); int cont = 1; for (c=2;c<=num;c++) { if (num % c != 0) { cont ++; if (cont == num) { printf ("\n%d é um número primo", num); } } else { printf ("\nO número %d é múltiplo de %d", num , c); break; } } if (num % 2 == 1) { printf ("\nO número %d é impar!",num); } else { printf ("\nO número %d é par!",num); } system ("pause"); return 0; }
  25. C Exercício sobre funções dando erro

    Analise o código abaixo e marque a alternativa correta: I – A assinatura da função “AreaTriangulo” está incorreta. Deveria ser alterada para float AreaTriangulo (x, y) II – Para que o programa apresente o valor correto do calculo da área de um triangulo, a função “AreaTriangulo” deve ser alterada, trocando “return 0” por “return result” III – O programa não compila Escolha uma: a. Os itens II e III estão corretos b. Todos os itens estão falsos c. Os itens I e II estão corretos d. Somente o item II está correto e. Todos os itens estão corretos OBS: Quando executo não aparece nada do programa, a tela fica vazia. Não sei onde está o erro.

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

×