Python ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercício Resolvido de Python - Uma classe para representar uma pessoa, com os atributos privados de nome, data de nascimento e alturaQuantidade de visualizações: 9927 vezes |
|
Pergunta/Tarefa: Crie uma classe para representar uma pessoa, com os atributos privados de nome, data de nascimento e altura. Crie os métodos públicos necessários para sets e gets e também um método para imprimir todos dados de uma pessoa. Crie um método para calcular a idade da pessoa. A data de nascimento pode ser informada como uma String (no formato 05/10/1982, por exemplo) e, no cálculo da idade, considere apenas o ano da data de nascimento informada. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Python console: Código para a classe Pessoa (pessoa.py):
from datetime import datetime
class Pessoa:
# construtor da classe Pessoa
def __init__(self, nome, data_nascimento, altura):
self._nome = nome
self._data_nascimento = data_nascimento
self._altura = altura
# método que imprime todos os dados da pessoa
def imprimir_dados(self):
print("Nome:", self._nome, "\nData de Nascimento:" ,
self._data_nascimento, "\nAltura:", self._altura)
# método que calcula a idade da pessoa
def calcular_idade(self):
# vamos obter o ano da data de hoje
ano_data_atual = datetime.today().year
# agora vamos obter o ano de nascimento da pessoa
partes_data_nascimento = self._data_nascimento.split("/")
ano_nascimento = partes_data_nascimento[2]
# agora mostramos a idade da pessoa
anos = ano_data_atual - int(ano_nascimento)
print("A pessoa tem", anos, "anos.")
# método que define o nome da pessoa
def set_nome(self, nome):
self._nome = nome
# método que obtém o nome da pessoa
def get_nome(self):
return self._nome
# método que define a data de nascimento da pessoa
def set_data_nascimento(self, data_nascimento):
self._data_nascimento = data_nascimento
# método que obtém a data de nascimento da pessoa
def get_data_nascimento(self):
return self._data_nascimento
# método que define a altura da pessoa
def set_altura(self, altura):
self._data_altura = altura
# método que obtém a altura da pessoa
def get_altura(self):
return self._altura
Código para o arquivo principal.py:
# importa a classe Pessoa
from pessoa import Pessoa
def main():
# cria um novo objeto da classe Pessoa
pessoa = Pessoa("Amanda Rodrigues", "12/03/1972", 1.65)
# exibe os dados da pessoa
pessoa.imprimir_dados()
# mostra a idade da pessoa
pessoa.calcular_idade()
if __name__== "__main__":
main()
|
C# ::: Coleções (Collections) ::: ArrayList |
Como percorrer os elementos de uma ArrayList do C# usando o laço forQuantidade de visualizações: 13856 vezes |
|
Este trecho de código mostra como usar o laço da linguagem C# for para percorrer todos os elementos de uma ArrayList de inteiros. Veja como usamos o valor da variável de controle i como índice para o elemento que queremos obter durante uma determinada iteração do laço. Não se esqueça de importar o namespace System.Collections. Eis o código completo para o exemplo:
using System;
using System.Collections;
namespace Estudos {
class Program {
static void Main(string[] args) {
// Cria o ArrayList
ArrayList lista = new ArrayList();
// Adiciona 5 inteiros
lista.Add(30);
lista.Add(2);
lista.Add(98);
lista.Add(1);
lista.Add(9);
// Percorre os elementos da ArrayList
// usando o laço for
for (int i = 0; i < lista.Count; i++) {
Console.Write("{0} ", lista[i]);
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: 30 2 98 1 9 |
Java ::: Classes e Componentes ::: JComboBox |
Tutorial Java Swing - Como remover todos os itens de um JComboBox (Caixa de Combinação) em tempo de execuçãoQuantidade de visualizações: 12711 vezes |
|
Nesta dica mostrarei como é possível usar o método removeAllItems() da classe JComboBox para remover todos os seus itens. Note que criei a aplicação Java Swing na mão mesmo, sem usar nenhum editor visual de GUI, como o que está disponível no IDE Netbeans. Esta abordagem pode não ser produtiva, mas é excelente para entender como o Java Swing funciona. Veja o código completo para o exemplo:
package arquivodecodigos;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Estudos extends JFrame{
JComboBox combo;
public Estudos(){
super("A classe JComboBox");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Cria os itens da lista
String nomes[] = {"Carlos", "Marcelo", "Fabiana",
"Carolina", "Osmar"};
// Cria o JComboBox
combo = new JComboBox(nomes);
// Um botão que permite limpar o JComboBox
JButton btn = new JButton("Limpar");
btn.addActionListener(
new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
// remove todos os itens do JComboBox
combo.removeAllItems();
}
}
);
// Adiciona o JComboBox à janela
c.add(combo);
// Adiciona o botão à janela
c.add(btn);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Aqui os itens do JComboBox foram inseridos a partir de um vetor de String. |
Java ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cosseno de um ângulo em Java usando o método cos() da classe Math - Calculadora de cosseno em JavaQuantidade de visualizações: 1907 vezes |
|
Como calcular o cosseno de um ângulo em Java usando o método cos() da classe Math - Calculadora de cosseno em Java Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria. No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem: ![]() Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles. Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula: \[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \] Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos). Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima. Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem Java. Esta método, que faz parte da classe Math, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja:
package arquivodecodigos;
public class Estudos{
public static void main(String args[]){
System.out.println("Cosseno de 0 = " + Math.cos(0));
System.out.println("Cosseno de 1 = " + Math.cos(1));
System.out.println("Cosseno de 2 = " + Math.cos(2));
}
}
Ao executar este código Java nós teremos o seguinte resultado: Cosseno de 0 = 1.0 Cosseno de 1 = 0.5403023058681398 Cosseno de 2 = -0.4161468365471424 Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo: ![]() |
Nossas 20 dicas & truques de programação mais populares |
|
Delphi - Como verificar se um arquivo existe usando a função FileExists() da unit SysUtils do Delphi VB.NET - Como inverter o conteúdo de uma string em VB.NET usando os métodos ToCharArray() e Reverse() |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Delphi - Como usar o Delphi para verificar se um determinado processo do Windows está sendo executado Delphi - Como verificar se um arquivo existe usando a função FileExists() da unit SysUtils do Delphi |
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 |








