Ir para conteúdo
Fórum Script Brasil
  • 0

duvida neste codigo


slip_

Pergunta

<_<

#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
struct Filme
{//inicio do struct
    string nome,genero,classificacao,resumo;
    int duracao, avaliacao;
};//final do struct

void adicionarFilmes(Filme filmes[],int tam,int i);
void pesquisa(Filme filmes[], int indices[]);
void imprimirFilmes(Filme filmes);

void main()
{//inicio do main
    //variaveis
        const int tam = 2;//variavel que declara quantos filmes poderam ser cadastrados
        int opc = 0;//variavel do, menu principal
        int opc1 = 0;//variavel do, menu busca
        Filme filmes[tam];
        //entrada
            do
            {//inicio do principal
            cout << "Escolha a opcao" <<endl<< "1 - Adicionar filmes" <<endl<< "2 - Buscar filmes" <<endl<< "3 - Sair" <<endl;
            cin >> opc;
                if (opc == 1)
                {//inicio do if1
                    for(int i = 0;i < tam;i++)
                        {//inicio do for
                            adicionarFilmes(filmes,tam,i);
                        }//final do for
                    system("cls");
                }//final do if1
                if (opc == 2)
                {//inicio do if2
                    do
                    {//inicio do, opcao de busca
                        cout << "Escolha a opcao que voce queira pesquisar os filmes" <<endl;
                        cout << "1 - Busca por titulo" <<endl<< "2 - Busca por genero" <<endl<< "3 - Busca por duracao" <<endl<< "4 - Busca por classificacao" <<endl<< "5 - Busca por avaliacao" <<endl<< "6 - Voltar ao menu anterior" <<endl;
                        cin >> opc1;
                        if (opc1 == 1)
                            {//inicio do if1, opc busca
                                system("cls");    
                                pesquisa(filmes,indices); //aki fala q não estou declarando o indices porque ? alguém pode me ajudar plz
                            }//final do if1, opc busca
                    system("cls");
                    }//final do,opca de busca    
                    while (opc1 != 6);
                }//final do if2    
            }//final do principal
            while (opc != 3);
}//final do main

void adicionarFilmes(Filme filmes[],int tam,int i)
{//inicio da funcao adicionar filme
    cout << "Informe o nome do filme" <<endl;
    cin.ignore(); getline(cin,filmes[i].nome);
    cout << "Informe o genero do filme" <<endl;
    cin >> filmes[i].genero;
    cout << "Informe a duracao do filme em minutos" <<endl;
    cin >> filmes[i].duracao;
    cout << "Informe a classificacao do filme"<<endl;
    cin >> filmes[i].classificacao;
    cout << "Informe avaliacao do filme de 1 a 5 estrelas" <<endl;
    cin >> filmes[i].avaliacao;
    cout << "Informe o resumo do filme" <<endl;
    cin.ignore(); getline(cin,filmes[i].resumo);
}//final da funcao adicionar cliente

void pesquisa(Filme filmes[], int indices[])
{//inicio da fauncao pesquisa
    //variaveis
        size_t indice;
        int count = 0;
        string pesquisar = "";
    //entrada
    cout << "Digite a palavra a ser pesquisada:";
    cin >> pesquisar;
    for(int i=0; i < 2; i++)
        {//inicio do for
            indice = filmes[i].nome.find(pesquisar);
            if(indice!=string::npos)
                {//inicio do if
                    indices[count] = i;
                    cout << "[" << i << "] - "<<filmes[i].nome << endl;
                    count++;
                }//final do if
        }//final do for
    imprimirFilmes(filmes[2]);
}//final da funcao pesquisa

void imprimirFilmes(Filme filmes)
{//inicio da funcao que imprime os detalhes filmes
    cout << "Titulo do filme" << filmes.nome <<endl;
    cout << "Genero do filme" << filmes.genero <<endl;
    cout << "Duracao do filme" << filmes.duracao <<endl;
    cout << "Classificacao do filme" << filmes.classificacao << endl;
    cout << "Avaliacao do filme" << filmes.avaliacao <<endl;
    cout << "Resumo do filme" << filmes.resumo <<endl;
}//final da funcao que imprime os detalhes filmes

estou chamando a funcao indices na pesquisa prototipo ela mas não funciona porque? alguém pode me ajudar

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

vixe, tinha esquecido desse tópico aqui. so to vendo sua reposta hj, se ainda não tiver resolvido...

realmente você não esta declarando o indices.

mas como não estou declarando me mostre como declarar porque eu to chamando la na funcao pesquisa int indices

ali onde ta escrito int indices é so a definicao do parametro. aquilo la so significa q a funcao espera q seja passado um parametro do tipo array de int e q, -> internamente <- dentro da funcao, você devera trata-lo pelo nome de indices.

entretanto, você ta tentando passar pelo parametro uma variavel chamada indices, mas ela realmente não foi declarada, e não esta visivel pelo main(). por isso o erro. não sei o direito o q você quer fazer, mas você teria q criar um array de int (não necessariamente chamado indices) e passa-lo como parametro pra funcao pesquisa().

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...