![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
VisuAlg ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em VisuAlg - Como efetuar cálculos de porcentagem em VisuAlgQuantidade de visualizações: 2723 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 VisuAlg. 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 VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor, percentual, valor_final: real inicio valor <- 178.00 // valor original percentual <- 15.0 / 100.0 // 15% valor_final <- valor + (percentual * valor) // mostra o resultado escreva("O valor final do produto é: ", valor_final) // O resultado será 204,70 fimalgoritmo 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 VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor, percentual, valor_final: real inicio valor <- 250.00; // valor original percentual <- 8.0 / 100.0 // 8% valor_final <- valor - (percentual * valor) // mostra o resultado escreva("O valor final do produto é: ", valor_final) // O resultado será 230,00 fimalgoritmo 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 VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema perguntas, acertos: real inicio perguntas <- 90.0 acertos <- 72.0 // mostra a porcentagem de acertos escreva("Porcentagem de acertos: ") escreval(((acertos / perguntas) * 100), "%") // mostra a porcentagem de erros escreva("Porcentagem de erros: ") escreval((((perguntas - acertos) / perguntas) * 100), "%") // Os resultados serão 80% e 20% fimalgoritmo 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 VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor_anterior, novo_valor, porcentagem_lucro: real inicio 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 escreva("A porcentagem de lucro foi de: ", porcentagem_lucro, "%") // O resultado será 13,33 fimalgoritmo 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 VisuAlg: algoritmo "Algoritmo que calcula porcentagem" var // variáveis usadas na resolução do problema valor, percentual, comissao: real inicio valor <- 70.0 // valor do produto percentual <- 5.0 / 100.0 // 5% // calcula a comissão comissao <- percentual * valor // mostra o resultado escreva("O valor repassado ao vendedor é: ", comissao) // O resultado será 3,5 fimalgoritmo |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercício Resolvido de Java - Usando o laço while para pedir ao usuário que tente acertar um número aleatório entre 0 e 10 (incluindo) e mostrar a quantidade de tentativas feitasQuantidade de visualizações: 2793 vezes |
Pergunta/Tarefa: Escreva um programa Java que gera um número aleatório (randômico) entre 0 e 10 (incluindo estes dois valores) e peça ao usuário para adivinhá-lo. Use um laço while para registrar as tentativas feitas e, a cada tentativa, dê dicas informando se o número gerado é maior ou menor que a tentativa feita. Finalmente mostre a quantidade de tentativas feitas até que o número fosse acertado. Sua saída deverá ser parecida com a mostrada abaixo: Informe um número de 0 a 10: 5 Errou! Tente um número menor. Informe um número de 0 a 10: 2 Parabéns! Você acertou em 2 tentativas. Veja a resolução comentada deste exercício usando Java: package estudos; import java.util.Scanner; public class Exercicio { public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // declaração das variáveis int tentativas = 0, numeroLido; boolean acertou = false; // vamos gerar um número aleatório entre 0 e 10 int numero = (int)(Math.random() * 11); // um laço while que repetirá até que o número seja acertado while(!acertou){ System.out.print("Informe um número de 0 a 10: "); numeroLido = Integer.parseInt(entrada.nextLine()); tentativas++; if(numeroLido == numero){ // acertou? System.out.println("Parabéns! Você acertou em " + tentativas + " tentativas."); acertou = true; } else if(numeroLido < numero){ // o número informado é menor que o número gerado System.out.println("Errou! Tente um número maior."); } else{ // o número informado é maior que o número gerado System.out.println("Errou! Tente um número menor."); } } System.out.println("\n"); } } |
GoLang ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria, Trigonometria e Figuras Geométricas |
Exercícios Resolvidos de Golang - Como calcular a área de um losango em GoQuantidade de visualizações: 1216 vezes |
Pergunta/Tarefa: Um losango é um quadrilátero equilátero, ou seja, é um polígono formado por quatro lados de igual comprimento. Um losango é também um paralelogramo. Alguns autores exigem ainda que nenhum dos ângulos do quadrilátero seja reto para que ele seja considerado um losango. A área (em metros quadrados) de um losango pode ser calculada usando-se a seguinte fórmula: ![]() Onde D1 é a diagonal maior e D2 é a diagonal menor. Escreva um programa Golang que leia a diagonal maior e a diagonal menor e calcule a área do losango. Sua saída deverá ser parecida com: Informe a medida da diagonal maior: 5 Informe a medida da diagonal menor: 10 A área (em metros quadrados) do losango é: 25 Veja a resolução comentada deste exercício usando Go: // pacote principal package main // vamos importar o módulo de formatação de // entrada e saída import "fmt" // esta é a função principal do programa func main() { // variáveis que vamos usar na resolução do problema var diagonal_maior, diagonal_menor int var area float32 // vamos ler os valores das diagonais maior e menor fmt.Print("Informe a medida da diagonal maior: ") fmt.Scanln(&diagonal_maior) fmt.Print("Informe a medida da diagonal menor: ") fmt.Scanln(&diagonal_menor) // calcula a area do losango area = float32((diagonal_maior * diagonal_menor)) / 2 // mostra o resultado fmt.Printf("A área (em metros quadrados) é: %.2f", area) } |
C++ ::: Dicas & Truques ::: Recursão (Recursividade) |
Como calcular fatorial em C++ usando recursividadeQuantidade de visualizações: 9779 vezes |
O fatorial de um determinado número, representado por n! equivale a multiplicar este número por seus antecessores. Assim, o fatorial de 4 (4!) pode ser calculado da seguinte forma: 4 x 3 x 2 x 1 = 24 Sempre que falamos de recursão, o cálculo de fatorial nos auxilia na exemplicação por ser relativamente fácil de se entender todas as etapas do processo. O código abaixo mostra uma função recursiva em C++ que calcula o fatorial de qualquer número. Tenha cuidado. Calcular o fatorial de um número maior que 10 pode tornar sua máquina extremamente lenta, além de, muitas vezes, não retornar os resultados esperados. #include <iostream> using namespace std; // função recursiva para calcular o fatorial // de um determinado número int fatorial(int n){ if(n == 0) return 1; else return n * fatorial(n - 1); } int main(int argc, char *argv[]){ // vamos calcular o fatorial de 5 int res = fatorial(5); // exibe o resultado cout << "O fatorial de 5 é: " << res << endl; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
AutoLISP ::: Dicas & Truques ::: Passos Iniciais |
O que é AutoLISP e como escrever seu primeiro programa nessa linguagem de programaçãoQuantidade de visualizações: 1510 vezes |
O que é AutoLISP? Se você chegou até este artigo vindo de um mecanismo de busca, é bem provável que você já saiba o que é a AutoLISP e para que ela serve. No entanto, é sempre bom reforçar. A AutoLISP é um dialeto, ou seja, uma derivação, da linguagem de programação LISP. LISP vem de LISt Processing (Processamento de listas, vetores, matrizes, etc). Imagina-se que a LISP seja a linguagem de programação de alto nível mais antiga que se conhece, perdendo apenas para o FORTRAN. Embutida por padrão no AutoCAD, a LISP é a linguagem preferida para inteligência artificial em robótica. Para que serve a AutoLISP no AutoCAD? A AutoLISP, como mencionei acima, é linguagem de programação padrão do AutoCAD e já vem embutida nele, da mesma forma que a linguagem Python já vem embutida no FreeCAD. É claro que podemos manipular os objetos do AutoCAD usando VBA (Visual Basic for Applications), mas esta opção já não vem mais embutida por padrão na ferramenta. No AutoCAD, a AutoLISP é usada para automatizar tarefas e tornar menos tediosos os desenhos com detalhes muito repetitivos. Um programa AutoLISP nos permite, entre outras coisas, desenhar linhas, círculos, retângulos, polígonos, etc, selecionar objetos no GA (área de desenho do AutoCAD), solicitar entrada do usuário, exibir saída, ler e escrever em arquivos e muitas outras funcionalidades. Como escrever e executar um programa AutoLISP no AutoCAD Agora que já sabemos o que é a AutoLISP e seus objetivos, vamos escrever nosso primeiro programa. Abra o seu editor de código favorito (aqui eu usei o Notepad++) e digite a seguinte listagem: ; Este programa é usado para desenhar uma ; linha a partir de dois pontos indicados ; pelo usuário (defun desenharLinha() ; Vamos obter o primeiro ponto e guardar suas ; coordenadas na variável p (setq p (getpoint "Clique primeiro ponto na GA")) ; Vamos obter o segundo ponto e guardar suas ; coordenadas na variável q (setq q (getpoint "\nClique segundo ponto na GA")) ; Agora chamamos o comando LINE passando os ; dois pontos geométricos obtidos (command "LINE" p q "") ) Veja que, já no início do código, nós temos uma função chamada desenharLinha(). Dessa forma, salve o arquivo com o nome "desenharLinha.lsp" no diretório de sua preferência. Como carregar um programa AutoLISP no AutoCAD? Agora que já temos o arquivo .lsp pronto, vamos aprender como carregá-lo no AutoCAD. Para isso, vá até o menu Manage e escolha a opção Load Application. Selecione o arquivo desejado e clique o botão Load. Se tudo correu bem, você receberá uma mensagem "_appload desenharLinha.lsp successfully loaded". Agora já podemos usar nossa rotina para desenhar linhas no AutoCAD. Com a aba Model ativada, digite: (DESENHARLINHA) na janela de comandos do AutoCAD. Ao pressionar Enter você verá a mensagem "Clique primeiro ponto na GA". Lembrando que GA é a General Arrangement Drawing, ou seja, a área de desenho. Dessa forma, clique na área de desenho para que o código AutoLISP registre o primeiro ponto (coordenadas x, y, z). No mesmo momento uma mensagem "Clique segundo ponto na GA" será exibida. Clique na área de desenho para registrar o segundo ponto e pronto! Você verá uma linha ser desenhada entre os dois pontos geométricos que você informou. |
Delphi ::: Dicas & Truques ::: Bilbiotecas Estáticas (obj) e Dinâmicas (DLLs) |
Apostila Delphi para iniciantes - Como criar sua primeira DLL usando DelphiQuantidade de visualizações: 18920 vezes |
Em dicas anteriores você aprendeu o que é um DLL e sua importância para a programação no ambiente Windows. Nesta dica mostrarei como criar uma DLL bem simples e usá-la a partir de um programa Delphi. Para isso siga atentamente os passos abaixo: 1) Vá em File -> New -> Other; 2) Selecione Delphi Projects e escolha DLL Wizard; 3) Neste momento o DLL Wizard criará o esqueleto do código fonte da DLL. Note que o código desta unit é bem parecido com aquele da unit de uma aplicação. A diferença principal é o uso da palavra-chave library em vez de program: library Project2; { Important note about DLL memory management: ShareMem must be the first unit in your library's USES clause AND your project's (select Project-View Source) USES clause if your DLL exports any procedures or functions that pass strings as parameters or function results. This applies to all strings passed to and from your DLL--even those that are nested in records and classes. ShareMem is the interface unit to the BORLNDMM.DLL shared memory manager, which must be deployed along with your DLL. To avoid using BORLNDMM.DLL, pass string information using PChar or ShortString parameters. } uses SysUtils, Classes; {$R *.res} begin end. Salve esta unit como MinhaDLL.dproj em um diretório de sua preferência. Em seguida vamos criar uma rotina que receberá dois valores inteiros e retornará sua soma. Veja a modificação no código: library MinhaDLL; function Somar(a, b: Integer): Integer; stdcall; begin Result := a + b; // retorna a soma end; { vamos exportar (export) a função Somar } exports Somar; begin end. Nossa DLL está pronta. Agora vá no menu Project -> Build MinhaDLL (ou pressione Shift+F9). Se tudo correu bem você terá um arquivo chamado MinhaDLL.dll no diretório no qual você salvou o projeto. O próximo passo é aprender a carregar esta DLL a partir de seus programas Delphi. Veja mais dicas nesta seção para aprender como isso é feito. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Exercício Resolvido de Python - Como calcular o restante de um salário após o pagamento de duas contas com jurosQuantidade de visualizações: 1445 vezes |
Pergunta/Tarefa: Cintia acaba de receber seu salário mas precisa pagar duas contas atrasadas. Por causa do atraso, ela deverá pagar multa de 2% sobre cada conta. Faça um programa que leia o valor do salário e das duas contas e que calcule e mostre quanto restará do salário de Cintia. Sua saída deverá ser parecida com: Informe o salário: 1350 Valor da primeira conta: 140 Valor da segunda conta: 300 Total das contas sem juros: 440.0 Total dos juros: 8.8 Total das contas com juros: 448.8 Sobra do salário: 901.2 Veja a resolução comentada deste exercício usando Python: # método principal def main(): # vamos pedir que o usuário informe o valor do salário e das duas contas salario = float(input("Informe o salário: ")) conta1 = float(input("Valor da primeira conta: ")) conta2 = float(input("Valor da segunda conta: ")) # total a ser pago nas duas contas sem os juros total_contas = conta1 + conta2 # calcula os juros total_juros = total_contas * 0.02 # total a ser pago com juros total_contas_com_juros = total_contas + total_juros # sobra do salário sobra_salario = salario - total_contas_com_juros # mostra os resultados print("\nTotal das contas sem juros: {0}".format(total_contas)) print("Total dos juros: {0}".format(total_juros)) print("Total das contas com juros: {0}".format(total_contas_com_juros)) print("Sobra do salário: {0}".format(sobra_salario)) if __name__== "__main__": main() |
C# ::: Coleções (Collections) ::: ArrayList |
Como criar um ArrayList de inteiros no C# e percorrer os elementos usando o laço foreachQuantidade de visualizações: 13011 vezes |
Nesta dica mostrarei um código C# direcionado aos programadores que querem aprender a usar a classe ArrayList em seus programas. Trata-se da criação de uma ArrayList de números inteiros. Depois de criada a lista nós vamos adicionar alguns elementos e depois vamos usar o laço foreach para exibir os valores adicionados. Veja o código completo: using System; using System.Collections; namespace Estudos { class Principal { 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(7); // Percorre os elementos da ArrayList Console.WriteLine("Os elementos no ArrayList são:\n"); foreach (int valor in lista) { Console.Write("{0} ", valor); } Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Os elementos no ArrayList são: 30 2 98 1 7 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como usar o laço for para percorrer os elementos de um array e exibí-los na ordem original e invertidosQuantidade de visualizações: 15080 vezes |
Pergunta/Tarefa: Considere o seguinte array de inteiros: // um array de inteiros contendo sete elementos int valores[] = {6, 9, 12, 34, 83, 20, 17}; Seu programa deverá exibir a seguinte saída: Ordem original: 6 9 12 34 83 20 17 Ordem inversa: 17 20 83 34 12 9 6 public static void main(String[] args){ // um vetor de inteiros contendo sete elementos int valores[] = {6, 9, 12, 34, 83, 20, 17}; // primeiro vamos exibir os valores do vetor na ordem original System.out.println("Ordem original:\n"); for(int i = 0; i < valores.length; i++){ System.out.print(valores[i] + " "); } // agora vamos exibir na ordem inversa System.out.println("\n\nOrdem inversa:\n"); for(int i = valores.length - 1; i >= 0; i--){ System.out.print(valores[i] + " "); } } |
Java ::: Classes e Componentes ::: JTable |
Java Swing - Como excluir linhas de uma JTable em tempo de execução usando o método removeRow() da classe DefaultTableModelQuantidade de visualizações: 16026 vezes |
Nesta dica mostrarei como é possível excluir uma determinada linha de uma JTable usando o método removeRow() da classe DefaultTableModel. Veja que mostro também como inserir novas linhas na JTable usando o método insertRow(). Veja o resultado obtido na imagem abaixo: ![]() E agora o código Java Swing completo: package arquivodecodigos; import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.swing.table.*; public class Estudos extends JFrame{ public Estudos(){ super("Exemplo de uma tabela simples"); final DefaultTableModel modelo = new DefaultTableModel(); // constrói a tabela JTable tabela = new JTable(modelo); // Cria duas colunas modelo.addColumn("Nome"); modelo.addColumn("Idade"); JButton btn = new JButton("Inserir Linhas"); btn.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ String nome = JOptionPane.showInputDialog(null, "Informe o nome:"); String idade = JOptionPane.showInputDialog(null, "Informe a idade:"); int pos = Integer.parseInt(JOptionPane.showInputDialog(null, "Informe a posição da nova linha:")); // testa se a posição é válida if(pos > (modelo.getRowCount() - 1)) pos = 0; // Insere uma linha na posição especificada modelo.insertRow(pos, new Object[]{nome, idade}); } } ); JButton btn2 = new JButton("Excluir Linhas"); btn2.addActionListener( new ActionListener(){ @Override public void actionPerformed(ActionEvent e){ int pos = Integer.parseInt(JOptionPane.showInputDialog(null, "Informe a posição da linha a ser excluída:")); // testa se a posição é válida if(pos < modelo.getRowCount()) // Exclui a linha na posição especificada modelo.removeRow(pos); } } ); tabela.setPreferredScrollableViewportSize(new Dimension(350, 50)); Container c = getContentPane(); c.setLayout(new FlowLayout()); JScrollPane scrollPane = new JScrollPane(tabela); c.add(scrollPane); c.add(btn); c.add(btn2); setSize(400, 300); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Nossas 20 dicas & truques de programação mais populares |
Java - Como transformar um StringBuffer em uma String usando o método toString() da classe StringBuffer |
Você também poderá gostar das dicas e truques de programação abaixo |
QGIS - Como retornar o título do projeto do QGIS usando PyQGIS e a função title() da classe QgsProject Delphi - Como obter e exibir todos os itens selecionados em uma TListBox do Delphi de seleção múltipla |
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 |