×
Ir ao conteúdo
  • Cadastre-se

C++ Implementar um TAD - Caçador de Mitos


Larissapereir

Posts recomendados

Olá, o problema é o seguinte: tenho a main com a seguinte implementação

 

#include <bits/stdc++.h>
#include "Raios.hpp"
using namespace std;


int main(){
    

    int n;
    cin >> n;

    Raios R(500,500);

    for(int i = 0; i < n; i++){
        int x, y;
        cin >> x >> y;
        R.add(x,y);
    }

    cout << R.mesmo_lugar() << endl;


}

 

Tenho que implementar a estrutura abaixo:

#ifndef RAIOS_HPP
#define RAIOS_HPP

#include <bits/stdc++.h>

using namespace std;

class Raios{

    private:
        int n, m;
    public:
    
    Raios(int n, int m){ 
        this->n = n;
        this->m = m;
    }

    void add(int x, int y){
        
    }

    int mesmo_lugar(){
        //Caiu no mesmo lugar retorna 1, caso contrário retorna 0 
      if() return 1;
      else return 0;
    }
};


#endif

Na função add(int x, int y) tenho que armazenar o quadrante que caiu o raio no quadrante X,Y e na função mesmo_lugar() devolver 1 se dois raios caíram no mesmo lugar e 0 caso contrário, mas não sei como implementá-las, alguém pode me ajudar, por favor?

Link para o comentário
Compartilhar em outros sites

18 horas atrás, Larissapereir disse:

o quadrante que caiu o raio no quadrante X,Y

 

Não deu para entender.

 

Provavelmente add() apenas vai somar os raios em cada quadrante. Crie uma variável para contar isso, como um

  

    unsigned quadrante[4];

 

E some lá

 

18 horas atrás, Larissapereir disse:

função mesmo_lugar() devolver 1 se dois raios caíram no mesmo lugar e 0 caso contrário

 

??? Não entendi a dificuldade nesse caso, deste que passe o lugar onde caiu cada raio, claro.

 

18 horas atrás, Larissapereir disse:
 int mesmo_lugar(){

 

Isso tem duas maneiras de escrever, em geral:

 

    int mesmo_lugar(Raio& o_outro);

 

ou 
 

    int mesmo_lugar(Raio& um, Raio& outro);


 

e o código só tem 1 linha:

 

    return (n == outro.n) && (m == outro.m);

 

para o primeiro caso. O segundo apenas insere as coordenadas do primeiro ao invés de usar as da instância. No popular um.n ao invés de n

 

Note que sua classe deveria se chamar Raio, no singular

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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

Curso de Hacker Ético

LANÇAMENTO!

CLIQUE AQUI E CONFIRA!

* Este curso não é ministrado pela equipe do Clube do Hardware.