Você está aqui: Cards de Python |
||
|
||
|
|
||
Java ::: Coleções (Collections) ::: ArrayList |
Como percorrer os elementos de uma ArrayList do Java usando um IteratorQuantidade de visualizações: 22319 vezes |
|
Nesta dica mostrarei como é possível usar um iterador Iterator. Um Iterator, do pacote java.util, é um objeto que pode ser usado para percorrer os itens de uma coleção, tais como ArrayList e HashSet. Veja um exemplo no qual temos uma ArrayList genérica de strings. Depois de adicionar três nomes na ArrayList nós usamos um Iterator para percorrer a lista e mostrar os elementos de forma individual:
package estudos_java;
import java.util.*;
public class Estudos{
public static void main(String[] args){
// cria uma ArrayList que conterá strings
ArrayList<String> pessoas = new ArrayList<>();
// adiciona itens na lista
pessoas.add("Alberto");
pessoas.add("Victor");
pessoas.add("João");
// exibe os itens da lista usando um Iterator
for(Iterator<String> it = pessoas.iterator(); it.hasNext();){
System.out.println(it.next());
}
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Alberto Victor João |
Revit C# ::: Dicas & Truques ::: Colunas e Pilares |
Como listar os tipos de colunas e pilares disponíveis no Revit usando a Revit C# APIQuantidade de visualizações: 484 vezes |
|
Nesta dica mostrarei como podemos obter e retorna uma lista com as colunas e pilares disponíveis na sua instalação do Revit. Esse passo é muito importante quando precisamos informar o id do símbolo de família, ou seja, o tipo de coluna ou pilar que queremos criar, em um determinado momento, via programação Revit C# API. O primeiro passo é acessar o documento atual do Revit usando uma chamada à this.ActiveUIDocument.Document. Em seguida nós obtemos um objeto FilteredElementCollector para filtrar e retornar os símbolos de família que se enquadrem na categoria OST_StructuralColumns. Para finalizar, nós convertemos os elementos Element em FamilySymbol. Veja o código completo para o exemplo:
using System;
using Autodesk.Revit.UI;
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Structure;
using Autodesk.Revit.UI.Selection;
using System.Collections.Generic;
using Autodesk.Revit.DB.Architecture;
using System.Linq;
namespace Estudos {
[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.
TransactionMode.Manual)]
[Autodesk.Revit.DB.Macros.AddInId("ED8EC6C4-9489-48F7-B04E-B45B5D1BEB12")]
public partial class ThisApplication {
private void Module_Startup(object sender, EventArgs e) {
// vamos obter uma referência ao Document ativo
Document doc = this.ActiveUIDocument.Document;
// vamos obter um FilteredElementCollector contendo apenas
// elementos que sejam ElementType e pertençam à categoria
// OST_StructuralColumns
try {
FilteredElementCollector elementos = new FilteredElementCollector(doc)
.WhereElementIsElementType().OfCategory(BuiltInCategory.OST_StructuralColumns);
String lista = "";
// vamos percorrer os elementos retornados
foreach(Element elemento in elementos) {
// vamos converter o Element em FamilySymbol
FamilySymbol coluna = elemento as FamilySymbol;
// agora montamos a lista de colunas (ou pilares)
lista = lista + "Id: " + elemento.Id.IntegerValue + "; Nome: "
+ elemento.Name + "; Tipo: " + elemento.Category.Name +
"; Família: " + coluna.Family.Name + "\n";
}
// mostramos o resultado
TaskDialog.Show("Aviso", lista);
}
catch (Exception ex) {
TaskDialog.Show("Aviso", "Erro: " + ex.Message);
}
}
private void Module_Shutdown(object sender, EventArgs e) {
// para fazer alguma limpeza de memória ou algo assim
}
#region Revit Macros generated code
private void InternalStartup() {
this.Startup += new System.EventHandler(Module_Startup);
this.Shutdown += new System.EventHandler(Module_Shutdown);
}
#endregion
}
}
Ao executar este código Revit C# nós teremos o seguinte resultado: Id: 12190; Nome: UC305x305x97; Tipo: Pilares estruturais; Família: UC-Universal Columns-Column Id: 355634; Nome: 80 x 50; Tipo: Pilares estruturais; Família: Pila de Concreto - Retangular Id: 355636; Nome: 50 x 50; Tipo: Pilares estruturais; Família: Pila de Concreto - Retangular |
Ruby ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia do ano em Ruby usando um objeto da classe Time e a função ydayQuantidade de visualizações: 7137 vezes |
Em algumas situações precisamos obter uma representação numérica do dia do ano na linguagem Ruby. Para isso podemos usar o método yday da classe Time. Este método retorna um número inteiro na faixa 1..366. Veja como usá-lo no trecho de código abaixo:# constrói um objeto Time com a data e hora atual agora = Time.now # obtém o dia do ano dia_ano = agora.yday # exibe o resultado puts "O dia do ano é: " + dia_ano.to_s Ao executar este código Ruby nós teremos o seguinte resultado: O dia do ano é: 80 |
Delphi ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em DelphiQuantidade de visualizações: 3177 vezes |
|
Todos estamos acostumados com o Teorema de Pitágoras, que diz que "o quadrado da hipotenusa é igual à soma dos quadrados dos catetos". Baseado nessa informação, fica fácil retornar a medida do cateto oposto quando temos as medidas da hipotenusa e do cateto adjascente. Isso, claro, via programação em linguagem Delphi. Comece observando 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. A medida da hipotenusa é, sem arredondamentos, 36.056 metros. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras): \[c^2 = a^2 + b^2\] Tudo que temos que fazer é mudar a fórmula para: \[a^2 = c^2 - b^2\] Veja que agora o quadrado do cateto oposto é igual ao quadrado da hipotenusa menos o quadrado do cateto adjascente. Não se esqueça de que a hipotenusa é o maior lado do triângulo retângulo. Veja agora como esse cálculo é feito em linguagem Delphi:
procedure TForm2.Button1Click(Sender: TObject);
var
a, b, c: Real;
begin
c := 36.056; // medida da hipotenusa
b := 30; // medida do cateto adjascente
// agora vamos calcular o comprimento da cateto oposto
a := sqrt(sqr(c) - sqr(b));
// e mostramos o resultado
Edit1.Text := 'A medida do cateto oposto é: ' +
FloatToStr(a);
end;
Veja que o cálculo é feito a partir do evento Click de um botão Button1 e o resultado é apresentado na propriedade Text de uma caixa de texto Edit1. Ao executar este código Delphi nós teremos o seguinte resultado: A medida do cateto oposto é: 20,0008783807112 Como podemos ver, o resultado retornado com o código Delphi confere com os valores da imagem apresentada. |
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular juros simples e montante usando C++Quantidade de visualizações: 20050 vezes |
|
O regime de juros será simples quando o percentual de juros incidir apenas sobre o valor principal. Sobre os juros gerados a cada período não incidirão novos juros. Valor Principal ou simplesmente principal é o valor inicial emprestado ou aplicado, antes de somarmos os juros. Transformando em fórmula temos: J = P . i . n Onde: J = juros P = principal (capital) i = taxa de juros n = número de períodos Imaginemos uma dívida de R$ 2.000,00 que deverá ser paga com juros de 5% a.m. pelo regime de juros simples e o prazo para o pagamento é de 2 meses. O cálculo em C++ pode ser feito assim:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
float principal = 2000.00;
float taxa = 0.08;
int meses = 2;
float juros = principal * taxa * meses;
cout << "O total de juros a ser pago é: " <<
juros << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
O montante da dívida pode ser obtido das seguintes formas: a) Montante = Principal + Juros b) Montante = Principal + (Principal x Taxa de juros x Número de períodos) M = P . (1 + (i . n)) Veja o código:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
float principal = 2000.00;
float taxa = 0.08;
int meses = 2;
float juros = principal * taxa * meses;
float montante = principal * (1 + (taxa * meses));
cout << "O total de juros a ser pago é: " <<
juros << "\n";
cout << "O montante a ser pago é: " <<
montante << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
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 |






