Você está aqui: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Mouse e Teclado |
Java Swing para iniciantes - Como detectar eventos do teclado em uma janela JFrame do Java SwingQuantidade de visualizações: 13805 vezes |
|
Eventos do teclado podem ser detectados em uma janela JFrame do Java Swing por meio da interface KeyListener. Neste exemplo temos uma JFrame que estende essa interface e fornece implementação para o seu método keyPressed(). Temos também um controle JTextArea desabilitado, o qual usamos para exibir a letra e o código da tecla pressionada. Veja o resultado na imagem abaixo: ![]() E aqui está o código Java Swing completo para o exemplo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Estudos extends JFrame implements KeyListener{
private JTextArea textArea;
public Estudos(){
super("Eventos do Mouse e Teclado");
Container c = getContentPane();
FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
c.setLayout(layout);
textArea = new JTextArea(100, 150);
textArea.setEnabled(false);
textArea.setDisabledTextColor(Color.BLACK);
c.add(textArea);
addKeyListener(this);
setSize(350, 250);
setVisible(true);
}
public void keyPressed(KeyEvent e){
textArea.setText(
String.format("Tecla: %s - Código Unicode: %d",
e.getKeyText(e.getKeyCode()), e.getKeyCode()));
}
public void keyReleased(KeyEvent e){
// sem implementação
}
public void keyTyped(KeyEvent e){
// sem implementação
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
Java ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca) |
Como usar a pesquisa ou busca linear ou sequencial nos elementos de um vetor em JavaQuantidade de visualizações: 5073 vezes |
|
A busca linear ou sequencial, muitas vezes chamada de pesquisa linear ou sequencial, é geralmente implementada por meio de um algorítmo que varre os elementos de um coleção sequencial, começando do primeiro elemento e indo até o último. Esta busca não é tão usada quando a pesquisa binária ou hashing, por ser considerada muito lenta quando aplicado a um conjunto de dados muito grande. A busca linear ou sequencial em um vetor Java pode ser descrito pelos seguintes passos: 1) Efetua a varredura dos elementos do vetor. 2) Compara o valor do elemento atual do vetor com o valor sendo pesquisado. 3) Se o valor for encontrado, efetue o procedimento desejado com o elemento do vetor. 4) Se a varredura alcançar o último elemento do vetor e o valor pesquisado não for encontrado, exiba uma mensagem de erro ou algum outro procedimento para alertar o usuário do programa. Veja um exemplo no qual declaramos e preenchemos um vetor de int com 5 elementos e em seguida usamos um método pesquisaLinear para verificar se um determinado valor existe no vetor:
package arquivodecodigos;
public class Estudos{
public static void main(String a[]){
// vamos criar um vetor de 5 elementos int
int[] valores = {32, 7, 21, 4, 90};
// vamos pesquisar o valor 21
int valor = 21;
// vamos verifiar se o valor está no vetor
int indice = pesquisaLinear(valores, valor);
if(indice > -1){
System.out.println("O valor foi encontrado no índice: "
+ indice);
}
else{
System.out.println("O valor não foi encontrado.");
}
}
// método que permite efetuar a busca linear em um vetor
public static int pesquisaLinear(int[] vetor, int valor){
// percorre os elementos do vetor
for(int i = 0; i < vetor.length; i++){
// o valor foi encontrado?
if(vetor[i] == valor){
return i;
}
}
// não foi encontrado? vamos retornar -1
return -1;
}
}
Ao executarmos este código nós teremos o seguinte resultado: O valor foi encontrado no índice: 2 Veja o mesmo código sem usar um método adicional, ou seja, a busca linear é feito dentro do método main() da classe Java:
package arquivodecodigos;
public class Estudos{
public static void main(String a[]){
// vamos criar um vetor de 5 elementos int
int[] valores = {32, 7, 21, 4, 90};
// vamos pesquisar o valor 21
int valor = 21;
// vamos verifiar se o valor está no vetor
int indice = -1; // não foi encontrado
// percorre os elementos do vetor
for(int i = 0; i < valores.length; i++){
// o valor foi encontrado?
if(valores[i] == valor){
indice = i;
break;
}
}
if(indice > -1){
System.out.println("O valor foi encontrado no índice: "
+ indice);
}
else{
System.out.println("O valor não foi encontrado.");
}
}
}
|
Portugol ::: Desafios e Lista de Exercícios Resolvidos ::: Portugol Básico |
Exercícios Resolvidos de Portugol - Como calcular salário líquido em Portugol - Calculando o salário líquido de um professorQuantidade de visualizações: 1918 vezes |
|
Pergunta/Tarefa: Escreva um algoritmo Portugol ou VisuAlg que calcule o salário líquido de um professor. Seu programa deverá solicitar que o usuário informe o valor da hora aula (como real), o número de horas trabalhadas no mês (como inteiro) e o percentual de desconto do INSS (como real). Em seguida mostre o salário líquido. Sua saída deverá ser parecida com: Informe o valor da hora aula: 28 Informe o número de horas trabalhadas no mês: 12 Informe o percentual de desconto do INSS: 8 Salário Bruto: R$ 336,00 Total de Descontos: R$ 26,88 Salário Líquido: R$ 309,12 Veja a resolução comentada deste exercício usando Portugol (na versão Portugol Webstudio):
// Cálculo de Salário Bruto e Líquido em Portugol
programa {
funcao inicio() {
// variáveis usadas para resolver o problema
real valor_hora_aula
inteiro horas_trabalhadas
real percentual_desconto_inss
real salario_bruto
real salario_liquido
real total_desconto
// vamos ler o valor do hora aula
escreva("Informe o valor da hora aula: ")
leia(valor_hora_aula)
// vamos ler o número de horas trabalhadas no mês
escreva("Informe o número de horas trabalhadas no mês: ")
leia(horas_trabalhadas)
// vamos ler o percentual de desconto do INSS
escreva("Informe o percentual de desconto do INSS: ")
leia(percentual_desconto_inss)
// vamos calcular o salário bruto
salario_bruto = valor_hora_aula * horas_trabalhadas
// agora calculamos o total do desconto
total_desconto = (percentual_desconto_inss / 100) * salario_bruto
// finalmente calculamos o salário líquido
salario_liquido = salario_bruto - total_desconto
// mostramos o resultado
escreva("\nSalário Bruto: R$ ", salario_bruto)
escreva("\nTotal de Descontos: R$ ", total_desconto)
escreva("\nSalário Líquido: R$ ", salario_liquido)
}
}
|
Delphi ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em Delphi dados dois pontos no plano cartesianoQuantidade de visualizações: 1561 vezes |
|
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: ![]() Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem Delphi que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:
procedure TForm4.Button2Click(Sender: TObject);
var
x1, y1, x2, y2, m: Double;
begin
// x e y do primeiro ponto
x1 := 3;
y1 := 6;
// x e y do segundo ponto
x2 := 9;
y2 := 10;
// agora vamos calcular o coeficiente angular
m := (y2 - y1) / (x2 - x1);
// e mostramos o resultado
Memo1.Lines.Add('O coeficiente angular é: ' +
FloatToStr(m));
end;
Ao executar este código em linguagem Delphi nós teremos o seguinte resultado: O coeficiente angular é: 0,666666666666667 Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):
procedure TForm4.Button2Click(Sender: TObject);
var
x1, y1, x2, y2, tangente: Double;
cateto_oposto, cateto_adjascente, tetha: Double;
begin
// incluir a unit Math
// x e y do primeiro ponto
x1 := 3;
y1 := 6;
// x e y do segundo ponto
x2 := 9;
y2 := 10;
// vamos obter o comprimento do cateto oposto
cateto_oposto := y2 - y1;
// e agora o cateto adjascente
cateto_adjascente := x2 - x1;
// vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
// (em radianos, não se esqueça)
tetha := ArcTan2(cateto_oposto, cateto_adjascente);
// e finalmente usamos a tangente desse ângulo para calcular
// o coeficiente angular
tangente := Tan(tetha);
// e mostramos o resultado
Memo1.Lines.Add('O coeficiente angular é: ' +
FloatToStr(tangente));
end;
Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como verificar a existência de um valor em um array PHP usando a função in_array()Quantidade de visualizações: 9262 vezes |
|
A função in_array() da linguagem PHP nos permite pesquisar um valor em um vetor (array). Se o valor for encontrado, o valor TRUE é retornado. Caso contrário o valor FALSE é retornado. Veja um exemplo PHP no qual temos um vetor de strings com nomes de pessoas e queremos encontrar a pessoa com o nome "Victor":
<?php
/*
Este exemplo mostra como verificar a existência
de um valor em um array usando in_array().
*/
$pessoas[0] = "Carlos";
$pessoas[1] = "Juliana";
$pessoas[2] = "Igor";
$pessoas[3] = "Marcelo";
$pessoas[4] = "Amélia";
if(in_array("Victor", $pessoas)){
echo "O valor pesquisado foi encontrado no array.";
}
else{
echo "O valor pesquisado NÃO foi encontrado no array.";
}
?>
Ao executar este código PHP nós teremos o seguinte resultado: O valor pesquisado NÃO foi encontrado no array. |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







