Ir ao conteúdo
  • Cadastre-se

LordScrew

Membro Júnior
  • Posts

    19
  • Cadastrado em

  • Última visita

Reputação

4
  1. @devair1010 , fiz o que você falou e acho que consegui, amigo haha . Ficou assim: #include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <conio.h> #include <string.h> #include <windows.h> #define u GetStdHandle(STD_OUTPUT_HANDLE) #define textcolor_2(l,f) SetConsoleTextAttribute(u,l+(f<<4)); #define TAM 51 int main(void){ char nome[TAM][25], tel[TAM][25], cpf[TAM][25], idade[TAM][25],aux_y[25]; int i=1,g=0,contador=0; int sab[TAM], sabcpf[TAM], sabidade[TAM], sabtel[TAM];// vetor que irá receber as iniciais dos nomes do { textcolor_2(14,0); printf("Entre com o nome da pessoa:"); textcolor_2(11,0); scanf("%s",nome[contador]); printf("Entre com o CPF da pessoa:"); scanf("%s",cpf[contador]); textcolor_2(14,0); printf("Entre com a idade da pessoa:"); scanf("%s",idade[contador]); printf("Entre com o telefone da pessoa:"); scanf("%s",tel[contador]); printf("===============================================\n"); textcolor_2(11,0); printf("Nome -----: %s\n",nome[contador]); printf("CPF ------: %s\n",cpf [contador]); printf("Idade ----: %s\n",idade[contador]); printf("Telefone -: %s\n",tel [contador]); printf("===============================================\n"); textcolor_2(10,12); printf("\n ==> O valor de g eh %d \n",g); sab[g]=nome[contador][0]; // aqui é atribuido ao vetor sab as iniciais dos nomes sabcpf[g]=cpf[contador][0]; sabidade[g]=idade[contador][0]; sabtel[g]=tel[contador][0]; printf(" sab inicial do nome -: %c \n\n",sab[g] );/* p/ imprimir letras use %c */ printf(" contador ------------: %d \n\n",contador); textcolor_2(15,0); printf("Caso deseje continuar registrando dados digite qualquer número exceto o 0.\n"); printf("Caso contrario, digite 0. "); scanf("%d",&i); /*if(i!=0){*//* precisa incrementar sempre */ g++; /*}*/ contador++; /* usado para inserir no vetor nome e como contador de registro */ }while(i!=0); // O algoritmo BubbleSort a seguir ordena apenas as iniciais dos nomes pelos valores da tabela ASCII int cont, y, aux, c; for(cont=0; cont<g; cont++){ for(y=cont+1; y<g; y++){ if( sab[cont] > sab[ y]){ printf("cont= %3d y= %3d\n",sab[cont],sab[y]); /* ver as antes da troca */ aux = sab[cont] ; sab[cont] = sab[ y] ; sab[y] = aux ; printf("cont= %3d y= %3d Tecle !\n",sab[cont],sab[y]);getch(); /* ver depois da troca */ strcpy(aux_y ,nome[cont]); /* organizar por nome */ strcpy(nome[cont],nome[ y]); strcpy(nome[y] ,aux_y ); strcpy(aux_y ,cpf[cont]); strcpy(cpf[cont],cpf[ y]); strcpy(cpf[y] ,aux_y ); strcpy(aux_y ,idade[cont]); strcpy(idade[cont],idade[ y]); strcpy(idade[y] ,aux_y ); strcpy(aux_y ,tel[cont]); strcpy(tel[cont],tel[ y]); strcpy(tel[y] ,aux_y ); } } } int v; for(v=0; v<g; v++){ FILE *file; file = fopen("bd.txt", "a"); fprintf(file,"==========================================\n"); fprintf(file,"Nome: %s\n", nome[v]); fprintf(file,"CPF: %s\n", cpf[v]); fprintf(file,"Idade: %s\n", idade[v]); fprintf(file,"Telefone: %s\n", tel[v]); fprintf(file,"==========================================\n\n"); fclose(file); printf("==========================================\n"); printf("Nome: %s\n", nome[v]); printf("CPF: %s\n", cpf[v]); printf("Idade: %s\n", idade[v]); printf("Telefone: %s\n", tel[v]); printf("==========================================\n\n"); } textcolor_2(12,14); printf("\n Vetores em ordem crescente \n\n"); for(c=0; c<g; c++){ textcolor_2(14,0); printf("O valor da posição %2d no vetor sab eh %3d\n",c,sab[c]); /* letras são caracteres %c */ textcolor_2(11,0); printf("O Nome Na Posicao %2d Do Vetor Nome eh %s\n",c,nome[c]); } return 0; }
  2. @devair1010 , muito obrigado, amigo . Seu código ficou bem mais completo. Então, eu usei o seu para tentar fazer o que inicialmente estava proposto no exercício, de organizar esses dados em ordem no arquivo usando os nomes. Fiz que nem você de colocar os dados dentro dos vetores, mas aí quando vou no arquivo os dados estão fora de ordem, mas os nomes ficam certinho. Explicando melhor, os nomes ficam em ordem alfabética, porém os dados referente ao nome da pessoa são de outra pessoa. Eu acrescentei um ciclo for e mudei algumas linhas referente ao file. #include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <conio.h> #include <string.h> #include <windows.h> #define u GetStdHandle(STD_OUTPUT_HANDLE) #define textcolor_2(l,f) SetConsoleTextAttribute(u,l+(f<<4)); #define TAM 51 int main(void){ char nome[TAM][25], tel[TAM][25], cpf[TAM][25], idade[TAM][25],aux_y[25]; int i=1,g=0,contador=0; int sab[TAM], sabcpf[TAM], sabidade[TAM], sabtel[TAM];// vetor que irá receber as iniciais dos nomes do { textcolor_2(14,0); printf("Entre com o nome da pessoa:"); textcolor_2(11,0); scanf("%s",nome[contador]); printf("Entre com o CPF da pessoa:"); scanf("%s",cpf[contador]); textcolor_2(14,0); printf("Entre com a idade da pessoa:"); scanf("%s",idade[contador]); printf("Entre com o telefone da pessoa:"); scanf("%s",tel[contador]); printf("===============================================\n"); textcolor_2(11,0); printf("Nome -----: %s\n",nome[contador]); printf("CPF ------: %s\n",cpf [contador]); printf("Idade ----: %s\n",idade[contador]); printf("Telefone -: %s\n",tel [contador]); printf("===============================================\n"); textcolor_2(10,12); printf("\n ==> O valor de g eh %d \n",g); sab[g]=nome[contador][0]; // aqui é atribuido ao vetor sab as iniciais dos nomes sabcpf[g]=cpf[contador][0]; sabidade[g]=idade[contador][0]; sabtel[g]=tel[contador][0]; printf(" sab inicial do nome -: %c \n\n",sab[g] );/* p/ imprimir letras use %c */ printf(" contador ------------: %d \n\n",contador); textcolor_2(15,0); printf("Caso deseje continuar registrando dados digite qualquer número exceto o 0.\n"); printf("Caso contrario, digite 0. "); scanf("%d",&i); /*if(i!=0){*//* precisa incrementar sempre */ g++; /*}*/ contador++; /* usado para inserir no vetor nome e como contador de registro */ }while(i!=0); // O algoritmo BubbleSort a seguir ordena apenas as iniciais dos nomes pelos valores da tabela ASCII int cont, y, aux, c; for(cont=0; cont<g; cont++){ for(y=cont+1; y<g; y++){ if( sab[cont] > sab[ y]){ printf("cont= %3d y= %3d\n",sab[cont],sab[y]); /* ver as antes da troca */ aux = sab[cont] ; sab[cont] = sab[ y] ; sab[y] = aux ; printf("cont= %3d y= %3d Tecle !\n",sab[cont],sab[y]);getch(); /* ver depois da troca */ strcpy(aux_y ,nome[cont]); /* organizar por nome */ strcpy(nome[cont],nome[ y]); strcpy(nome[y] ,aux_y ); } } } int v; for(v=0; v<g; v++){ FILE *file; file = fopen("bd.txt", "a"); fprintf(file,"==========================================\n"); fprintf(file,"Nome: %s\n", nome[v]); fprintf(file,"CPF: %s\n", cpf[v]); fprintf(file,"Idade: %s\n", idade[v]); fprintf(file,"Telefone: %s\n", tel[v]); fprintf(file,"==========================================\n\n"); fclose(file); printf("==========================================\n"); printf("Nome: %s\n", nome[v]); printf("CPF: %s\n", cpf[v]); printf("Idade: %s\n", idade[v]); printf("Telefone: %s\n", tel[v]); printf("==========================================\n\n"); } textcolor_2(12,14); printf("\n Vetores em ordem crescente \n\n"); for(c=0; c<g; c++){ textcolor_2(14,0); printf("O valor da posição %2d no vetor sab eh %3d\n",c,sab[c]); /* letras são caracteres %c */ textcolor_2(11,0); printf("O Nome Na Posicao %2d Do Vetor Nome eh %s\n",c,nome[c]); } return 0; }
  3. Pessoal, to com um exercício aqui em linguagem C que diz o seguinte: "Crie um arquivo texto bd.txt, preencha com nomes, tel, cpf, idade e depois ordene pela técnica booble sort, usando os nomes.". Eu consegui fazer o código para criar o arquivo e fiz a estrutura de repetição para recolher os dados. O problema é que não to conseguindo implementar o bubblesort. #include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <conio.h> #include <string.h> #define TAM 51 main(void){ char nome[TAM], tel[TAM], cpf[TAM], idade[TAM]; int i = 1; int contador = 0; int g = 0; // variável para usar no bubblesort int sab[TAM]; // vetor que irá receber as iniciais dos nomes FILE *file; file = fopen("bd.txt", "a"); do { contador++; // incremento apenas para ver quantas vezes o loop é realizado printf("Entre com o nome da pessoa:"); scanf("%s", &nome); fprintf(file, "===============================================\n"); fprintf(file,"Nome: %s\n", nome); printf("Entre com o CPF da pessoa:"); canf("%s", &cpf); fprintf(file,"CPF: %s\n", cpf); printf("Entre com a idade da pessoa:"); scanf("%s", &idade); fprintf(file,"Idade: %s\n", idade); printf("Entre com o telefone da pessoa:"); scanf("%s", &tel); fprintf(file,"Telefone: %s\n", tel); fprintf(file, "===============================================\n\n"); printf("===============================================\n"); printf("Nome: %s\n", nome); printf("CPF: %s\n", cpf); printf("Idade: %s\n", idade); printf("Telefone: %s\n", tel); printf("===============================================\n"); printf("\n\n === O valor de g e %d\n", g); sab[g]=nome[0]; // aqui é atribuido ao vetor sab as iniciais dos nomes printf("%d", sab[g]); printf("\n\ncontador: %d\n\n", contador); printf("Caso deseje continuar registrando dados digite qualquer número exceto o 0. Caso contrario, digite 0.\n"); scanf("%d", &i); if(i!=0){ g++; } }while(i!=0); // O algoritmo BubbleSort a seguir ordena apenas as iniciais dos nomes pelos valores da tabela ASCII int cont, y, aux, c; for(cont=0; cont<=g; cont++){ for(y = 0; y<g; y++){ if (sab[y]>sab[y+1]){ aux = sab[y]; sab[y]=sab[y+1]; sab[y+1]=aux; } } } printf("Vetores em ordem crescente\n\n"); for(c=0; c<=g; c++){ printf("O valor da posição %d no vetor sab e %d\n", c, sab[c]); } fclose(file); } Eu to há 3 dias tentando fazer o bubblesort e não consigo
  4. @Tarcio André Cara, eu esqueci de mencionar que queria pegar um fx8300, mas de qualquer forma a mobo 970 não se aplica para o fx 4100? E essas memorias de 1333MHz têm algum problema também?
  5. Olá, pessoal! Eu tenho um pc com as seguintes configurações: MOBO: m5a88-m (é veia mesmo rsss) Memória: 2x4GB 1333Mhz Markvision Fonte: corsair cx430 Processador: fx-4100 (não é black edition) A minha mobo queimou e queria aproveitar pra fazer um upgrade em torno dos 1000$. Estava pensando em pegar uma placa-mãe 970 e colocar uma gt 1030, rx 550, uma gtx 1050 ou gtx 1050ti Eu não vou trocar de plataforma agora porque o ryzen 5 1400 já está na casa dos 700 rssss em novembro ele estava uns 430. Fora as ddr4 que estão um tiro. Minha experiência como jogador é um tanto infeliz já que jogo desde 2012 com o chipset de uma mobo que nem pra fx é hahaha. Quero jogar world of warcraft, CSGO, PUBg, mas nada nos 4k. Estive pensando também em trocar o processador por um fx 8300 mais pra frente. O que acham? Eu pretendo ficar um bom tempo com a máquina se rodar os jogos de boa e só trocar de plataforma bem mais pra frente quando baratearem as peças.
  6. @Aegir , entendi, amigo. Acho que vou fazer isso então porque sempre fico falando em fazer o upgrade e não faço hahaha. Faz muita diferença da 1050 para a 1050ti? A ti é quase o dobro do preço. E as memórias com frequência de 1333 tem algum problema na 970? Eu quero jogar de boas os jogos que falei mas nada nos 4k ou full HD haha
  7. @Aegir entendi, amigo. Obrigado por ser esclarecedor. Te falando da minha infeliz experiência como jogador: Eu uso esse setup desde 2012, ou seja, tenho jogado pelo vídeo de um chipset que nem pra fx serve rsrsrs. Estive pensando também em pegar uma mobo 970, manter o processador e pegar uma rx 550 ou gtx 1050. O que você acha? A fonte seguraria de boa? Outra coisa: esse meu processador fx 4100 é de 2011 e não é black edition. Muda muita coisa em relação ao seu? Abraço!
  8. @Aegir Entendi. Mas compensa mesmo pegar o ryzen 3? E o que você acha desse meu setup antigo? Não dá para aproveitar nada? Eu queria gastar o mínimo possível pra jogar world of warcraft, PUBg e CSGO de boa rsrs Abraços!
  9. Boa noite, pessoal! Criei um tópico aqui em novembro pedindo sugestões sobre melhorar meu setup antigo ou partir pra um setup ryzen mas com a subida do preço desse último creio que não venha mais a valer a pena no meu orçamento. Meu setup é o seguinte: MOBO: m5a88-m (é veia mesmo rsss) Memória: 2x4GB 1333Mhz Markvision Fonte: corsair cx430 Processador: fx-4100 Como o título sugere, minha MOBO queimou e gostaria de sugestões do que fazer. 1º- Seria interessante pegar só uma placa-mãe e continuar com esse setup ou pego um fx-8300 junto já que está 289$ ? 2º- Teria alguma placa-mãe com um chipset razoável para jogar algumas coisas de modo que eu possa colocar uma placa de vídeo sem problemas, mais pra frente? 3º- Essa fonte aguenta de boa o fx-8300 e uma placa de video boa? 4º- Se esse setup não valer a pena de jeito nenhum, tem algum setup ryzen por volta dos 2300$? Estava pensando em um daqueles gamers da pichau(em última instância) Estou totalmente aberto a vossas sugestões. É isso, meus amigos
  10. @Noodle , parabéns pela iniciativa, brother! Só tenho umas dúvidas nesse setup da amd de até 2600$: *Seria uma boa mesmo pegar essa mobo a320? Andam dizendo bastante pra pegar um chipset b350. *Essa placa de vídeo fica melhor que uma gtx 1050ti? *Esse setup que você passou é pra overclocking? Abraços
  11. @MarceloSouzaB1 , você recomendaria A320 mesmo? O pessoal anda dizendo pra pegar o chipset B350 mas é um tanto mais caro.
  12. Valeu a atenção, galera! Sanei bastante dúvida quanto a esse pc aqui. Um abraço a todos
  13. @maia12 , o problema é que eu tenho medo dessa minha mobo gargalar o fx-8300 e a placa de vídeo que eu puser, porque ela é bem antiga(2011). Se isso acontecer vou ter que pegar outra mobo amd3+ só pra o processador e placa de video. Eu acho que nunca valeu tanto a pena fazer um setup atualizado como agora já que o ryzen é recente e não está caro como a intel pelo que analisei, porém em questão de custo/benefício não sei ao certo se vale mais a pena fazer o upgrade desse aqui ou pegar um setup ryzen. Eu estive analisando também a sua sugestão sobre por a memoria 2666 e a mobo b350, e me parece que é para overclocking, certo? Dizem que isso força muito o chip e eu queria um setup pra durar mesmo. Você acha que dá pra fazer o overclocking numa boa sem desgastar os componentes? Eu vou abrir um outro tópico pedindo conselhos sobre um setup ryzen porque acabei desviando bastante o foco desse tópico aqui rsrs.
  14. @maia12 Entendi. Problema também é que eles não dão detalhes da memória e hd. Sabe se eles põem 2 pentes de 4GB ou é só 1 de 8GB? Seria viável pegar o setup agora e se eu quiser trocar a mobo e memória depois?
  15. @Phoenyx Beleza então, manolo. Eu estava pensando em pegar um daqueles setups já prontos da pichau pra não me preocupar com lance de gargalo e compatibilidade. Sabe me dizer se eles compensam, a qualidade e se dão gargalo?

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