Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha 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: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
|
Laços - Faça um programa para calcular o valor das seguintes expressões - Desafio de Programação Resolvido em JavaQuantidade de visualizações: 1683 vezes |
|
Exercício Resolvido de Java - Laços - Faça um programa para calcular o valor das seguintes expressões Pergunta/Tarefa: Faça um programa para calcular o valor das seguintes expressões: 1) __$S_1 = \frac{1}{1} + \frac{3}{2} + \frac{5}{3} + \frac{7}{4} + \text{...} + \frac{99}{50} __$ 2) __$S_2 = \frac{2^1}{50} + \frac{2^2}{49} + \frac{2^3}{48} + \text{...} + \frac{2^\text{50}}{1} __$ 3) __$S_3 = \frac{1}{1} - \frac{2}{4} + \frac{3}{9} - \frac{4}{16} + \frac{5}{25} - \text{...} - \frac{10}{100} __$ Resposta/Solução: Em ambas as expressões nós temos o último termo nos informando os valores limites. Dessa forma, basta fixarmos um laço for ou laço while com estes limites. Veja a resolução deste exercício em código Java console: package arquivodecodigos; public class Estudos{ public static void main(String[] args){ // primeira expressão int numerador = 1; int denominador = 1; double resultado = 0.0; // laço while para montar os termos e fazer a somatória while(numerador <= 99){ resultado = resultado + ((numerador * 1.0) / denominador); numerador = numerador + 2; denominador++; } // agora mostramos o resultado System.out.println("Primeira expressão: " + resultado); // segunda expressão int expoente = 1; denominador = 50; resultado = 0.0; // laço while para montar os termos e fazer a somatória while(denominador >= 1){ resultado = resultado + ((Math.pow(2, expoente) * 1.0) / denominador); expoente++; denominador--; } // agora mostramos o resultado System.out.println("Segunda expressão: " + resultado); // terceira expressão numerador = 1; denominador = 1; resultado = 0.0; int sinal = 1; // laço while para montar os termos e fazer a somatória while(numerador <= 10){ if(sinal > 0){ // somar resultado = resultado + ((numerador * 1.0) / denominador); } else{ // subtrair resultado = resultado - ((numerador * 1.0) / denominador); } numerador++; denominador = numerador * numerador; sinal = sinal * -1; } // agora mostramos o resultado System.out.println("Terceira expressão: " + resultado); } } Ao executar este código Java nós teremos o seguinte resultado: Primeira expressão: 95.5007946616706 Segunda expressão: 1.5608286920413398E15 Terceira expressão: 0.6456349206349207 |
|
Link para compartilhar na Internet ou com seus amigos: | |
C# ::: Dicas & Truques ::: Data e Hora |
Como calcular a diferença de anos, meses ou dias entre duas datas em C# usando a função Subtract() da classe DateTimeQuantidade de visualizações: 20815 vezes |
Esta dica mostra como obter a diferença de anos, meses ou dias entre duas datas. O truque aqui é usar o método Subtract() da estrutura DateTime. Este método recebe um objeto DateTime, subtrai seus valores do DateTime atual e retorna um objeto TimeSpan, usada para representar um intervalo de tempo. Veja o código completo:using System; namespace Estudos { class Program { static void Main(string[] args) { // vamos obter a diferença em anos, meses ou dias entre // duas datas DateTime data_inicial = new DateTime(2008, 4, 10); // 10/04/2008 DateTime data_final = new DateTime(2008, 5, 15); // 15/05/2008 // obtém a diferença TimeSpan dif = data_final.Subtract(data_inicial); // exibe o resultado System.Console.WriteLine("Diferença em:\nAnos: " + (dif.Days / 365) + "\nMeses: " + (dif.Days / 30) + "\nDias: " + dif.Days); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Diferença em: Anos: 0 Meses: 1 Dias: 35 Tome cuidado. Este método pode lançar uma exceção do tipo ArgumentOutOfRangeException se os valores fornecidos estiverem fora das faixas permitidas. |
C# ::: Dicas & Truques ::: Programação Orientada a Objetos |
C# para iniciantes - Programação orientada a objetos em C#: Classes, objetos, métodos e variáveis de instânciaQuantidade de visualizações: 30243 vezes |
A melhor forma de entender a programação orientada a objetos é começar com uma analogia simples. Suponha que você queira dirigir um carro e fazê-lo ir mais rápido pressionado o acelerador. O que deve acontecer antes que você seja capaz de fazer isso? Bem, antes que você possa dirigir um carro, alguém tem que projetá-lo. Um carro geralmente começa com desenhos feitos pelos engenheiros responsáveis por tal tarefa, tal qual a planta de uma casa. Tais desenhos incluem o projeto de um acelerador que possibilita ao carro ir mais rápido. O pedal do acelerador "oculta" os mecanismos complexos responsáveis por fazer o carro ir mais rápido, da mesma forma que o pedal de freio "oculta" os mecanismos que fazem o carro ir mais devagar e o volante "oculta" os mecanismos que fazem com que o carro possa virar para a direita ou esquerda. Isso permite que pessoas com pequeno ou nenhum conhecimento de motores possam facilmente dirigir um carro. Infelizmente, não é possível dirigir o projeto de um carro. Antes que possamos dirigí-lo, o carro deve ser construído a partir do projeto que o descreve. Um carro já finalizado tem um pedal de aceleração de verdade, que faz com que o carro vá mais rápido. Ainda assim, é preciso que o motorista pressione o pedal. O carro não acelerará por conta própria. Agora vamos usar nosso exemplo do carro para introduzir alguns conceitos de programação importantes à programação orientada a objetos. A execução de uma determinada tarefa em um programa exige um método. O método descreve os mecanismos que, na verdade, executam a tarefa. O método oculta tais mecanismos do usuário, da mesma forma que o pedal de aceleração de um carro oculta do motorista os mecanismos complexos que fazem com que um carro vá mais rápido. Em C#, começamos criando uma unidade de programa chamada classe para abrigar um método, da mesma forma que o projeto de um carro abriga o design do pedal de acelerador. Em uma classe fornecemos um ou mais métodos que são projetados para executar as tarefas da classe. Por exemplo, a classe que representa uma conta bancária poderia conter muitos métodos, incluindo um método para depositar dinheiro na conta, outro para retirar dinheiro, um terceiro para verificar o saldo, e assim por diante. Da mesma forma que não podemos dirigir o projeto de um carro, nós não podemos "dirigir" uma classe. Da mesma forma que alguém teve que construir um carro a partir de seu projeto antes que pudessémos dirigí-lo, devemos construir um objeto de uma classe antes de conseguirmos executar as tarefas descritas nela. Quando dirigimos um carro, o pressionamento do acelerador envia uma mensagem ao carro informando-o da tarefa a ser executada (neste caso informando-o de que queremos ir mais rápido). Da mesma forma, enviamos mensagens aos objetos de uma classe. Cada mensagem é uma chamada de método e informa ao objeto qual ou quais tarefas devem ser executadas. Até aqui nós usamos a analogia do carro para introduzir classes, objetos e métodos. Já é hora de saber que um carro possui atributos (propriedades) tais como cor, o número de portas, a quantidade de gasolina em seu tanque, a velocidade atual, etc. Tais atributos são representados como parte do projeto do carro. Quando o estamos dirigindo, estes atributos estão sempre associados ao carro que estamos usando, e cada carro construído a partir do projeto sofrerá variações nos valores destes atributos em um determinado momento. Da mesma forma, um objeto tem atributos associados a ele quando o usamos em um programa. Estes atributos são definidos na classe a partir da qual o objeto é instanciado (criado) e são chamados de variáveis de instância da classe. Veremos agora como definir uma classe em C# e usar um objeto desta classe em um programa. Se estiver usando o Visual C# 2005 ou 2008, a forma mais comum de adicionar uma classe ao seu projeto é clicando com o botão direito no namespace do projeto (o primeiro filho do solution explorer) e escolhendo a opção Add -> Class. Em seguida dê o nome "Cliente.cs" para a classe e clique o botão Add. Imediatamente o código inicial para a classe será exibido, contendo o namespace e alguns using padrões. Agora faça sua classe Cliente parecida com o código abaixo (não altere nada em relação ao namespace): class Cliente{ private String nome; // Um método que permite definir um valor // para a variável privada nome public void setNome(String nome){ this.nome = nome; } // Um método que permite obter o valor // da variável privada nome public String getNome(){ return this.nome; } } Agora vamos aprender a usar esta classe a partir da classe principal do programa (aquela que contém o método Main). Veja: static void Main(string[] args){ // Cria uma instância da classe Cliente Cliente c = new Cliente(); // Define um nome para o cliente c.setNome("Osmar J. Silva"); // Obtém o nome do cliente string nome = c.getNome(); Console.WriteLine(nome); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } |
C# ::: Dicas & Truques ::: Data e Hora |
Como exibir horas no formato curto em C# usando o sinalizador {0:t} da função Format() da classe StringQuantidade de visualizações: 14215 vezes |
Nesta dica mostrarei como podemos usar o sinalizador {0:t} da função Format() da classe String da linguagem C# para mostrar a hora atual no formato curto, ou seja, horas e minutos. Veja o exemplo: using System; namespace Estudos { class Program { static void Main(string[] args) { // hora atual no formato curto DateTime agora = DateTime.Now; // mostramos o resultado System.Console.WriteLine("Agora são: {0:t}", agora); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Agora são: 09:37 Veja que aqui eu formatei as horas diretamente na saída do programa. Se quisermos, por exemplo, guardar a formatação em uma variável, podemos fazê-lo da seguinte forma: using System; namespace Estudos { class Program { static void Main(string[] args) { // hora atual no formato curto DateTime agora = DateTime.Now; // guardamos o resultado em uma variável string horasStr = String.Format("{0:t}", agora); // mostramos o resultado System.Console.WriteLine("Agora são: " + horasStr); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } |
HTML5 ::: HTML5 + JavaScript ::: Canvas |
Programação gráfica para iniciantes - Como desenhar círculos com ou sem preenchimento usando o método arc() do objeto Canvas do HTML5Quantidade de visualizações: 5791 vezes |
Podemos usar o método arc() do objeto Canvas do HTML5 para desenhar círculos com ou sem prenchimento. Veja nos exemplos abaixo como isso pode ser feito. Primeiro um círculo sem preenchimento:<!doctype html> <html> <head> <title>O objeto Canvas do HTML5</title> </head> <body> <Canvas id="canvas1" width="500" height="350"></Canvas> <script type="text/javascript"> // obtemos uma referência ao elemento Canvas var canvas = document.getElementById("canvas1"); // obtemos o contexto de desenho var contexto = canvas.getContext("2d"); // vamos desenhar um círculo sem preenchimento com raio de 80 contexto.beginPath(); // início um novo caminho // o círculo começa no x = 100, y = 100, começa no ângulo 0 // e vai até o ângulo 360 (as medidas são em radianos, não em graus) contexto.arc(100, 100, 80, 0, 2 * Math.PI, false); contexto.lineWidth = 2; // largura da linha contexto.strokeStyle = '#990000'; // cor da linha contexto.stroke(); // realiza o desenho </script> </body> </html> Ao abrir esta página HTML nós teremos o seguinte resultado: E agora um círculo preenchido: <!doctype html> <html> <head> <title>O objeto Canvas do HTML5</title> </head> <body> <Canvas id="canvas1" width="500" height="350"></Canvas> <script type="text/javascript"> // obtemos uma referência ao elemento Canvas var canvas = document.getElementById("canvas1"); // obtemos o contexto de desenho var contexto = canvas.getContext("2d"); // vamos desenhar um círculo sem preenchimento com raio de 80 contexto.beginPath(); // início um novo caminho // o círculo começa no x = 100, y = 100, começa no ângulo 0 // e vai até o ângulo 360 (as medidas são em radianos, não em graus) contexto.arc(100, 100, 80, 0, 2 * Math.PI, false); // vamos preencher o círculo contexto.fillStyle = "#CCCCCC"; // cor do preenchimento contexto.fill(); // preenche de fato contexto.lineWidth = 2; // largura da linha contexto.strokeStyle = '#990000'; // cor da linha contexto.stroke(); // realiza o desenho </script> </body> </html> Ao abrir esta página HTML nós teremos o seguinte resultado: |
Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como somar os elementos da diagonal principal de uma matriz em RubyQuantidade de visualizações: 568 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 Ruby. 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 Ruby. Veja um trecho de código Ruby completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: # vamos declarar e construir uma matriz de três linhas e três colunas matriz = Array.new(3){Array.new(3)} soma_diagonal = 0; # guarda a soma dos elementos na diagonal principal # vamos ler os valores para os elementos da matriz for i in (0..2) # linhas for j in (0..2) # colunas printf("Valor para a linha %d e coluna %d: ", i, j) matriz[i][j] = gets.chomp.to_i end end # vamos mostrar a matriz da forma que ela # foi informada print("\n") for i in (0..2) # linhas for j in (0..2) # colunas printf("%5d ", matriz[i][j]) end print("\n") end # vamos calcular a soma dos elementos da diagonal # principal for i in (0..2) # linhas for j in (0..2) # colunas if(i == j) soma_diagonal = soma_diagonal + matriz[i][j] end end end # e mostramos o resultado printf("\nA soma dos elementos da diagonal principal é: %d", soma_diagonal) Ao executar este código Ruby 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 |
Desafios, Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
MySQL - Como adicionar horas ao valor de um campo DATETIME ou TIME usando a função ADDTIME() do MySQL |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha 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 |
Linguagens Mais Populares |
1º lugar: Java |