GithubHelp home page GithubHelp logo

poo--classes-abstratas-e-polimorfismo's Introduction

Polimorfismo e Classes Abstratas

Contato: [email protected]

Construindo uma Agenda Simples

Crie uma classe chamada Pessoa. Uma pessoa possui um nome (string) e uma idade (int).

Crie 2 construtores: um que recebe o nome e a idade como parâmetros de entrada e um que não recebe parâmetros e inicializa os atributos com um valor padrão (“indefinido” para strings e 0 para inteiros). se necessário, crie métodos acessores e modificadores para os atributos (GET e SET). Crie uma classe Amigo, derivada de Pessoa, e possui uma data de aniversário (string).

Crie um construtor que não recebe parâmetros de entrada, e inicializa o atributo com um valor padrão (“indefinido”, por exemplo). se necessário, crie um método de acesso (ou moficação) para o atributo data de nascimento. Crie uma classe Conhecido, derivada de Pessoa, que possui um e-mail (string).

Crie um construtor que não recebe parâmetros de entrada, e inicializa o e-mail com um valor padrão (“indefinido”, por exemplo), se necessário, crie um método de acesso (ou moficação) para o atributo e-mail. Crie agora, uma classe Agenda, que possui uma coleção de Pessoas (do tipo vector) e dois atributos que controlam: a quantidade de amigos (int) e a quantidade de conhecidos (int).

Crie um construtor que recebe por parâmetro a quantidade de pessoas que a agenda terá, e inicializa a coleção (vector) de Pessoa. Neste construtor, inicialize todas as posições do vetor criando ALEATORIAMENTE um Conhecido ou um Amigo. Para isso, crie um código para sortear valores um valor x∈{1,2} . Se o valor encontrado for 1 , crie um Amigo. Se o valor encontrado for 2 , crie um Conhecido, se necessário, crie métodos acessores e modificadores para os atributos da classe Agenda.

Crie um método chamado addInformacoes, que não recebe parâmetros de entrada. Para cada Pessoa na agenda, peça para o usuário digitar (via teclado) as informações cabíveis para cada tipo de Pessoa. Crie um método chamado imprimeAniversários, que imprime os aniversários de todos os amigos que estão armazenados na agenda. Crie um método chamado imprimeEmail, que imprime os e-mails de todos os conhecidos que estão armazenados na agenda.

// code sample to generate random numbers in C++

#include #include

int main() { srand((unsigned int) time (NULL)); //activates the generator //... int a = rand()%10; //gives a random from 0 to 9

double r = ((double) rand() / (RAND_MAX));        //gives a random from 0 to 1

int max, min;
//...
int c = (rand()%(max - min)) + min;              //gives a random from min to max
//...
return 0;

} Testando sua Agenda Crie um programa para testar para a Agenda. Peça para o usuário informar (via teclado) quantas pessoas ele deseja colocar na agenda, e crie uma Agenda com esta informação.

imprima na tela a quantidade de amigos e de conhecidos na agenda.

adicione informações à agenda.

imprima todos os aniversários dos amigos presentes na agenda.

imprima todos os e-mails dos conhecidos armazenados na agenda.

poo--classes-abstratas-e-polimorfismo's People

Contributors

aaroncrvl avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.