Python ::: Dicas & Truques ::: Lista (List) |
Python para iniciantes - Como inserir itens em posições específicas de uma lista usando o método insert()Quantidade de visualizações: 11180 vezes |
|
Nesta dica eu mostrarei como usar a função insert() do objeto List da linguagem Python para inserir um novo elemento em uma determinada posição da lista. A função recebe o índice no qual o elemento será inserido e o seu valor. Veja o código completo para o exemplo:
# função principal do programa
def main():
# cria uma lista de inteiros
valores = [2, 5, 12, 2, 3, 32, 18]
print("Valores na lista:", valores, "\n")
# valor a ser inserido
valor = int(input("Informe um inteiro: "))
# índice a ser inserido (começa em 0)
pos = int(input("Informe uma posicao: "))
# insere o valor na posição determinada
valores.insert(pos, valor)
# exibe os valores da lista novamente
print("Valores na lista:", valores, "\n")
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Valores na lista: [2, 5, 12, 2, 3, 32, 18] Informe um inteiro: 45 Informe uma posicao: 2 Valores na lista: [2, 5, 45, 12, 2, 3, 32, 18] |
C ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como pesquisar um valor em um vetor de inteiros em CQuantidade de visualizações: 9659 vezes |
Em algumas situações precisamos verificar se um determinado valor está contido em uma matriz de inteiros em C. Nesta dica eu mostro como isso pode ser feito usando a pesquisa ou busca linear. Veja o código completo comentado:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// vamos declarar e inicializar uma matriz de cinco inteiros
int valores[] = {3, 8, 2, 1, 4};
int encontrei = 0; // vamos inicializar encontrei como falso
int i; // variável de controle do laço
int valor = 2; // valor a ser pesquisado
// vamos percorrer os elementos da matriz e verificar se o valor
// informado está contido na mesma
for(i = 0; i < 5; i++){
// o valor pesquisado é igual ao valor do elemento atual?
if(valores[i] == valor){
encontrei = 1; // encontrei agora é verdadeiro
break; // vamos sair do laço
}
}
// vamos mostrar o resultado
if(encontrei)
printf("O valor pesquisado esta contido na matriz");
else
printf("O valor pesquisado NAO esta contido na matriz");
printf("\n\n");
system("pause");
return 0;
}
Ao executar este trecho de código teremos o seguinte resultado: O valor pesquisado está contido na matriz. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Data e Hora |
Exercícios Resolvidos de C - Escreva um programa C que peça para o usuário informar um ano e informe o dia da semana que o ano começou (domingo, segunda-feiraQuantidade de visualizações: 762 vezes |
|
Pergunta/Tarefa: Escreva um programa C que pede para o usuário informar um ano e então mostre em qual dia da semana o ano começou, por exemplo, domingo, segunda-feira, terça-feira, quarta-feira, etc. Sua saída deverá ser parecida com: Informe um ano: 2022 O ano informado começou em um(a) Sábado Informe um ano: 2023 O ano informado começou em um(a) Domingo Informe um ano: 2024 O ano informado começou em um(a) Segunda-feira Informe um ano: 2025 O ano informado começou em um(a) Quarta-feira Veja a resolução comentada deste exercício usando C:
#include <stdio.h>
#include <stdlib.h>
// função principal do programa
int main(int argc, char *argv[]) {
// variáveis usadas na resolução do problema
char dias_semana[][20] = {"Domingo", "Segunda-feira", "Terça-feira",
"Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"};
int ano, dia_inicial;
// vamos pedir para o usuário informar o ano
printf("Informe um ano: ");
scanf("%d", &ano);
// vamos calcular o número equivalente ao dia da semana que o
// ano iniciou: 0:Domingo, 1:Segunda-feira, 2:Terça-feira, etc
// note que as divisões abaixo são divisões por inteiro, ou seja,
// sem a parte fracionária
dia_inicial = (ano + (ano - 1) / 4) - ((ano - 1) / 100) +
((ano - 1) / 400);
dia_inicial = dia_inicial % 7;
// e mostramos o resultado
printf("O ano informado começou em um(a) %s", dias_semana[dia_inicial]);
printf("\n\n");
system("PAUSE");
return 0;
}
|
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: 16190 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
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:
// 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:
#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++. |
Nossas 20 dicas & truques de programação mais populares |
|
VB.NET - Como comparar strings em VB.NET usando o método Compare() da classe String do .NET Framework |
Você também poderá gostar das dicas e truques de programação abaixo |
|
AutoCAD Civil 3D - Como criar pontos COGO no AutoCAD Civil 3D |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




