Struct, insercao, remocao, pesquisa, nao estou conseguindo fazer. [RESOLVIDO]

1. Struct, insercao, remocao, pesquisa, nao estou conseguindo fazer. [RESOLVIDO]

Kelyane
lokitakkk

(usa Ubuntu)

Enviado em 28/09/2009 - 20:14h

Oi galera do VOL...
entao estou com um algoritimo, esta meio incompleto ainda, e não está rodando, alguem pode me ajudar a fazer isso funciona...???

O que eu ja tenho...




int opcao;

struct ficha
{
int valor;
};

int busca(int x, ficha lista[], int n){
int indice=-1, i=0;
while(i<n){
if(lista[i].valor == x){
indice = i;
i = n;
}
else
i++;
}
return indice;
}

int insercao (int x, ficha lista[], int n){
if (busca(x, lista, n)==-1){
lista[n].valor=x;
n++;
}
else
cout << "Elemento já existe.";
getch();
}

int remocao(int x, ficha lista[], int n){
int indice;
indice=busca(x,lista,n);
if(indice!=-1){
for(int i=indice;i<n-1;i++){
lista[i].valor=lista[i+1].valor;
}
n--;
}
else
cout << "Elemento não existe";
getch();
}





int main(){
ficha lista[20];
int j, valor_procurado, indice;
srand ((unsigned) time(NULL));
while(1){
cout << "Digite qualquer tecla para iniciar geracao de lista";
getch();
cout << endl;
for(j=0; j<20; j++){
lista[j].valor = + rand() %100;
cout << " " << lista[j].valor << " ";
}
cout << "\n";
cout << "\nDigite uma opção: ";
cout << "\n<1> Inserir elemento ";
cout << "\n<2> Remover elemento ";
cout << "\n<3> Buscar elemento";
cout << "\n<4> Sair";
cin >> opcao;
while (opcao>=1 && opcao<=4){

switch (opcao){;
case (1): insercao();
break;
case (2): remocao();
break;
case (3): busca();
break;
case (4): sair();
break;
}
getch();
}

cout << "\n\nDigite o valor a ser procurado na lista: ";
cin >> valor_procurado;
indice = busca(valor_procurado, lista, 20);
if(indice == -1)
cout << "Nao ha na lista o valor procurado. ";
else
cout << "O elemento procurado está na posicao: " << indice+1;
getch();
system("cls");
}
return 0;
}




Obrigadao.. galera.. =*


  


2. ixi ninguem apareceu

Kelyane
lokitakkk

(usa Ubuntu)

Enviado em 28/09/2009 - 21:49h

ah!!! enfim, consegui por outro metodo...
depois eu coloco no Scrpit para quem quiser, valew...
=*


3. Re: Struct, insercao, remocao, pesquisa, nao estou conseguindo fazer. [RESOLVIDO]

Reginaldo de Matias
saitam

(usa Slackware)

Enviado em 29/09/2009 - 16:50h

ta ai o fonte com algumas alterações.
PS: mandei um e-mail pra vc também.
#include <stdio.h>
#include <stdlib.h>

struct ficha
{
int valor;
};

int busca(int x, ficha lista[], int n)
{
int indice, i;
indice=-1, i=0;
while(i<n)
{
if(lista[i].valor == x){
indice = i;
i = n;
}
else
i++;
}
return indice;
}

int insercao (int x, ficha lista[], int n)
{
if (busca(x, lista, n)==-1)
{
lista[n].valor=x;
n++;
}
else
printf("Elemento já existe.");
}

int remocao(int x, ficha lista[], int n)
{
int i,indice;
indice=busca(x,lista,n);
if(indice!=-1){
for(i=indice;i<n-1;i++){
lista[i].valor=lista[i+1].valor;
}
n--;
}
else
printf("Elemento não existe");
}

int main()
{
ficha lista[20];
int j, valor_procurado, indice, opcao;
srand ((unsigned) time(NULL));
while(1){
printf("Digite qualquer tecla para iniciar geracao de lista\n)";
for(j=0; j<20; j++){
lista[j].valor = + rand() %100;
printf( "%i\n", lista[j].valor);
}
printf("\n");
printf("\nDigite uma opção: ");
printf("\n<1> Inserir elemento ");
printf("\n<2> Remover elemento ");
printf("\n<3> Buscar elemento");
printf("\n<4> Sair");
scanf("%i", &opcao);
while (opcao>=1 && opcao<=4){

switch (opcao){;
case (1): insercao();
break;
case (2): remocao();
break;
case (3): busca();
break;
case (4): sair();
break;
}

}

printf("\n\nDigite o valor a ser procurado na lista: ");
scanf(%i", &valor_procurado);
indice = busca(valor_procurado, lista, 20);
if(indice == -1)
printf("Nao ha na lista o valor procurado. ");
else
printf("O elemento procurado está na posicao: %i\n" ,indice+1);
getch();
system("clear");
}
return 0;
}



4. Resolvido

Kelyane
lokitakkk

(usa Ubuntu)

Enviado em 30/09/2009 - 16:10h

Oi galera, consegui resolver.
depois coloco no script para quem quiser ver. =*






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts