Eliminando elementos repetidos de uma sequência
Publicado por Perfil removido 20/06/2007
[ Hits: 21.954 ]
Através desse programa, é possivel ler o número de elementos de um vetor com capacidade máxima de 1000 números.
Para os que se repetem, escrever a quantidade de vezes em que aparecem repetidos.
Posteriormente, formar um novo conjunto excluindo os elementos repetidos.
#include <stdio.h> #include <stdlib.h> #define max 1000 main() { char opcao=0; int n=0, var1, var2, var3, registrador=0, contador; int vet1[max], vet2[max]; /*As variáveis var1, var2, var3 sao usadas nos laços e em artificios de troca*/ while(opcao!='x') { printf(" %c------------------------------------------------------------------------%c\n",218,191); printf(" | Atraves desse programa, e possivel ler o numero de elementos de um |\n"); printf(" | vetor com capacidade de 1000 numeros. Para os que se repetem, escrever |\n"); printf(" | a quantidade de vezes em que aparecem repetidos. Forma um novo conjunto|\n"); printf(" | excluindo os elementos repetidos. |\n"); printf(" %c------------------------------------------------------------------------%c\n\n",192,217); /*Menu de opcoes*/ printf(" %c--------%c\n",201,187); printf(" | MENU |\n"); printf(" %c----%c--------%c----%c\n",218,200,188,191); printf(" | (L)er |\n"); printf(" %c------------------%c\n",204,185); printf(" | (E)screver |\n"); printf(" %c------------------%c\n",204,185); printf(" | (F)ormar |\n"); printf(" %c------------------%c\n",204,185); printf(" | Fechar (x)|\n"); printf(" %c------------------%c\n",192,217); /*Lendo a opcao do menu*/ printf("\n Escolha uma opcao: "); scanf("%c", &opcao); /*Menu de opcoes*/ switch(opcao) { case 'L': case 'l': /*Lendo o numero de elementos do vetor.*/ n=0; while(n<=0 || n>max){ printf("\nDigite o numero de elementos da sequencia desejada: "); scanf("%d",&n); if(n<=0 || n>max) printf("\nNumero invalido.\n"); } /*Lendo os elementos do vetor*/ for(var1=0; var1<n; var1++){ printf("Digite o %d valor: ", var1+1); scanf("%d", &vet1[var1]); } /*Ordenando os elementos do vetor*/ for(var1=n-1; var1>=0; var1--){ for(var2=0; var2<var1; var2++){ if(vet1[var1]<vet1[var2]){ var3=vet1[var1]; vet1[var1]=vet1[var2]; vet1[var2]=var3; } } } printf("\nConcluido."); getch(); system("cls"); break; case 'E': case 'e': /*Verificando os numeros que se repetem, e quantas vezes se repetem.*/ contador=1; var3=0; var2=vet1[0]; vet2[n]=0; for(var1=1; var1<=n; var1++){ /*Comparando os numeros entre si.*/ if(var2==vet1[var1]) contador++; else if(contador>1){ printf("\nO numero %d se repete %d vez(es).\n", var2, contador-1); vet2[var3++]=var2; var2=vet1[var1]; contador=1; registrador++; } else{ vet2[var3++]=var2; var2=vet1[var1]; contador=1; } } /*Imprimindo uma mensagem caso nao exista numeros repetidos.*/ if(registrador==0) printf("\nNao ha numeros que se repetem na sequencia.\n"); printf("\nConcluido."); getch(); system("cls"); break; case 'F': case 'f': /*Imprimindo o vetor formado por elementos que se repetiram.*/ printf("\n O novo conjunto e formado por:\n "); for(var1=0; var1<var3; var1++) printf("%d ", vet2[var1]); printf("\n\nConcluido."); getch(); system("cls"); break; case 'X': case 'x': opcao='x'; default: system("cls"); break; } } }
gerenciador de historico de comandos
Nenhum comentário foi encontrado.
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
VMs e Interfaces de Rede desapareceram (12)
Instalação do drive do adaptador wiffi (7)