Você está aqui: Cards de AutoCAD Civil 3D |
||
|
||
|
|
||
C# ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou subtrair meses de uma data em C# usando a função AddMonths() da classe DateTimeQuantidade de visualizações: 12475 vezes |
|
Em algumas situações nossos códigos precisam adicionar ou subtrair meses de uma data. Isso pode ser feito com o auxílio do método AddMonths() da estrutura DateTime. Este método recebe o número de meses a serem acrescidos ou substraídos da data representada pelo DateTime atual e retorna um novo DateTime com as devidas modificações. Veja um trecho de código no qual adicionamos 3 meses à data atual:
static void Main(string[] args){
// vamos obter a data de hoje
DateTime hoje = DateTime.Now;
// exibe a data de hoje
System.Console.WriteLine("Hoje é {0:d}", hoje);
// vamos adicionar 3 meses à data de hoje
DateTime data_futura = hoje.AddMonths(3);
// exibe a data daqui a três meses
System.Console.WriteLine("Daqui a 3 meses será {0:d}", data_futura);
// pausa o programa
System.Console.Write("\nPressione qualquer tecla para sair...");
Console.ReadKey();
}
É possível também subtrair meses. Para isso só precisamos fornecer um valor negativo para o método AddMonths(). Veja:
static void Main(string[] args){
// vamos obter a data de hoje
DateTime hoje = DateTime.Now;
// exibe a data de hoje
System.Console.WriteLine("Hoje é {0:d}", hoje);
// vamos subtrair 5 meses da data de hoje
DateTime data_passado = hoje.AddMonths(-5);
// exibe a data 5 meses atrás
System.Console.WriteLine("Há 5 meses era {0:d}", data_passado);
// pausa o programa
System.Console.Write("\nPressione qualquer tecla para sair...");
Console.ReadKey();
}
Lembre-se, contudo, que o método AddMonths() pode disparar uma exceção do tipo ArgumentOutOfRangeException se o DateTime resultante for menor que MinValue ou maior que MaxValue. MinValue e MaxValue são os menor e maior valores que um DateTime pode representar. Esta exceção também será disparada se o valor fornecido para o mês for menor que -120.000 ou maior que 120.000. |
React Native ::: React Native - Componentes Visuais ::: Button |
Como detectar um clique em um botão do React Native e exibir uma mensagem AlertQuantidade de visualizações: 1498 vezes |
|
Nesta dica mostrarei como detectar um evento onPress em um botão do React Native e exibir uma mensagem usando o método alert() do componente Alert. Note que o evento onPress é disparado quando o usuário pressiona o botão. Veja o código completo para o exemplo:
import React, {Component} from 'react';
import {View, Button, Alert} from 'react-native';
type Props = {};
export default class App extends Component<Props> {
render() {
return (
<View style={{backgroundColor: '#eeeeee',
padding: 30}}>
<Button onPress = {() =>
Alert.alert("Bem-vindo(a) ao React Native")}
title="Clique" />
</View>
);
}
}
Veja que este exemplo define o código a ser chamado quando o botão for clicado diretamente em sua declaração. Em outras dicas dessa seção você verá como clicar no botão e chamar uma função JavaScript residente fora da declaração do botão. |
Java ::: Classes e Componentes ::: JTree |
Java Swing - Como criar sua primeira JTree usando um vetor de nomes de linguagens de programaçãoQuantidade de visualizações: 13574 vezes |
|
Este exemplo mostra como criar uma JTree bem simples, e que servirá de base para a criação de aplicações Java Swing mais elaboradas. Os itens da JTree são fornecidos como um vetor de objetos, de forma que cada sub-vetor constitui uma seção da árvore. Os elementos (nós) são inseridos em suas devidas posições usando uma função recursiva. Veja o resultado na figura abaixo: ![]() E agora o código Java completo para o exemplo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import javax.swing.tree.*;
public class Estudos extends JFrame{
public Estudos(){
super("Exemplo de uma JTree simples");
Object[] linguagens = {
"Linguagens",
new Object[]{
"Compiladas",
"C++",
"Delphi"
},
new Object[]{
"Interpretadas",
"JavaScript",
"Python",
"Ruby"
}
};
DefaultMutableTreeNode raiz = montar(linguagens);
JTree arvore = new JTree(raiz);
Container c = getContentPane();
c.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane(arvore);
c.add(scrollPane);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private DefaultMutableTreeNode montar(Object[] hier){
DefaultMutableTreeNode no = new DefaultMutableTreeNode(hier[0]), filho;
for(int i = 1; i < hier.length; i++){
Object n_no = hier[i];
if(n_no instanceof Object[]){ // nó possui filhos
filho = montar((Object[])n_no);
}
else{
filho = new DefaultMutableTreeNode(n_no); // folha
}
no.add(filho);
}
return(no);
}
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Usando laços for aninhados para desenhar uma pirâmide de números em Java (com o usuário informando a quantidade de linhas)Quantidade de visualizações: 9197 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que solicita ao usuário um número inteiro. Este número inteiro deverá estar entre 1 e 12 e será usado como a quantidade de linhas em uma pirâmide de números. Você deverá usar laços for aninhados para controlar as linhas e montar a estrutura desejada. Sua saída deverá ser parecida com:
Informe a quantidade de linhas: 5
1
2 1 2
3 2 1 2 3
4 3 2 1 2 3 4
5 4 3 2 1 2 3 4 5
Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos fazer a leitura usando a classe Scanner
Scanner entrada = new Scanner(System.in);
// vamos solicitar a quantidade de linhas
System.out.print("Informe a quantidade de linhas: ");
int numLinhas = Integer.parseInt(entrada.nextLine());
// não queremos aceitar quantidades de linhas menores que 1
// ou maiores que 12
if((numLinhas < 1) || (numLinhas > 12)){
System.out.println("O número de linhas deve estar entre 1 e 12");
System.exit(0);
}
// este laço externo controla as linhas
System.out.println();
for(int linha = 1; linha <= numLinhas; linha++){
// este laço gera os espaços antes de cada número nas
// linhas da pirâmide
for (int coluna = 1; coluna <= (numLinhas - linha); coluna++){
System.out.print(" "); // três espaços aqui
}
// aqui nós exibimos os números de cada linha do lado
// esquerdo da pirâmide, até o centro
for(int i = linha; i >= 1; i--){
// o número da linha é maior ou igual a 10? se for
// colocamos um espaço antes do número
if(i >= 10){
System.out.print(" " + i);
}
else{ // o número da linha é menor que 10? vamos
//colocar dois espaços antes do número
System.out.print(" " + i);
}
}
// e finalmente exibimos os números de cada linha no
// lado direito da pirâmide
for (int i = 2; i <= linha; i++){
// o número da linha é maior ou igual a 10? se for
// colocamos um espaço antes do número
if(i >= 10){
System.out.print(" " + i);
}
else{ // o número da linha é menor que 10? vamos
// colocar dois espaços antes do número
System.out.print(" " + i);
}
}
// gera uma nova linha
System.out.println();
}
System.out.println();
}
}
|
C++ ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cosseno de um ângulo em C++ usando a função cos() do header math.h - Calculadora de cosseno em C++Quantidade de visualizações: 2244 vezes |
|
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 C++. Esta função, que faz parte do header math.h, recebe um valor numérico double e retorna um valor double, ou seja, também numérico) entre -1 até 1 (ambos inclusos). Veja:
#include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[]){
// vamos gerar o cosseno de três números
cout << "Cosseno de 0 = " << cos(0) << "\n";
cout << "Cosseno de 1 = " << cos(1) << "\n";
cout << "Cosseno de 2 = " << cos(2) << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Cosseno de 0 = 1 Cosseno de 1 = 0.540302 Cosseno de 2 = -0.416147 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: ![]() |
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 |









