Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: STL Vector C++ |
Escreva um programa C++ com uma função chamada possui_numeros() que recebe um Vector de strings como argumento - Desafio de Programação Resolvido em C++Quantidade de visualizações: 327 vezes |
Pergunta/Tarefa: Escreva um programa C++ com uma função chamada possui_numeros() que recebe um Vector de strings como argumento e retorna outro Vector contendo apenas as strings que possuem um ou mais números. Se nenhuma das strings recebidas passar no teste, retorne um Vector vazio. Sua saída deverá ser parecida com: Elementos do Vector original: livro mesa7 cami45sa porta Palavras que possuem um ou mais números: mesa7 cami45sa Veja a resolução comentada deste exercício em C++: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> #include <vector> using namespace std; // função que recebe um vetor de strings e retorna // outro vector contendo apenas as strings que possuem // um ou mais números vector<string> possui_numeros(vector<string> palavras) { // para guardar o resultado vector<string> resultado; // vamos percorrer os itens do vector recebido for(string palavra : palavras) { // agora percorremos os caracteres de cada string for(char carac : palavra) { // é um caractere? if(isdigit(carac)) { // adicionamos no segundo vector resultado.push_back(palavra); break; } } } // retorna o vector obtido return resultado; } // função principal do programa int main(int argc, char *argv[]){ // vamos criar um vector de palavras vector<string> palavras = {"livro", "mesa7", "cami45sa", "porta"}; // vamos mostrar o conteúdo do vector original cout << "Elementos do Vector original:\n"; for (string palavra : palavras) { cout << palavra << " "; } // agora obtemos um vector com as palavras que contenham um ou mais // números vector<string> resultado = possui_numeros(palavras); // e mostramos o resultado cout << "\n\nPalavras que possuem um ou mais números:\n"; for (string palavra : resultado) { cout << palavra << " "; } cout << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
![]() |
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular juros simples e montante usando C++Quantidade de visualizações: 19696 vezes |
O regime de juros será simples quando o percentual de juros incidir apenas sobre o valor principal. Sobre os juros gerados a cada período não incidirão novos juros. Valor Principal ou simplesmente principal é o valor inicial emprestado ou aplicado, antes de somarmos os juros. Transformando em fórmula temos: J = P . i . n Onde: J = juros P = principal (capital) i = taxa de juros n = número de períodos Imaginemos uma dívida de R$ 2.000,00 que deverá ser paga com juros de 5% a.m. pelo regime de juros simples e o prazo para o pagamento é de 2 meses. O cálculo em C++ pode ser feito assim: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> using namespace std; int main(int argc, char *argv[]) { float principal = 2000.00; float taxa = 0.08; int meses = 2; float juros = principal * taxa * meses; cout << "O total de juros a ser pago é: " << juros << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } O montante da dívida pode ser obtido das seguintes formas: a) Montante = Principal + Juros b) Montante = Principal + (Principal x Taxa de juros x Número de períodos) M = P . (1 + (i . n)) Veja o código: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> using namespace std; int main(int argc, char *argv[]) { float principal = 2000.00; float taxa = 0.08; int meses = 2; float juros = principal * taxa * meses; float montante = principal * (1 + (taxa * meses)); cout << "O total de juros a ser pago é: " << juros << "\n"; cout << "O montante a ser pago é: " << montante << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
C++ ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como ordenar os elementos de vetor C++ usando a Ordenação da Bolha (Bubble Sort) - RevisadoQuantidade de visualizações: 15486 vezes |
O método ou algorítmo de ordenação da bolha é uma das técnicas mais simples de ordenação. No entanto, este método não é eficiente, visto que o tempo despendido para sua execução é muito elevado se comparado à outros métodos existentes. Geralmente usamos este método quando queremos ordenar 50 elementos ou menos. O entendimento deste método é fácil. Se estivermos ordenando os valores do menor para o maior, o método da bolha percorre os elementos da matriz, comparando e movendo o menor valor para a primeira posição do vetor (array), tal qual bolhas indo para a superfície. Veja um exemplo completo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> using namespace std; void bubble_sort(int matriz[], int tam){ int temp, i, j; for(i = 0; i < tam; i++){ for(j = 0; j < tam; j++){ if(matriz[i] < matriz[j]){ temp = matriz[i]; matriz[i] = matriz[j]; matriz[j] = temp; } } } } int main(int argc, char *argv[]) { int valores[] = {4, 6, 2, 8, 1, 9, 3, 0, 11}; int const quant_elem = 9; // imprime a matriz sem a ordenação for(int i = 0; i < quant_elem; i++){ cout << valores[i] << " "; } // vamos ordenar a matriz bubble_sort(valores, quant_elem); // imprime a matriz ordenada cout << endl; for(int i = 0; i < 9; i++){ cout << valores[i] << " "; } cout << "\n" << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executarmos este código nós teremos o seguinte resultado: 4 6 2 8 1 9 3 0 11 0 1 2 3 4 6 8 9 11 Pressione qualquer tecla para continuar... |
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de C++ - Desafio do número ausente. Dado um vetor de números naturais 1..n, encontre o valor ausenteQuantidade de visualizações: 655 vezes |
Pergunta/Tarefa: Dado o vetor: int valores[] = {1, 8, 7, 2, 6, 5, 3}; Encontre o elemento ausente na sequência de valores do vetor, sabendo que o primeiro valor é 1 e o último elemento é 8. Perceba que o vetor não precisa estar ordenado. Além disso, o entrevistador se certificará de que os valores serão sempre positivos e não haverá valores repetidos. Sua saída deverá ser parecida com: O número ausente é: 4 Dica: Use a fórmula n * (n + 1) / 2 para facilitar a resolução do exercício. Veja a resolução comentada deste exercício usando C++: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <string> #include <iostream> using namespace std; int main(int argc, char *argv[]){ // vamos declarar um vetor de inteiros faltando // um valor na sequência (não necessariamente ordenada) // Note a ausência do número 4 int valores[] = {1, 8, 7, 2, 6, 5, 3}; int i, soma_n, ausente, soma_elementos; int quant = 8; // tamanho do vetor + 1 // o primeiro passo é obter a soma de 1..n elementos // natuais usando a fórmula n*(n+1)/2 soma_n = (quant * (quant + 1)) / 2; // agora vamos somar os elementos do vetor soma_elementos = 0; for(i = 0; i < 7; i++){ soma_elementos = soma_elementos + valores[i]; } // agora calculamos o valor ausente ausente = soma_n - soma_elementos; // vamos mostrar o resultado cout << "O número ausente é: " << ausente << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
C++ ::: C++ para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em C++Quantidade de visualizações: 1452 vezes |
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando C++. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código C++. Veja um trecho de código C++ completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> #include <cstdlib> using namespace std; int main(int argc, char *argv[]){ // vamos declarar e construir uma matriz de três linhas // e três colunas int linhas = 3, colunas = 3; int matriz[linhas][colunas]; // guarda a soma dos elementos na diagonal principal int soma_diagonal = 0; // vamos ler os valores para os elementos da matriz for(int i = 0; i < linhas; i++){ // linhas for(int j = 0; j < colunas; j++){ // colunas cout << "Informe o valor para a linha " << i << " e coluna " << j << ": "; cin >> matriz[i][j]; } } // vamos mostrar a matriz da forma que ela // foi informada cout << "\n"; // percorre as linhas for(int i = 0; i < linhas; i++){ // percorre as colunas for(int j = 0; j < colunas; j++){ cout << matriz[i][j] << " "; } // passa para a próxima linha da matriz cout << "\n"; } // vamos calcular a soma dos elementos da diagonal // principal for(int i = 0; i < linhas; i++){ for(int j = 0; j < colunas; j++){ if(i == j){ soma_diagonal = soma_diagonal + matriz[i][j]; } } } // finalmente mostramos a soma da diagonal principal cout << "\nA soma dos elementos da diagonal principal é: " << soma_diagonal << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Informe o valor para a linha 0 e coluna 0: 3 Informe o valor para a linha 0 e coluna 1: 7 Informe o valor para a linha 0 e coluna 2: 9 Informe o valor para a linha 1 e coluna 0: 2 Informe o valor para a linha 1 e coluna 1: 4 Informe o valor para a linha 1 e coluna 2: 1 Informe o valor para a linha 2 e coluna 0: 5 Informe o valor para a linha 2 e coluna 1: 6 Informe o valor para a linha 2 e coluna 2: 8 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
C++ ::: STL (Standard Template Library) ::: Vector C++ |
Como obter um iterador para o primeiro ou último elemento de um vector C++ usando as funções begin() e end()Quantidade de visualizações: 7470 vezes |
Há situações em nossos códigos que precisamos obter uma referência ao primeiro ou último elemento de um vector e usar tal referência para acessar os demais elementos. Isso pode ser feito com um iterador. Assim, para obter um iterador para o primeiro elemento nós podemos usar a função begin(), que retorna duas formas de iteradores: iterator begin(); const_iterator begin() const; A primeira versão retorna um iterador que pode ser usado, não somente para acessar os elementos do vector, como também para alterar seus valores. Veja no trecho de código abaixo como obtemos um iterador para o primeiro elemento e o incrementamos de forma a atingir o último elemento: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> #include <vector> using namespace std; int main(int argc, char *argv[]){ // um vector vazio que conterá inteiros vector<int> valores; // vamos inserir três elementos valores.push_back(54); valores.push_back(13); valores.push_back(87); // vamos obter um iterador para o primeiro elemento vector<int>::iterator it = valores.begin(); // vamos mostrar o valor atual do iterador cout << "Valor atual do iterador: " << *it << endl; // vamos adiantar o iterador duas vezes it += 2; // vamos mostrar o novo valor do iterador cout << "Novo valor do iterador: " << *it << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } É importante lembrar que podemos alterar os valores dos elementos de um vector por meio do iterador. Veja: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> #include <vector> using namespace std; int main(int argc, char *argv[]){ // um vector vazio que conterá inteiros vector<int> valores; // vamos inserir três elementos valores.push_back(54); valores.push_back(13); valores.push_back(87); // vamos obter um iterador para o primeiro elemento vector<int>::iterator it = valores.begin(); // vamos atribuir um novo valor ao primeiro elemento *it = 128; // vamos mostrar o novo valor do primeiro elemento cout << "Novo valor do primeiro elemento: " << valores.front() << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Mas, e se quiséssemos evitar tal alteração? Bastaria usar um iterador constante: // vamos obter um iterador constante para o primeiro elemento vector<int>::const_iterator it = valores.begin(); Faça esta alteração no código anterior e verá que o programa não mais compila. A mensagem de erro de compilação indica: assignment of read-only location Vamos agora obter um iterador para o último elemento. Para isso podemos usar a função end(). Veja: iterator end(); const_iterator end() const; É importante notar que end() retorna um iterador para o elemento APÓS o último elemento do vector. Veja no trecho de código abaixo como obtemos um iterador para o último elemento: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> #include <vector> using namespace std; int main(int argc, char *argv[]){ // um vector vazio que conterá inteiros vector<int> valores; // vamos inserir três elementos valores.push_back(54); valores.push_back(13); valores.push_back(87); // vamos obter um iterador para o último elemento vector<int>::iterator it = valores.end(); // como end() retorna um iterador para um elemento // APÓS o último elemento do vector, temos que voltar // um elemento para acessarmos de fato o último elemento it--; // vamos mostrar o valor atual do iterador cout << "Valor do iterador: " << *it << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Um dos usos mais comuns dos iteradores begin() e end() é quando queremos percorrer todos os elementos de um vector. Veja: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> #include <vector> using namespace std; int main(int argc, char *argv[]){ // um vector vazio que conterá inteiros vector<int> valores; // vamos inserir três elementos valores.push_back(54); valores.push_back(13); valores.push_back(87); // vamos percorrer o vector e exibir os elementos vector<int>::iterator it; for(it = valores.begin(); it < valores.end(); it++){ cout << *it << endl; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
C++ ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como inicializar os valores dos elementos de um vetor C++ usando valores randômicos - RevisadoQuantidade de visualizações: 9705 vezes |
Esta dica mostra como atribuir números aleatórios aos elementos de um array (vetor). Veja que cada elemento recebe um valor randômico na faixa de 0 a 100:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <iostream> using namespace std; int main(int argc, char *argv[]) { // declara uma matriz de 10 elementos int valores[10]; // vamos inicializar os elementos da matriz // usando valores aleatórios de 0 a 100 srand(time(NULL)); for(int i = 0; i < 10; i++){ valores[i] = rand() % 100; } // exibe o resultado for(int i = 0; i < 10; i++){ cout << "Índice: " << i << " - Valor: " << valores[i] << endl; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executarmos este código nós teremos um resultado parecido com: Indice: 0 - Valor: 46 Indice: 1 - Valor: 11 Indice: 2 - Valor: 28 Indice: 3 - Valor: 74 Indice: 4 - Valor: 49 Indice: 5 - Valor: 50 Indice: 6 - Valor: 27 Indice: 7 - Valor: 98 Indice: 8 - Valor: 11 Indice: 9 - Valor: 81 |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como comparar strings em C++ usando o método compare() da classe StringQuantidade de visualizações: 22790 vezes |
Nesta dica mostrarei como podemos usar a função compare() da classe String da linguagem C++ para comparar duas palavras, frases ou textos. Se as duas strings forem iguais, o valor 0 é retornado. Um valor diferente de 0 indica que as duas strings não são iguais. Lembre-se de que esta função distingue entre maiúsculas e minúsculas. Veja como esta função pode ser usada: int compare(const string& str) const; int compare(const char* s) const; Podemos chamar esta função de duas formas: a) Fornecendo uma variável como parâmetro; b) Fornecendo uma string entre aspas. Veja agora um exemplo C++ completo demonstrando o seu uso: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <string> #include <iostream> using namespace std; int main(int argc, char *argv[]){ string str1("Java"); string str2("JAVA"); if(str1.compare(str2) == 0){ cout << str1 << " é igual a " << str2 << "\n"; } else{ cout << str1 << " é diferente de " << str2 << "\n"; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Java é diferente de JAVA |
C++ ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em C++ - Como usar construtores em suas classes C++Quantidade de visualizações: 15836 vezes |
Quando um objeto de uma classe C++ é criado, a linguagem chama um construtor para tal classe. Se nenhum construtor estiver definido, um construtor padrão é invocado. Este construtor aloca memória para o objeto, mas não o inicializa. Um construtor é um método que definimos em nossas classes C++ e que possui o mesmo nome da classe. Um construtor não possui tipo de retorno e não retorna nenhum valor. Em geral construtores são públicos, mas, é possível termos construtores privados. Neste caso, somente um método estático da classe poderia criar novos objetos da classe (quando puder dê uma olhada no padrão de projeto Singleton). O uso mais frequente dos métodos construtores é quando queremos inicializar valores das variáveis e demais recursos no momento da criação de uma nova instância da classe. Esta é uma técnica útil, visto que não precisamos dispor de esforço extra para inicializar as variáveis de instância de um objeto, individualmente, após sua criação. Vamos ver um exemplo da definição e uso de construtores em uma classe C++? Comece analisando o código para o arquivo de definição da classe Pessoa: Código para Pessoa.h: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- // vamos evitar múltiplas inclusões do // arquivo de cabeçalho (header file) #ifndef PESSOA_H #define PESSOA_H // vamos incluir o header string #include <string> using namespace std; class Pessoa{ public: // construtor da classe Pessoa Pessoa(string, string, int); // método que permite retornar o nome da pessoa string getNome(); // método que permite retornar o e-mail da pessoa string getEmail(); // método que permite retornar a idade da pessoa int getIdade(); private: // variáveis privadas string nome; string email; int idade; }; #endif Veja a assinatura do método construtor: Pessoa(string, string, int); Note que na lista de parâmetros do construtor não precisamos informar os nomes dos parâmetros, apenas seus tipos. Veja agora o arquivo de implementação para esta classe: Código para Pessoa.cpp: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- // arquivo de implementação para a // classe Pessoa // vamos incluir o header Pessoa.h #include "Pessoa.h" // implementação do construtor Pessoa::Pessoa(string nome, string email, int idade){ this->nome = nome; this->email = email; this->idade = idade; } // método que permite obter o nome da pessoa string Pessoa::getNome(){ return this->nome; } // método que permite obter o email da pessoa string Pessoa::getEmail(){ return this->email; } // método que permite obter a idade da pessoa int Pessoa::getIdade(){ return this->idade; } Note que na implementação do método construtor nós recebemos os argumentos para os parâmetros e os usamos para inicializar as variáveis privadas da instância da classe. Observe o uso do ponteiro this para nos referirmos à instância atual da classe Pessoa. Finalmente, veja o código para o método main() do programa. É aqui que criamos um novo objeto da classe Pessoa e usamos seu método construtor para inicializar suas variáveis privadas de uma só vez: Código para main.cpp: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <cstdlib> #include <iostream> // vamos incluir a classe Pessoa #include "Pessoa.h" using namespace std; int main(int argc, char *argv[]) { // vamos criar um novo objeto da classe Pessoa Pessoa *p = new Pessoa("Osmar J. Silva", "osmar@arquivodecodigos.net", 38); // vamos exibir os dados da pessoa cout << "Nome: " << p->getNome() << endl; cout << "E-Mail: " << p->getEmail() << endl; cout << "Idade: " << p->getIdade() << endl; system("PAUSE"); return EXIT_SUCCESS; } Além do construtor, uma classe C++ possui também um método destrutor. Veja minhas dicas relacionadas a este assunto para aprender como definir e usar destrutores em suas classes C++. |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |