![]() |
|
Código-Fonte Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesTenha 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: Cards de Engenharia Civil - Fundações |
||
|
||
|
|
||
Delphi ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o comprimento da hipotenusa em Delphi dadas as medidas do cateto oposto e do cateto adjascenteQuantidade de visualizações: 1983 vezes |
Nesta dica mostrarei como é possível usar a linguagem Delphi para retornar o comprimento da hipotenusa dadas as medidas do cateto oposto e do cateto adjascente. Vamos começar analisando a imagem a seguir:![]() Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras), tudo que temos a fazer a converter esta fórmula para código Delphi. Veja:
procedure TForm2.Button1Click(Sender: TObject);
var
a, b, c: Real;
begin
a := 20; // medida do cateto oposto
b := 30; // medida do cateto adjascente
// agora vamos calcular o comprimento da hipotenusa
c := sqrt(sqr(a) + sqr(b));
// e mostramos o resultado
Edit1.Text := 'A medida da hipotenusa é: ' +
FloatToStr(c);
end;
Perceba que o cálculo foi efetuado a partir do evento Click de um botão Button1 e o resultado foi exibido na propriedade Text de uma caixa de texto Edit1. Ao executar este código Delphi nós teremos o seguinte resultado: A medida da hipotenusa é: 36,0555127546399 Como podemos ver, o resultado retornado com o código Delphi confere com os valores da imagem apresentada. |
JavaScript ::: Fundamentos da Linguagem ::: Estruturas de Controle |
JavaScript para iniciantes - Como testar condições em JavaScript usando if e if..elseQuantidade de visualizações: 10645 vezes |
As estruturas if (se) e if..else (se..senão) da linguagem JavaScript são muito usadas quando queremos testar condições em nossos códigos e, dependendo do resultado do teste, efetuar desvios na execução das instruções. Veja a sintáxe do if:
if(condição){
// instrução ou conjunto de instruções
}
A condição é qualquer teste que resulte em um valor boolean (true ou false). Veja, por exemplo, como podemos verificar se um valor é maior que 10:
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
var valor = 15;
// vamos testar se o valor é maior que 10
if(valor > 10){
document.write("O valor é maior que 10.");
}
</script>
</body>
</html>
Ao executarmos este código, o texto "O valor é maior que 10." será exibido na tela. Porém, também gostaríamos de exibir uma mensagem caso o valor não for maior que 10. Para isso podemos usar a cláusula else. Veja:
<script type="text/javascript">
var valor = 5;
// vamos testar se o valor é maior que 10
if(valor > 10){
document.write("O valor é maior que 10.");
}
else{
document.write("O valor NÃO é maior que 10.");
}
</script>
Ao executarmos o exemplo novamente, o texto "O valor NÃO é maior que 10." será exibido. Isso aconteceu porque, ao não satisfazer a condição do if, o fluxo de código caiu na cláusula else. Há algumas situações nas quais precisamos testar muitas condições ao mesmo tempo. Assim, além do if e else podemos empregar também a cláusula else if (senão se). Veja um exemplo no qual expandimos o exemplo anterior para testar se o valor é maior, menor ou igual a 10:
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
var valor = 5;
// vamos testar se o valor é maior, menor ou igual a 10
if(valor > 10){
document.write("O valor é maior que 10.");
}
else if(valor < 10){
document.write("O valor é menor que 10.");
}
else{
document.write("O valor é igual a 10.");
}
</script>
</body>
</html>
Esta dica foi escrita e testada no Internet Explorer 8 e Firefox 3.6. |
VB.NET ::: VB.NET para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em VB.NETQuantidade de visualizações: 461 vezes |
|
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando VB.NET. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código VB.NET. Veja um trecho de código VB.NET completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior:
Imports System
Module Program
' função principal do programa VB.NET
Sub Main(args As String())
' vamos declarar e construir uma matriz de três linhas
' e três colunas
Dim matriz(2, 2) As Integer
' guarda a soma dos elementos na diagonal principal
Dim soma_diagonal As Integer = 0
For i As Integer = 0 To matriz.GetUpperBound(0)
For j As Integer = 0 To matriz.GetUpperBound(1)
Console.Write("Informe o valor para a linha " & i & " e coluna " _
& j & ": ")
' lê o número e guarda na linha e coluna especificadas
matriz(i, j) = Integer.Parse(Console.ReadLine())
Next
Next
' vamos mostrar a matriz da forma que ela foi informada
Console.WriteLine(vbCrLf & "Valores na matriz: " & vbCrLf)
For i As Integer = 0 To matriz.GetUpperBound(0)
For j As Integer = 0 To matriz.GetUpperBound(1)
Console.Write(matriz(i, j).ToString().PadLeft(5) & " ")
Next
' passa para a próxima linha
Console.WriteLine()
Next
' vamos calcular a soma dos elementos da diagonal
' principal
For i As Integer = 0 To matriz.GetUpperBound(0)
For j As Integer = 0 To matriz.GetUpperBound(1)
If i = j Then
soma_diagonal = soma_diagonal + matriz(i, j)
End If
Next
Next
' finalmente mostramos a soma da diagonal principal
Console.WriteLine(vbCrLf & "A soma dos elementos da diagonal principal é: " _
& soma_diagonal)
Console.WriteLine(vbCrLf & vbCrLf & "Pressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
Ao executar este código VB.NET nós teremos o seguinte resultado: Informe o valor para a linha 0 e coluna 0: 3 Informe o valor para a linha 0 e coluna 1: 7 Informe o valor para a linha 0 e coluna 2: 9 Informe o valor para a linha 1 e coluna 0: 2 Informe o valor para a linha 1 e coluna 1: 4 Informe o valor para a linha 1 e coluna 2: 1 Informe o valor para a linha 2 e coluna 0: 5 Informe o valor para a linha 2 e coluna 1: 6 Informe o valor para a linha 2 e coluna 2: 8 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string C++ começa com uma determinada substring usando a função compare()Quantidade de visualizações: 8379 vezes |
|
Este exemplo usa a função compare() da classe string para verificar se uma string começa com uma determinada substring em C++. Se o resultado for positivo, o valor 0 é retornado. Do contrário obteremos um valor diferente de 0. Veja a forma da função que usaremos: int compare(size_t pos1, size_t n1, const string& str) const; int compare(size_t pos1, size_t n1, const char* s) const; a) Fornecendo uma variável como parâmetro; b) Fornecendo uma string entre aspas. O truque aqui é fornecer a posição inicial e a quantidade de caracteres que queremos testar.
#include <iostream>
#include <string>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// vamos criar duas strings
string str1("Gosto de programar em Java");
string str2("Gosto");
// agora vamos testar se a primeira string começa com a segunda
if(str1.compare(0, str2.size(), str2) == 0){
cout << "A string começa com \"Gosto\"";
}
else{
cout << "A string não começa com \"Gosto\"";
}
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: A string começa com "Gosto" |
PHP ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em PHP - Aprenda a criar e usar métodos e classes abstratas em PHPQuantidade de visualizações: 11175 vezes |
|
À medida que começamos a usar programação orientada a objetos em PHP algumas situações interessantes podem surgir, tais como o uso de métodos e classes abstratas. As classes e métodos abstratos podem ser usados por uma série de razões. Eis as que considero mais importantes: a) - Um classe abstrata não permite que criemos novas instâncias da mesma. Veja:
<?
// Uma classe Boleto abstrata
abstract class Boleto{
}
// vamos criar um novo objeto desta classe
$b = new Boleto();
?>
Ao executarmos este código teremos a seguinte mensagem de erro: Fatal error: Cannot instantiate abstract class Boleto in ... A vantagem de termos uma classe que não pode ser instanciada é que podemos usá-la como classe base em um código envolvendo poliformismo (no momento que escrevo este artigo não vejo como implementar polimorfismo em PHP. Me pergunto se isso é possível em linguagens de tipos dinâmicos). b) - Qualquer classe que contenha um ou mais métodos abstratos também precisa se declarar abstrata. Como um método abstrato não pode conter implementação, ao forçar a classe a ser abstrata também, as classes derivadas terão a obrigação de implementar tal método. Veja um trecho de código no qual criamos uma classe normal contendo um método abstrato:
<?
// Uma classe Boleto não-abstrata
class Boleto{
// um método abstrato
public abstract function imprimir($dados);
}
?>
Ao executarmos este código teremos a seguinte mensagem de erro: Fatal error: Class Boleto contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Boleto::imprimir) in ... Ao marcarmos a classe como abstract esta mensagem de erro desaparecerá. c) - Uma classe que herda de uma classe derivada deve, obrigatoriamente, fornecer implementação para todos os métodos abstratos herdados. Veja o trecho de código no qual temos uma classe Boleto e uma classe BoletoBradesco:
<?
// Uma classe Boleto abstrata
abstract class Boleto{
// um método abstrato
public abstract function imprimir($dados);
}
// vamos herdar da classe Boleto
class BoletoBradesco extends Boleto{
}
?>
A mensagem de erro aqui é a mesma quando temos métodos abstratos em uma classe mas não a declaramos como abstrata. Basta fornecer a implementação para o método imprimir e a mensagem de erro desaparece:
<?
// Uma classe Boleto abstrata
abstract class Boleto{
// um método abstrato
public abstract function imprimir($dados);
}
// vamos herdar da classe Boleto
class BoletoBradesco extends Boleto{
public function imprimir($dados){
echo "Imprimindo o boleto: " . $dados;
}
}
// vamos criar um objeto da classe BoletoBradesco
$b = new BoletoBradesco();
// vamos imprimir o boleto
$b->imprimir("Dados do boleto");
?>
d) - Um método marcado como abstract não pode conter implementação, ou seja, a implementação será feita pelas classes derivadas. Veja:
<?
// Uma classe Boleto abstrata
abstract class Boleto{
// um método abstrato que não deveria conter implementação
public abstract function imprimir($dados){
echo "Isso vai dar um erro daqueles!";
}
}
?>
Ao tentarmos executar este trecho de código teremos a seguinte mensagem de erro: Fatal error: Abstract function Boleto::imprimir() cannot contain body in ... Bastará remover a implementação do método que a mensagem de erro desaparecerá. |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
|
VisuAlg - Como calcular o coeficiente angular de uma reta em VisuAlg dados dois pontos no plano cartesiano |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







