Você está aqui: Cards de Engenharia Civil - Estruturas de Aço e Madeira |
||
|
||
|
|
||
PHP ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em PHP - Como efetuar cálculos de porcentagem em PHPQuantidade de visualizações: 33740 vezes |
|
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em PHP. Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas. Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em PHP: <?php // Algoritmo que calcula porcentagem em PHP $valor = 178.00; // valor original $percentual = 15.0 / 100.0; // 15% $valor_final = $valor + ($percentual * $valor); // mostra o resultado echo "O valor final do produto é: " . $valor_final; // O resultado será 204,70 ?> Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em PHP: <?php // Algoritmo que calcula porcentagem em PHP $valor = 250.00; // valor original $percentual = 8.0 / 100.0; // 8% $valor_final = $valor - ($percentual * $valor); // mostra o resultado echo "O valor final do produto é: " . $valor_final; // O resultado será 230,00 ?> Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em PHP:
<?php
// Algoritmo que calcula porcentagem em PHP
$perguntas = 90.0;
$acertos = 72.0;
// mostra a porcentagem de acertos
echo "Porcentagem de acertos: " .
(($acertos / $perguntas) * 100) . "%";
// mostra a porcentagem de erros
echo "<br>Porcentagem de erros: " .
((($perguntas - $acertos) / $perguntas) * 100) . "%";
// Os resultados serão 80% e 20%
?>
Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em PHP:
<?php
// Algoritmo que calcula porcentagem em PHP
$valor_anterior = 300.0; // valor anterior
$novo_valor = 340.0; // valor novo
// calcula a porcentagem de lucro
// efetua o cálculo
$porcentagem_lucro = (($novo_valor * 100) / $valor_anterior) - 100;
echo "A porcentagem de lucro foi de: " .
$porcentagem_lucro . "%";
// O resultado será 13,33
?>
Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em PHP:
<?php
// Algoritmo que calcula porcentagem em PHP
$valor = 70.0; // valor do produto
$percentual = 5.0 / 100.0; // 5%
// calcula a comissão
$comissao = $percentual * $valor;
// mostra o resultado
echo "O valor repassado ao vendedor é: " .
$comissao;
// O resultado será 3,5
?>
|
C# ::: LINQ ::: LINQ to Objects |
Como retornar o primeiro elemento de um array de strings em C# usando a função First() do LINQQuantidade de visualizações: 1194 vezes |
|
Nesta dica mostrarei um exemplo bem simples do uso do método First() do LINQ (Language-Integrated Query) do C# para retornar o primeiro elemento de um vetor de strings. É claro que este método funciona com qualquer coleção, mas um exemplo simples nos ajudará a entender melhor o seu funcionamento. Em outras dicas eu aprofundo o uso deste método. Vamos ao código então. Veja:
using System;
using System.Linq;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// vamos construir um vetor de strings
string[] linguagens = {"Java", "Python", "PHP", "Ruby"};
// vamos obter o primeiro elemento do vetor
string primeira = linguagens.First();
// vamos mostrar o resultado
Console.WriteLine("A primeira linguagem é: {0}", primeira);
Console.WriteLine("Pressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: A primeira linguagem é: Java Fique atento ao fato de que o método First() pode atirar uma exceção do tipo InvalidOperation se o array ou coleção estiver vazia ou não incluir nenhum elemento que se encaixe nas condições testadas. Veja o resultado ao chamarmos este método em um vetor vazio: System.InvalidOperationException HResult=0x80131509 Message=Sequence contains no elements Source=System.Linq StackTrace: at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.First[TSource](IEnumerable`1 source) at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 11 |
Python ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca) |
Como usar a busca binária em Python - Pesquisa binária na linguagem PythonQuantidade de visualizações: 860 vezes |
|
A busca binária, ou pesquisa binária, é um algoritmo eficiente para encontrar um item em uma lista (vetor ou array) ordenada. Sim, os itens devem, obrigatoriamente, estar ordenados. O processo é bem simples. A busca binária começa a partir do meio da lista e compara o item nesta posição com o valor sendo pesquisado. Se o valor não for encontrado e for menor que o item no meio da lista, o algoritmo passa para a porção à esquerda da lista, eliminando, assim, metade dos elementos do vetor ou array (a porção maior que o valor pesquisado). Se o valor não for encontrado e for maior que o item no meio da lista, então a busca reinicia a partir da metade da sub-lista à direita (os itens maiores que o valor pesquisado). Essa divisão continua até que o valor seja encontrado ou não seja mais possível dividir a lista pela metade. Se um array ou vetor possuir 100 elementos e usarmos a busca binária nele, precisaremos efetuar no máximo 7 tentativas para encontrar o valor desejado. Se a lista possuir 4 bilhões de itens nós teremos que fazer no máximo 32 tentativas. Isso acontece porque a pesquisa binária é executada em tempo logarítmico, ou seja, log2 n, onde n é a quantidade de itens no vetor. Dessa forma, se tivemos 1.000 itens em um array, log2 1000 = 10 tentativas. Lembre-se de que, na programação log e log2 retornam resultados diferentes: log(10) = 2.302585092994046 enquanto log2(10) = 3.321928094887362. Na análise da busca binária nós usamos sempre log2. Vamos agora ver como podemos codificar a busca binária em Python. Veja o código a seguir:
# função principal do programa
def main():
# vamos criar uma lista ordenada de inteiros
valores = [3, 5, 7, 8, 9, 12, 43, 50, 52, 60]
print("Os valores da lista são: {0}".format(valores))
# vamos pedir o item a ser pesquisado
numero = int(input("Informe o número a ser pesquisado: "))
# agora vamos pesquisar o número no array usando a pesquisa
# binária
# a variável esquerda aponta para o primeiro elemento do vetor
esquerda = 0
# a variável direita aponta para o último elemento do vetor
direita = len(valores) - 1
# para indicar se o valor foi encontrado
encontrado = False
# enquanto houver mais de um elemento a ser comparado
while esquerda <= direita:
# obtemos o elemento na metade da lista
meio = (esquerda + direita) // 2
# fazemos a comparação
if numero == valores[meio]:
print("O número foi encontrado no índice {0}".format(
meio))
encontrado = True
break # sai do laço
# o item atual é maior que o valor pesquisado?
if valores[meio] > numero:
direita = meio - 1
# o item atual é menor que o valor pesquisado?
else:
esquerda = meio + 1
# o valor foi encontrado?
if not encontrado:
print("O valor pesquisado não foi encontrado")
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Os valores da lista são: [3, 5, 7, 8, 9, 12, 43, 50, 52, 60] Informe o número a ser pesquisado: 9 O número foi encontrado no índice 4 |
Java ::: Coleções (Collections) ::: LinkedList |
Java Collections - Como adicionar elementos no final de uma LinkedList usando os métodos add() e addLast()Quantidade de visualizações: 9459 vezes |
O trecho de código a seguir mostra como adicionar elementos no final de um lista ligada (objeto da classe LinkedList). Para isso podemos usar os métodos add() e addLast(). Ambos possuem a mesma funcionalidade. É claro que addLast() representa melhor a idéia de adicionar elementos no final da lista ligada. Veja ainda como usar um ListIterator para percorrer a lista e exibir os elementos. Outra técnica que você perceberá é o uso de unboxing dentro do laço while:
import java.util.*;
public class Estudos{
public static void main(String args[]){
// Cria uma LinkedList de inteiros
LinkedList<Integer> valores = new
LinkedList<Integer>();
// adiciona valores no final da lista ligada
// usando os métodos add() e addLast(). Lembre-se
// de que ambos fornecem a mesma funcionalidade
valores.add(56);
valores.addLast(3);
valores.add(28);
// obtém um ListIterator para percorrer toda a
// lista ligada, começando no primeiro elemento
ListIterator<Integer> iterador =
valores.listIterator(0);
while(iterador.hasNext()){
// note o unboxing aqui
int valor = iterador.next();
System.out.println(valor);
}
}
}
Ao executar este código Java nós teremos o seguinte resultado: 56 3 28 |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como retornar a data e hora da criação de um diretório em C# usando a função GetCreationTime() da classe DirectoryQuantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como usar o método GetCreationTime() da classe Directory do C# para obter e retornar a data e hora da criação de um diretório. Note que o retorno de uma chamada a este método é um objeto da classe DateTime. Veja o código completo para o exemplo:
using System;
using System.IO;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// caminho e nome do diretíro
string diretorio = @"C:\estudos_csharp\imagens";
DateTime data = Directory.GetCreationTime(diretorio);
Console.WriteLine("Diretório criado em: {0}", data);
Console.WriteLine("\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: Diretório criado em: 17/07/2022 22:09:12 |
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 |





