Ir ao conteúdo
  • Cadastre-se
AndersonX Freitas

Como limpar vetor ?

Recommended Posts

Estou tentando fazer um dimensionador de cabos, mas o programa estar salvando os equipamentos no mesmo lugar (vetor). Parece que o vetor não estar contando.

agradeço desde ja qualquer ajuda.

 

#include <iostream>
#include <stdlib.h>

using namespace std;
class Equipamento{
    public:
    int potencia;
    int tensão;
    string nome;
    float cabo;
    int disjuntor;
    Equipamento(){
    }
    Equipamento(int potencia,int tensão,string nome){
        this->potencia=potencia;
        this->tensão=tensão;
        this->nome=nome;
    }
       virtual void exibir(){
        cout <<"---Equipamentos---"<<endl;
        cout <<"Nome: "<<nome<<endl;
        cout <<"tensão: "<<tensão<<"V"<<endl;
        cout <<"Potencia: "<<potencia<<"W"<<endl;
    }
};
class Geral: public Equipamento{
    public: int I=0;
    Geral(int potencia,int tensão,string nome):Equipamento(potencia,tensão,nome){
    }
    void exibir(){
      I=potencia/tensão;
      if(I<=10){
        cabo=2.5;
        disjuntor=20;
    }
        cout <<"---Equipamentos---"<<endl;
        cout <<"Nome: "<<nome<<endl;
        cout <<"tensão: "<<tensão<<"V"<<endl;
        cout <<"Potencia: "<<potencia<<"W"<<endl;
        cout <<"Cabo: "<<cabo<<"mm quadrado"<<endl;
        cout <<"Disjuntor: "<<disjuntor<<"A"<<endl;
    }
};
class Especifico: public Equipamento{
       public:
          int comprimento;
          int I=0;
       Especifico(int potencia,int tensão,string nome,int comprimento):Equipamento(potencia,tensão,nome){
              this->comprimento=comprimento;
     }
       void exibir(){
          I=potencia/tensão;
          if(I>10){
            cabo=4;
            disjuntor=32;
        }

        cout <<"---Equipamentos---"<<endl;
        cout <<"Nome: "<<nome<<endl;
        cout <<"tensão: "<<tensão<<"V"<<endl;
        cout <<"Potencia: "<<potencia<<"W"<<endl;
        cout <<"Comprimento: "<<comprimento<<endl;
        cout <<"Cabo: "<<cabo<<"mm quadrado"<<endl;
        cout <<"Disjuntor: "<<disjuntor<<"A"<<endl;
    }
};
class Lista{
    private: Equipamento *Equipamentos[1000];
    private: int i=0;
    public:
        void adicionar(Equipamento *p){
        if(i<1000)
        {
            Equipamentos=p;
            i++;
        }
        else
        {
            cout<<"Lista cheia"<<endl;
        }
    }
    void exibir(){
        int j=0;
        if(i==0){
            cout<<"Nao ha equipamentos na lista"<<endl;
        }
        else
        {
            cout<<"Exibindo lista de equipamentos"<<endl;
            for(j=0;j<i;j++){
                Equipamentos[j]->exibir();
            }
        }
    }
};
int main()
{
        Lista l;
        int opcao=0;
        int i;
        string nome;
        int potencia;
        int tensão;
        int comprimento;
        while(opcao!=3){

        cout<<"1-lista de equipamentos"<<endl;
        cout<<"2-adicionar equipamento"<<endl;
        cout<<"3-fechar tudo"<<endl;
        cout<<"opcao escolhida: ";
        cin>>opcao;
        if(opcao==1){
            system("cls");
            cout<<"Equipamentos: "<<endl;
            l.exibir();
                system("pause");
                system("cls");
          }
        if(opcao==2){
          system("cls");
          cout<<"digite o nome do equipamento"<<endl;
          cin>>nome;
          cout<<"digite a potencia do equipamento"<<endl;
          cin>>potencia;
          cout<<"digite a tensão do equipamento"<<endl;
          cin>>tensão;
        if(potencia/tensão<=10){
            cout <<"Uso Geral"<<endl;
            Geral g(potencia,tensão,nome);
            l.adicionar(&g);
            //l.clear();
     }
        if(potencia/tensão>10){
          cout <<"Uso Especifico"<<endl;
          cout<<"digite o comprimento do circuito: ";
          cin>>comprimento;
            Especifico e(potencia,tensão,nome,comprimento);
            l.adicionar(&e);
     }
          system("cls");
  }
 }
}

 

Editado por dif
Inserir o código dentro da tag CODE

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tópico movido de Internet - programas para C/C#/C++

Compartilhar este post


Link para o post
Compartilhar em outros sites
#include <iostream>
#include <stdlib.h>

using namespace std;
class Equipamento{
    public:
    int potencia;
    int tensão;
    string nome;
    float cabo;
    int disjuntor;
    Equipamento(int potencia,int tensão,string nome){
        this->potencia=potencia;
        this->tensão=tensão;
        this->nome=nome;
    }
    ~Equipamento(){};
    virtual void exibir(){
        cout <<"---Equipamentos---"<<endl;
        cout <<"Nome: "<<nome<<endl;
        cout <<"tensão: "<<tensão<<"V"<<endl;
        cout <<"Potencia: "<<potencia<<"W"<<endl;
    }
};
class Geral: public Equipamento{
    public: int I=0;
    Geral(int potencia,int tensão,string nome):Equipamento(potencia,tensão,nome){
    }
    ~Geral(){};
    void exibir(){
      I=potencia/tensão;
      if(I<=10){
        cabo=2.5;
        disjuntor=20;
    }
        cout <<"---Equipamentos---"<<endl;
        cout <<"Nome: "<<nome<<endl;
        cout <<"tensão: "<<tensão<<"V"<<endl;
        cout <<"Potencia: "<<potencia<<"W"<<endl;
        cout <<"Cabo: "<<cabo<<"mm quadrado"<<endl;
        cout <<"Disjuntor: "<<disjuntor<<"A"<<endl;
    }
};
class Especifico: public Equipamento{
       public:
          int comprimento;
          int I=0;
        Especifico(int potencia,int tensão,string nome,int comprimento):Equipamento(potencia,tensão,nome){
              this->comprimento=comprimento;
        }
       ~Especifico(){};

       void exibir(){
          I=potencia/tensão;
          if(I>10){
            cabo=4;
            disjuntor=32;
        }

        cout <<"---Equipamentos---"<<endl;
        cout <<"Nome: "<<nome<<endl;
        cout <<"tensão: "<<tensão<<"V"<<endl;
        cout <<"Potencia: "<<potencia<<"W"<<endl;
        cout <<"Comprimento: "<<comprimento<<endl;
        cout <<"Cabo: "<<cabo<<"mm quadrado"<<endl;
        cout <<"Disjuntor: "<<disjuntor<<"A"<<endl;
    }
};
class Lista{
    private:
        Equipamento *Equipamentos[1000];
        int i=0;
    public:
    void transferir(Equipamento *src,Equipamento *dst){
            dst = src;
        }
    void adicionar(Equipamento *p){
        if(i<1000)
        {
            Equipamentos[i] = new Equipamento(p->potencia,p->tensão,p->nome);
            i++;
        }
        else
        {
            cout<<"Lista cheia"<<endl;
        }
    }
    void exibir(){
        int j=0;
        if(i==0){
            cout<<"Nao ha equipamentos na lista"<<endl;
        }
        else
        {
            cout<<"Exibindo lista de equipamentos"<<endl;
            for(j=0;j<i;j++){
                Equipamentos[j]->exibir();
            }
        }
    }
};
int main()
{
        Lista l;
        int opcao=0;
        int i;
        string nome;
        int potencia;
        int tensão;
        int comprimento;
        while(opcao!=3){

        cout<<"1-lista de equipamentos"<<endl;
        cout<<"2-adicionar equipamento"<<endl;
        cout<<"3-fechar tudo"<<endl;
        cout<<"opcao escolhida: ";
        cin>>opcao;
        if(opcao==1){
            system("cls");
            cout<<"Equipamentos: "<<endl;
            l.exibir();
                system("pause");
                system("cls");
          }
        if(opcao==2){
          system("cls");
          cout<<"digite o nome do equipamento"<<endl;
          cin>>nome;
          cout<<"digite a potencia do equipamento"<<endl;
          cin>>potencia;
          cout<<"digite a tensão do equipamento"<<endl;
          cin>>tensão;
        if(potencia/tensão<=10){
            cout <<"Uso Geral"<<endl;
            Geral g(potencia,tensão,nome);
            l.adicionar(&g);
            //l.clear();
     }
        if(potencia/tensão>10){
          cout <<"Uso Especifico"<<endl;
          cout<<"digite o comprimento do circuito: ";
          cin>>comprimento;
            Especifico e(potencia,tensão,nome,comprimento);
            l.adicionar(&e);
     }
          system("cls");
  }
 }
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@AndersonX Freitas

#include <iostream>
#include <stdlib.h>

using namespace std;
class Equipamento {
public:
  int potencia;
  int tensão;
  string nome;
  float cabo;
  int disjuntor;
  Equipamento() {
  }
  Equipamento(int potencia,int tensão,string nome) {
    this->potencia=potencia;
    this->tensão=tensão;
    this->nome=nome;
  }
  virtual void exibir() {
    cout <<"---Equipamentos---"<<endl;
    cout <<"Nome: "<<nome<<endl;
    cout <<"tensão: "<<tensão<<"V"<<endl;
    cout <<"Potencia: "<<potencia<<"W"<<endl;
  }
};
class Geral: public Equipamento {
public:
  int I;
  Geral(int potencia,int tensão,string nome):Equipamento(potencia,tensão,nome) {
  }
  void exibir() {
    I=potencia/tensão;
    if(I<=10) {
      cabo=2.5;
      disjuntor=20;
    }
    cout <<"---Equipamentos---"<<endl;
    cout <<"Nome: "<<nome<<endl;
    cout <<"tensão: "<<tensão<<"V"<<endl;
    cout <<"Potencia: "<<potencia<<"W"<<endl;
    cout <<"Cabo: "<<cabo<<"mm quadrado"<<endl;
    cout <<"Disjuntor: "<<disjuntor<<"A"<<endl;
  }
};
class Especifico: public Equipamento {
public:
  int comprimento;
  int I;
  Especifico(int potencia,int tensão,string nome,int comprimento):Equipamento(potencia,tensão,nome) {
    this->comprimento=comprimento;
  }
  void exibir() {
    I=potencia/tensão;
    if(I>10) {
      cabo=4;
      disjuntor=32;
    }

    cout <<"---Equipamentos---"<<endl;
    cout <<"Nome: "<<nome<<endl;
    cout <<"tensão: "<<tensão<<"V"<<endl;
    cout <<"Potencia: "<<potencia<<"W"<<endl;
    cout <<"Comprimento: "<<comprimento<<endl;
    cout <<"Cabo: "<<cabo<<"mm quadrado"<<endl;
    cout <<"Disjuntor: "<<disjuntor<<"A"<<endl;
  }
};
class Lista {
private:
  Equipamento *Equipamentos[1000];
private:
  int i;
public:
  void adicionar(Equipamento *p) {
    if(i<1000) {
      Equipamentos[i] = p;
      i++;
    } else {
      cout<<"Lista cheia"<<endl;
    }
  }
  void exibir() {
    int j=0;
    if(i==0) {
      cout<<"Nao ha equipamentos na lista"<<endl;
    } else {
      cout<<"Exibindo lista de equipamentos"<<endl;
      for(j=0; j<i; j++) {
        Equipamentos[j]->exibir();
      }
    }
  }
};
int main() {
  Lista l;
  int opcao=0;

  string nome;
  int potencia;
  int tensão;
  int comprimento;
  while(opcao!=3) {

    cout<<"1-lista de equipamentos"<<endl;
    cout<<"2-adicionar equipamento"<<endl;
    cout<<"3-fechar tudo"<<endl;
    cout<<"opcao escolhida: ";
    cin>>opcao;
    if(opcao==1) {
      system("cls");
      cout<<"Equipamentos: "<<endl;
      l.exibir();
      system("pause");
      system("cls");
    }
    if(opcao==2) {
      system("cls");
      cout<<"digite o nome do equipamento"<<endl;
      cin>>nome;
      cout<<"digite a potencia do equipamento"<<endl;
      cin>>potencia;
      cout<<"digite a tensão do equipamento"<<endl;
      cin>>tensão;
      if(potencia/tensão<=10) {
        cout <<"Uso Geral"<<endl;
        Geral g(potencia,tensão,nome);
        l.adicionar(&g);
        //l.clear();
      }
      if(potencia/tensão>10) {
        cout <<"Uso Especifico"<<endl;
        cout<<"digite o comprimento do circuito: ";
        cin>>comprimento;
        Especifico e(potencia,tensão,nome,comprimento);
        l.adicionar(&e);
      }
      system("cls");
    }
  }
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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 publicações 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

×