Você está aqui: Cards de Cards de Hidrologia |
||
|
||
![]() |
||
C# ::: Coleções (Collections) ::: ArrayList |
Como passar uma ArrayList para um método C#Quantidade de visualizações: 9300 vezes |
Em algumas situações nós precisamos fornecer uma ArrayList para um método C# e manipulá-la a partir deste método. Nesta dica eu mostro como isso pode ser feito. Veja que, dentro do método Main da aplicação nós criamos um novo objeto da classe ArrayList e inserimos 5 números inteiros nela. Em seguida nós efetuamos uma chamada ao método exibirArrayList() passando a lista como referência, ou seja, qualquer alteração que fizermos na ArrayList dentro do método afetará também o objeto criado fora do método. Veja o código completo para o exemplo: using System; using System.Collections; namespace Estudos { class Program { 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); // passa o ArrayList para um método que exibirá // seus valores exibirArrayList(lista); Console.WriteLine("\n\nPressione qualquer tecla para sair..."); // pausa o programa Console.ReadKey(); } // método que receberá e exibirá o conteúdo do ArrayList static void exibirArrayList(ArrayList mLista) { foreach (int valor in mLista) { Console.Write("{0} ", valor); } } } } Ao executar este código C# nós teremos o seguinte resultado: 30 2 98 1 7 |
Java ::: Coleções (Collections) ::: HashSet |
Java HashSet - Como usar o método add() para adicionar novos elementos a um HashSet da linguagem JavaQuantidade de visualizações: 5279 vezes |
Novos elementos podem ser adicionados a um HashSet por meio do método add(), definido originalmente na interface Collection<E> e sobrescrevendo a versão herdada de AbstractCollection<E>. Este método possui a seguinte assinatura:public boolean add(E e) package estudos; import java.util.HashSet; import java.util.Iterator; import java.util.Set; public class Estudos{ public static void main(String[] args) { // vamos criar uma instância da classe HashSet Set<Integer> conjunto = new HashSet<>(); // vamos tentar inserir três inteiros neste conjunto if(conjunto.add(5)){ System.out.println("Elemento inserido com sucesso."); } else{ System.out.println("O elemento não foi inserido."); } if(conjunto.add(7)){ System.out.println("Elemento inserido com sucesso."); } else{ System.out.println("O elemento não foi inserido."); } if(conjunto.add(5)){ System.out.println("Elemento inserido com sucesso."); } else{ System.out.println("O elemento não foi inserido."); } // vamos exibir os elementos inseridos com sucesso Iterator iterator = conjunto.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } } } Ao executar este código teremos o seguinte resultado: Elemento inserido com sucesso. Elemento inserido com sucesso. O elemento não foi inserido. 5 7 |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Python para iniciantes - Como usar a instrução break em PythonQuantidade de visualizações: 10550 vezes |
A instrução break da linguagem Python é usada para interromper a execução de um laço for ou while. Observe que se o laço possuir um bloco else, este não será executado se a instrução break for usada. Veja um exemplo de um laço for que é interrompido se o valor da variável de controle for 5: # função principal do programa def main(): for i in range(0, 21): print(i) if i == 5: break if __name__== "__main__": main() Ao executarmos este código nós teremos o seguinte resultado: 0 1 2 3 4 5 |
JavaScript ::: Dicas & Truques ::: Matemática e Estatística |
Como elevar uma base a um determinado expoente usando o método pow() do objeto Math do JavaScriptQuantidade de visualizações: 24610 vezes |
Em algumas situações nós precisamos efetuar cálculos de potenciação em JavaScript, ou seja, elevar um número (uma base) a um determinado expoente e obter sua potência. Veja a figura a seguir:![]() Veja que aqui o valor 5 foi elevado ao cubo, ou seja, ao expoente 3 e obtemos como resultado sua potência: 125. A linguagem JavaScript nos fornece o método pow(), como parte do objeto Math, que recebe como argumentos a base e o expoente e nos retorna a potência. Veja um exemplo de seu uso no código abaixo: <!doctype html> <html> <head> <title>Estudos JavaScript</title> </head> <body> <script type="text/javascript"> var base = 4; var expoente = 5; var potencia = Math.pow(4, 5); document.write("A base " + base + " elevada ao expoente " + expoente + " é igual à potência " + potencia); </script> </body> </html> Ao executarmos este código JavaScript nós teremos o seguinte resultado: A base 4 elevada ao expoente 5 é igual a potencia 1024 |
GNU Octave ::: Desafios e Lista de Exercícios Resolvidos ::: Pesquisa Operacional |
Exercício Resolvido de Octave - Programação Linear - Um fazendeiro decidiu misturar duas rações, a Ração X e a Ração Y. Cada porção de ração dada aos animaisQuantidade de visualizações: 340 vezes |
Pergunta/Tarefa: Este exercício de Octave aborda o uso da função glpk() para resolver um problema de Pesquisa Operacional usando Programação Linear. 1) Um fazendeiro decidiu misturar duas rações, a Ração X e a Ração Y. Cada porção de ração dada aos animais exige 60g de proteína e 30g de gordura. A Ração X possui 15g de proteína e 10g de gordura, e custa R$ 80,00 a unidade. A Ração Y apresenta 20g de proteína e 5g de gordura e custa R$ 50,00 a unidade. Quanto de cada ração deve ser usada para minimizar os custos do fazendeiro? Sua saída deverá ser parecida com: A solução para o problema de minimização é: x = 2.40 y = 1.20 O custo mínimo é: 252.00 Antes de passarmos ao código Octave, vamos fazer a modelagem matemática do problema. O primeiro passo é identificar as variáveis. Assim, vamos chamar de x o número de unidades da Ração X e de y o número de unidades da Ração Y. Veja: x = Número de unidades da Ração X y = Número de unidades da Ração Y E então temos a função custo: custo = 80x + 50y A primeira restrição diz respeito à quantidade de proteína em cada porção de ração. Sabendo que a Ração X apresenta 15g de proteína e a Ração Y apresenta 20g de proteína nós temos: R1: 15x + 20y >= 60 (proteína) A segunda restrição diz respeito à quantidade de gordura em cada porção de ração. Sabendo que a Ração X apresenta 10g de gordura e a Ração Y apresenta 5g de gordura nós temos: R2: 10x + 5y >= 30 (gordura) As restrições R3 e R4 dizem respeito à não negatividade das variáveis de decisão: R3: x >= 0 R4: y >= 0 Veja agora o código Octave completo (pesquisa_operacional.m): # vamos começar definindo a matriz que representa a função de # minimização c = [80.0, 50.0]'; # agora a matriz de restrições A = [15, 20; 10, 5]; b = [60, 30]'; # as restrições de não negatividade e o limite superior lb = [0, 0]'; ub = []; # definimos as restrições como limites inferiores ctype = "LL"; # indicamos que vamos usar variáveis contínuas (não inteiros) vartype = "CC"; # vamos usar minimização, por isso definimos o valor 1. Se fosse # maximização o valor seria -1 s = 1; # definimos os parâmetros adicionais param.msglev = 1; param.itlim = 100; # e chamamos a função glpk() [xmin, fmin, status, extra] = glpk(c, A, b, lb, ub, ctype, vartype, s, param); # mostramos a solução para o problema de minimização printf("A solução para o problema de minimização é:\n\n"); printf("x = %.2f\n", xmin(1)); printf("y = %.2f\n", xmin(2)); # para finalizar vamos mostrar o custo mínimo printf("\nO custo mínimo é: %.2f\n\n", fmin); Ao executar o código você perceberá que, para minimizar os custos do fazendeiro, deverão ser usados na mistura 2,4 unidades da Ração X e 1,2 unidades da Raça Y, a um custo mínimo de R$ 252,00. |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de GNU Octave |
Veja mais Dicas e truques de GNU Octave |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |