![]() |
|
||||
![]() Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Você está aqui: C++ ::: Dicas & Truques ::: Matemática e Estatística |
Gerando um número aleatório entre 1 e 10 usando C++Quantidade de visualizações: 19347 vezes |
Esta dica mostra a você como gerar um número randômico entre 1 e 10. Para isso usaremos a função rand(), disponível no cabeçalho cstdlib. Esta função retorna um número pseudo-randômico entre 0 e RAND_MAX (que em várias implementações é 32767). O truque aqui é usar o operador de módulo % para obter a faixa de valores desejada. Veja o código: #include <iostream> using namespace std; int main(int argc, char *argv[]) { // inicializa o gerador de números // randômicos srand(time(NULL)); // gera um número aleatório entre 1 e // 10 (inclusive) int valor = rand() % 10 + 1; cout << "Número gerado: " << valor << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
![]() |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar uma substring de uma string em C++ usando a função substr()Quantidade de visualizações: 10230 vezes |
Este exemplo usa a função substr() para obter uma substring a partir de uma string. A assinatura para essa função é:string substr(size_t pos = 0, size_t n = npos) const; Se a posição inicial da substring for maior que o tamanho da string, uma exceção do tipo out_of_range será atirada. Nenhum erro é indicado se o tamanho da substring exceder o tamanho da string. Veja o código C++ completo para o exemplo: #include <string> #include <iostream> using namespace std; int main(int argc, char *argv[]){ // vamos criar uma string string frase = "Gosto de Java e C++"; cout << "A frase e: " << frase << endl; // agora vamos obter uma parte da frase ...... Ao executar este código C++ nós teremos o seguinte resultado: A frase é: Gosto de Java e C++ A substring retornada é: Java |
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercício Resolvido de C++ - Calculando e exibindo os números primos entre 2 e 100Quantidade de visualizações: 10092 vezes |
Exercícios Resolvidos de C++ - Calculando e exibindo os números primos entre 2 e 100 Pergunta/Tarefa: Um inteiro é um número primo se ele for divisível somente por 1 e por ele mesmo. Assim, 2, 3, 5 e 7 são primos, enquanto 4, 6, 8 e 9 não são. Note que o número 1 não é primo. Escreva um programa C++ que usa um laço for, while ou do...while para calcular e exibir os números primos entre 2 (incluindo) e 100 (incluindo). A saída do programa deverá ser parecida com: Numeros primos entre 2 e 100 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 Veja a resolução comentada deste exercício: #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]){ // limite dos números primos (incluindo) int limite = 100; // Lembre-se! O número 1 não é primo cout << "Numeros primos entre 2 e " << limite << endl; // laço que percorre os valores de 2 até o limite desejado for(int i = 2; i <= limite; i++){ bool primo = true; // se o valor de i for 7, a variável j do laço contará ...... |
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: 15817 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: // 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 ...... 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: // 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 ...... 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: #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); ...... 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 |