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

(Resolvido) Ajuda Fast


forsakemsoul

Pergunta

3. Crie uma função, chamada compare, que recebe duas strings e compara se ambas são iguais.

Caso sejam iguais, a função retorna zero, caso sejam diferentes retorna um (1). Utilize a

aritmética de ponteiros no código da função

a. Proponha uma assinatura para esta função.

b. Crie o código da mesma

c. Mostre seu uso

ai tpw usei esse codigo

so q da erro e usando o debug eu descobri q ele compara a == b e fala q e diferente e cai no caso else... alguém ajuda !!!

#include <cstdlib>
#include <iostream>
#include <string.h>
using namespace std;

int compare(char* a,char* b,int tama,int tamb){
    
    if(tama == tamb){
            if( a == B){
                       a++;
                       b++;
            }
            else{
                 return 1;
            }
    }
    else{
         return 2;
    }
    return 0;
}  


int main(int argc, char *argv[]){
    
    char a[]={'a','b','c'};
    char b[]={'a','b','c'};
    char c[]={'a','b','d'};
    
    int r;
    r = compare(a,b,3,3);
    if (r == 2){    
          cout << "****** Erro ******" << endl << "Tamanhos Diferentes" << endl;
    }
    if (r== 0){
         cout << "Palavras Iguais" << endl;
    }
    if (r == 1){
          cout << "Palavras diferentes" <<endl;
    } 
    system("PAUSE");
    return EXIT_SUCCESS;
}

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

ae galera.... eu consegui fazer aki...

eu e meu amigo feiz x)...

vo dexa o codigo aki pra caso alguém precisar futuramente...

#include <cstdlib>
#include <iostream>
#include <string.h>
using namespace std;

int compara(char* a, char* B){
    while(*a != ''){
    
      if(*a != *B)
        return 1;
      a++; b++;
    }
    if((*a == '') && (*b == ''))
      return 0;
    else
      return 1;
}

int main(int argc, char *argv[]){
   
    char a[]={'a','b','c',''};
    char e[]={'a','b','c',''};
    char c[]={'a','b','d',''};
    char d[]={'a','b','d',''};
    int r;
    r = compara(c,d);
    if (r == 2){   
          cout << "****** Erro ******" << endl << "Tamanhos Diferentes" << endl;
    }
    if (r== 0){
         cout << "Palavras Iguais" << endl;
    }
    if (r == 1){
          cout << "Palavras diferentes" <<endl;
    }
    system("PAUSE");
    return EXIT_SUCCESS;
}

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