Ir ao conteúdo

devair1010

Membro Pleno
  • Posts

    6.318
  • Cadastrado em

  • Última visita

Tudo que devair1010 postou

  1. @LucasrodriguesP usar malloc e realoc não tem nenhuma dificuldade , eles são apenas comandos normais da linguagem C .e dará certo , e essas outras táticas de criar vetor maior que o necessário se tornam complicadas e o código fica mais extenso .
  2. @bils55 no enunciado não diz nada sobre criar uma função , mas se o que quer é isso , e o número não é passado por input , mas sim enviados por parâmetro para a função e o comando return leva o resultado de volta para onde a função foi chamada , e basta ter uma variáveL que receba esse valor retornado , e se você já tiver feito um código sobre esse exercício , poste ele aqui para ajudarmos .
  3. @LucasrodriguesP você postou no tópico de C++ , mas esse seu código não tem Quase nada de C++ , e tem mesmo tudo de C , em C++ seria como bem disse @Flávio Pedroza e em C você pode usar a alocação dinâmica com o uso de malloc e realloc , e seu código modificado poderia ser assim : #include <iostream> #include <stdlib.h> using namespace std; int main() { int* vet; vet = (int*) malloc ( 1 * sizeof(int) ); int x, z = 0,idade,media,cont=0,i; cout<<"Quantas pessoas participaram da entrevista?"; cin >> x; while( z < x ) { cout << z << " Pessoa" << endl; cout<<"Idade:"; cin >> idade; z++; vet[cont] = idade; cont++; vet = ( int* ) realloc ( vet , 1 ); } for(i=0; i<cont; i++) { cout << "Idade Na PosiCAo " << i << " " << vet[i] << endl; } free(vet); return 0; }
  4. @Wesley Araujo Fernandes e essa parte do enunciado diz , Exiba os resultados de tempo de cada algoritmo para cada vetor em um arquivo benchmark.csv, , e então você pode usar o comado "clock_t tempo;" , junto com a função "clock();"" , para determinar o tempo gasto , como bem explicado messe tópico : https://www.clubedohardware.com.br/forums/topic/1031279-resolvido-medir-tempo-de-execução-em-c/
  5. qual é a parte do programa que já estava implementado ? , pois essa função "int main" , não corresponde ao enunciado ... ,,, ,,, e seu código não está compilando , tem erros de syntaxes , como bem disse @arfneto , e corrigido apenas para compilar , seu código ficaria assim : #include <stdio.h> int funcao( int matricula, float nota_1, float nota_2, float nota_3 ) { int media; media = ( nota_1 + nota_2 + nota_3 ) / 3 ; if( media >= 7 ) { printf ("%d Aprovado", matricula); } else { if( media <= 5 ) { printf ("%d Reprovado", matricula); } else { if( media > 5 && media < 7 ) { /// } bfecha_chave ? } printf("\t%d RecuperaCAo", matricula); /// tres Barras por Que no codeblocks fica mais visiveL /// Melhor deixar como em inglês , sem acentuacao mesmo } } return 0; } int main() { int matricula; printf("digite a MatricuLa "); scanf("%d", &matricula); float nota_1, nota_2, nota_3; printf("digite a Noata 2 "); scanf("%f", &nota_1); printf("digite a Noata 1 "); scanf("%f", &nota_2); printf("digite a Noata 3 "); scanf("%f", &nota_3); printf("\n\n\n"); funcao(matricula, nota_1, nota_2, nota_3); printf("\n\n\n"); return 0; }
  6. @Ronald011208 poste o enunciado do exercício , sem isso fica difícil , saber em podemos ajudar .
  7. @Rosa Isabelle Campos Qual código ? , você pode postar ele aqui ? ,
  8. @Wesley Araujo Fernandes faz parte do exercício interpretar o enunciado , os métodos de Ordenação de vetores exstem muitos mesmos , e ali está pedindo apenas três , que são os mis conhecidos , e uma função para cada um , e então faça um código e poste ele aqui e ajudaremos .
  9. @Marcelo dos Santos e o seu vetor tempmedia não armazena nada , mas apenas o último valor de temperatura , pois você criou e inicializou a variáveL media=0 , dentro do Loop , for(j=0;j<10;j++) { float media=0; /// vai zerar toda as vezes que repete o loop media=media+temperatura[j]; /// soma com que esta no vetor } } tempmedia[0]=media/10; /// armazena Apenas o ultimo e poderia ser assim : float media = 0; /// cria e inicializa a variaveL media com valor zero for( j=0; j<10; j++ ) { media += temperatura[j]; /// soma com o que esta no vetor } tempmedia[0] = media / 10; /// armazena A Media
  10. @Felipe Bandechi se você souber o tamanho horizontal e vertical vai funcionar bem , mas se modificar o tamanho vai precisar modificar todos os outros valores também , nos Loop's e nos IF's , e um outro modo poderia ser controlando a posição do Cursor , e se você estiver usando o windows , então poderia usar um código parecido com esse aqui : #include <iostream> #include <windows.h> #include <locale.h> using namespace std; int main() { HANDLE _h = GetStdHandle(STD_OUTPUT_HANDLE); setlocale( LC_ALL, "Portuguese"); int horizontal = 10, vertical = 10; char icon = '*'; for (int i = 0; i <= vertical; i++ ) { for (int j = 0; j <= horizontal; j++ ) { if (j == 0 || j == 10 || i == 0 || i == 10) { cout << icon << " " ; Sleep(50); } else { cout << " "; Sleep(50); } } cout << "\n" ; } COORD c; c.X = horizontal / 2; c.Y = vertical / 2; SetConsoleCursorPosition( _h , c ); cout << "Hello World!\n\n\n\n\n" ; cin.get(); return 0; }
  11. @Felipe Bandechi poste seu código , para vermos como está e em que podemos ajudar , e também você pode usar o "\r" "Return Carriage" e escrever sua msg se estiver no meio , escrevendo o Asterísco e em seguida a msg , depois de já ter escrito os Asteríscos na mesma Linha .
  12. @beggarjs ok , e não havia visto o anexo , e nele não vai funcionar mesmo , não , porque "cod1.idade" é do tipo int , e o fgets só pega string's , que é do tipo char , mas que armazena mais de um caractere ;
  13. @beggarjs está quase certo , e para usar atoi precisa de uma string mesmo , e essa aux é a ideaL , e nos fgets coloque em a menos para o newLine , e também ao pegar uma string com fgets e na hora que for escrever essa mesma string na tela , vai pular para a linha de baixo , e isso não tem nenhum problema , mas causa desorganização no formate das escritas , e então é melhor remover esse newLine pego pelo fgets , com esse procedimento cad1.nome[strlen(cad1.nome) - 1 ] = 0; /// remover o newLine pego pelo fgets e seu código ficaria assim : #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> struct cadastro { char nome[50]; int idade; char rua[50]; int numero; }; int main() { char aux[50]; struct cadastro cad1; printf("Digite seu nome: "); fgets(cad1.nome, 49, stdin); /// deixar um espaco para o "\o" cad1.nome[strlen(cad1.nome) - 1 ] = 0; /// remover o newLine pego pelo fgets printf("Digite sua idade: "); fgets(aux, sizeof(aux), stdin); /// deixar um espaco para o "\o" cad1.idade = atoi(aux); printf("Digite sua rua: "); fgets(cad1.rua, 49, stdin); /// deixar um espaco para o "\o" cad1.rua[strlen(cad1.rua) - 1 ] = 0; /// remover o newLine pego pelo fgets fgets(aux, sizeof(aux), stdin); /// deixar um espaco para o "\o" cad1.numero = atoi(aux); /// convet string para int printf("\nNome ---> %s\n\ \rIdade --> %d\n\ \rRua ----> %s\n\ \rNumero -> %d\n\ \r\t Tecle\n\n\n", cad1.nome , cad1.idade , cad1.rua , cad1.numero); /// um printf já resolve e com mais velocidade getch(); return 0; }
  14. @beggarjs @beggarjs o sizeo(); calcula automaticamente a qtd de de caracteres da string , assim facilita pois o programador não precisa lembrar o tamanho declarado de uma string , e acontece de mesmo se lembrando , ainda assim , colocar errado ; igual nesse seu codigo , voce colocou o valor 50 mas precisa ser 49 , pois precisa de um espaco para o '\0' ou apenas 0 , finalizador de string , e tambem em outros sistermas diferentes de onde o programa foi criado , o tamanho dos dados serao diferentes , e o sizeof resolve isso facilmente . mas tambem pode especificar com o valor , igual voce colocou , mas deixando um espaco para finalizar a string .
  15. @beggarjs esse erro é comum , quando usa scanf , pois ele não pega o newLine , tecla Enter do teclado , e quando o fgets vai pegar , o newLine está lá no buffer do teclado , e ele pega o newLine , e nem espera que seja digitado qq coisa , //bloco 2 printf("Digite sua idade: "); scanf("%d",&cad1.idade); //bloco 3 printf("Digite sua rua: "); fgets(cad1.rua, 50, stdin); e uma solução poderia ser não usar o scanf e apenas o fgets , e converter para inteiro usando a função atoi //bloco 2 char str[20]; printf("Digite sua idade: "); /// scanf("%d",&cad1.idade); fgets(str , sizeof(str) , stdin); cad1.idade = atoi( str ); //bloco 3 printf("Digite sua rua: "); fgets(cad1.rua, 50, stdin);
  16. @Danilo Do Carmo No portugol studio é melhor que o visualG , e Qual o objetivo ? , e esse código é praticamente um visualG , bastando apenas substituir as chaves "{ }" , sendo que essa primeira "abre_chaves" pode ser deletada , e a segunda "fecha_chaves" substitua por "fimse" , e se você tiver um enunciado desse exercício , poste ele aqui , para saber o esse programa deveria fazer .
  17. @lsnkesp a altura já está determinada como sendo 2.80 mt , então precisa pegar do usuário o valor da Largura e do Comprimento , e depois multiplicar pela Altura e como são duas paredes na largura e duas no comprimento , multiplique os dois por dois , e esse comando "ceil" foi bem colocado , pois ele faz o arredondamento para cima , e seu código ficaria assim : #include <stdio.h> #include <math.h> int main(void) { float largura, altura,comprimento, totalArea, area,L, quantidadeLatas, porta = 0.80 * 2.10; printf("Obs.: Altura da parede (Pe-direito ,\n\ \rde acordo com o enunciado): 2.80\n"); printf("Largura -----: "); scanf("%f", & largura); printf("Comprimento -: "); scanf("%f", & comprimento); area = largura * 2.80 * 2; /// o comodo tem duas paredes na largura printf("\n"); printf("Area da Largura -------= %5.2f\n",area); area += comprimento * 2.80 * 2; /// o comodo tem duas paredes no Comprimento printf("Area do Comprimentos --= %5.2f\n",area); totalArea = area - porta; printf("Area da Porta ---------= %5.2f\n",porta); printf("Area TotaL - a porta --= %5.2f\n",totalArea); L = totalArea / 3.0; /// qtd de mt's de pintura por Lata printf("qtd de Litros ---------= %5.2f\n",L); quantidadeLatas = L / 5.0; printf("quantida de Latas -----= %5.2f\n",quantidadeLatas); printf("\nUma vez que não eh possível utilizar latas de tinta fracionadas,\n\ \rserah necessario utilizar %.1f lata", ceil(quantidadeLatas)); if( quantidadeLatas >= 2.0)printf("s");printf(" de tinta . . . !"); printf("\n\n\n"); return 0; /// para que o "()" ? }
  18. @Leotanis Leite Moraes converte com o ".parse" ,
  19. @Chewbaccaun você quer mudar a cor ou escrever o nome da cor ? , e se você estiver usando o windows , você pode usar essa função textcolor : #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <windows.h> #define _h GetStdHandle(STD_OUTPUT_HANDLE) int textcolor( int , int );/// prototipo de funcao int main (void) { int cor_antes,fundo_antes,cor; HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_SCREEN_BUFFER_INFO c; if(GetConsoleScreenBufferInfo(h, &c)) { cor = ( c.wAttributes & 0xFF); cor_antes = ( c.wAttributes & 0xFF) & 0x0F; fundo_antes = ((c.wAttributes & 0xFF) >> 4) & 0x0F; } char string1 [20]; printf("Entre com string1\n"); scanf("%s",&string1); textcolor(15,12); /// letra verde em fundo vermelho printf("String em azul %s\n",string1); textcolor(cor_antes,fundo_antes); system("pause"); return 0; } int textcolor( int letras , int fundo ) { SetConsoleTextAttribute( _h , letras +( fundo << 4 ) ); return 0; } , que modifica cor de letras e do fundo da tela , .
  20. @João Vitor Cegatto usando a função atoi , "Array to int" , ou atof , "Array to float" , e seu vetor para a struct foi criada contendo o valor zero de elemento , e dará algum tipo de erro , e seu código ficaria assim : #include <stdio.h> #include <string.h> struct vacina { int codigo ; char nome [50]; char cpf [20]; char vacina[30]; char data [12]; int lote ; }; int i=0, j, k; /// variavel i vale zero int main() { char str[20]; struct vacina cadastro[i]; /// o vetor de struct ,cadastro , /// terá zero elementos ou seja nenhum ! /// assim não vai armazenar printf ("Seja bem vindo ao sistema,\n\ \rdigite um valor para ser redirecionado\n\ \ra sua respectiva funcao :\n\ \r\tMenu\n"); do { printf(" 1 : Cadastrar uma nova ficha. \n"); printf(" 2 : Buscar uma ficha ja cadastrada.\n"); printf(" Outro valor: Sair do sistema. \n"); /// scanf ("%d", &k); fgets(str , sizeof(str) , stdin); k = atoi(str); printf("valor de K= %d\n",k); }while(k==1||k==2); return 0; }
  21. @Leotanis Leite Moraes a tag desse topico eh C , entao parece que vai ser em linguagem C mesmo ,
  22. @Luis_Gustavo59 olá , e aí conseguiu fazer seu código de jogo de damas ? ,
  23. @ticobrai pode usar for sim , e seria melhor você postar o código inteiro todo mesmo , para podermos testar , e use o botão <> CODE , que está desenhado lá na barra de ferramentas da janela de postar , e então seu código corrigido ficaria assim : #include <stdio.h> /// precisa dessa biblioteca na linguagem C int main() /// precisa dessa função principal em todos os programas em C { int N_az,Mut=0,A,B,i; /// faltou esse ponto_e_virguLA printf("\n informe o numero de Azulejo:"); scanf("%d%d%d",&N_az , &A, &B); /// faltou pegar os valores de A e B for(i=1; i<N_az; i++) /// esse Loop testa todos os numeros { /// para saber se eh MultipLo if(i%A == 0) /// "Mult" variaVel mult não foi criada { /// o simbolo ( % ) pega o resto da divisao Mut++; /// incrementa a qtd de multiplos } } /// depois de fazer as verificacoes printf("\n A Qtd de Mutiplos eh -: %d\n",Mut); /// escreve o resultado contendo a qtd de multiplos na tela return 0; /// retorna para o windows com valor zero } e ainda faltou algumas coisas , como fazer o cálculo do outro numero , o B , e ainda finalizar o programa sem fazer nenhum cálculo , se forem digitados zeros . e você não respondeu se vai mandar esse código para o beecrowd , pois como disse o @Leotanis Leite Moraes , tem muitos detalhes e um deles é colocar uma Queba de linha no final no último printf .
  24. @Darlei Oliveira pode usar essas mesmo , porém elas de 3600mhz vai funcionar com o limite da placa , e se essa placa-mãe é de 3200 MHz , então ficará nessa velocidade mesmo .não precisa mexer em nada a placa configura automático .
  25. @ticobrai não , pois o enunciado diz que os azulejos foram posicionados em uma linha Reta , igual está nesse desenho que postei ali acima , onde os números de 1 a 12 são a qtd de azulejos e esses quadrados são os próprios azuleios , então serão contados apenas os azulejos com os números que sejam múltiplos desses dois números pegos na entrada .

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!