![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Ética e Legislação Profissional |
||
|
||
|
|
||
PHP ::: Dicas & Truques ::: Strings e Caracteres |
Como usar a função strpos() do PHP para encontrar a posição da primeira ocorrência de uma substring em uma stringQuantidade de visualizações: 6792 vezes |
Em algumas situações gostaríamos de encontrar a posição da primeira ocorrência de uma substring em uma string usando PHP. Para isso podemos usar a função strpos(). Veja sua assinatura:mixed strpos(string $haystack, mixed $needle[, int $offset = 0]) O parâmetro $haystack é a string na qual a substring será pesquisada e $needle é a substring que queremos pesquisar. O parâmetro opcional $offset é o índice a partir do qual a pesquisa será feita. Na ausência deste parâmetro, a pesquisa será feita a partir do primeiro caractere da string. Veja um trecho de código no qual tentamos encontrar o índice da primeira ocorrência da palavra "PHP" na frase "Eu gosto de PHP":
<?php
$pos = strpos("Eu gosto de PHP", "PHP");
if($pos === false){
echo "A substring não foi encontrada.";
}
else{
echo "A substring foi encontrada no índice: " . $pos;
}
?>
Ao executarmos este trecho de código nós teremos o seguinte resultado: A substring foi encontrada no índice: 12 Fique atento ao uso do operador "===" para testar o retorno da função strpos(). Se você quiser inverter o teste, basta usar o operador "!==". Para finalizar, note que a função strpos() diferencia maiúsculas de minúsculas. Se você quiser efetuar uma pesquisa de substrings desconsiderando maiúsculas e minúsculas, use a função stripos(). Ambas as funções strpos() e stripos() podem provocar o erro "Offset not contained in string" se o valor do parâmetro $offset não estiver entre 0 (incluindo e o tamanho da string. |
Flutter ::: Material Library - Biblioteca Material ::: TextField |
Como clicar em um botão, obter o texto digitado em um TextField do Flutter e exibí-lo em uma AlertDialogQuantidade de visualizações: 3162 vezes |
|
Nesta dica mostrarei como clicar em um botão, obter o texto que o usuário digitou em um TextField e exibí-lo em uma caixa de mensagem AlertDialog. Para isso vamos tirar proveito da classe TextEditingController, que nos fornece um controller que pode ser associado a uma caixa de texto. Quando o usuário clicar no botão, nós chamamos o método setState() para atualizar uma variável com o texto do controller e em seguida exibimos uma mensagem AlertDialog com o texto digitado. Veja o exemplo completo:
import 'package:flutter/material.dart';
// método principal do Dart, que inicia a aplicação
void main() {
runApp(MeuApp());
}
class MeuApp extends StatelessWidget {
// Este widget é a raiz da aplicação Flutter
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Controle TextField',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: TelaInicial(),
);
}
}
// Vamos construir a view e retornar para a raiz da aplicação
class TelaInicial extends StatefulWidget {
TelaInicial({Key key}) : super(key: key);
@override
_TelaInicialState createState() => _TelaInicialState();
}
class _TelaInicialState extends State<TelaInicial> {
String nomeUsuario; // vai guarda o nome digitado no TextField
// controler para o TextField
TextEditingController nomeController = TextEditingController();
// método que nos permite obter o conteúdo digitado no TextField
void obterTexto() {
setState(() {
// transferimos para a variável nomeUsuario o conteúdo
// do texto do controller do TextField
nomeUsuario = nomeController.text;
});
// agora vamos mostrar o texto digitado em uma mensagem
// AlertDialog
showDialog<void>(context: context,
barrierDismissible: false, builder: (BuildContext context) {
return new AlertDialog(
title: new Text("Texto Digitado"),
content: new SingleChildScrollView(
child: new ListBody(
children: [
new Text("O texto digitado foi: $nomeUsuario"),
],
),
),
actions: [
new FlatButton(
child: new Text('OK'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
@override
Widget build(BuildContext context) {
// vamos criar uma caixa de texto chamada nomeTxt
final nomeTxt = TextField(
controller: nomeController,
decoration: InputDecoration(
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(10.0)),
hintText: 'Digite seu nome'
),
);
final btnNome = ElevatedButton(
onPressed: obterTexto,
child: Text('Clique Aqui'),
);
return Scaffold(
appBar: AppBar(
title: Text("O Widget TextField"),
),
body: Center(
child: Container(
child: Padding(
padding: const EdgeInsets.all(20.0),
child: Column(
children: <Widget>[
// a caixa de texto TextField vai aqui
nomeTxt,
// o botão vai aqui
btnNome,
],
),
),
),
),
);
}
}
|
Kotlin ::: Dicas de Estudo e Anotações ::: Input e Output (Entrada e Saída) |
Como usar a função readLine() do kotlin.io para ler a entrada do usuário em KotlinQuantidade de visualizações: 8246 vezes |
|
Podemos ler a entrada do usuário usando o método readLine() do pacote kotlin.io, que é importado automaticamente para todas as aplicações Kotlin. Esta função retorna um objeto da classe String? e aceita um valor null, ou seja, uma string vazia. Veja um exemplo no qual pedimos para o usuário informar o seu nome e em seguida exibimos uma saudação:
fun main(args: Array<String>) {
print("Por favor, informe o seu nome: ")
// vai ler o nome e guardar na variável nome
var nome = readLine()
println("Olá, $nome. Bem-vindo(a) ao Kotlin.")
}
Ao executarmos este código nós teremos o seguinte resultado: Por favor, informe o seu nome: Osmar J. Silva Olá, Osmar J. Silva. Bem-vindo(a) ao Kotlin. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Dados - Árvores Binárias e Árvores Binárias de Busca |
Exercícios Resolvidos de Java - Travessia de uma árvore binária de busca usando o percurso em-ordem (in-order, In-ordem ou ordem simétrica)Quantidade de visualizações: 3306 vezes |
|
Pergunta/Tarefa: O percurso em ordem (em-ordem, in-order, In-ordem ou ordem simétrica) é usado quando queremos exibir os valores dos nós da árvore binária de busca em ordem ascendente. Neste tipo de percurso nós visitamos primeiramente a sub-árvore da esquerda, então o nó atual e finalmente a sub-árvore à direita do nó atual. É importante notar que esta travessia é feita por meio de uma função recursiva. Escreva um programa Java que contenha uma árvore binária de busca cujos nós guardarão, além das referências para o filho esquerdo e o filho direito, apenas um valor inteiro. Forneça uma função inserir() que permitirá inserir os valores na árvore. Em seguida forneça uma função recursiva que permitirá fazer a travessia in-order da árvore. Sua saída deverá ser parecida com: Informe um valor inteiro: 7 Informe um valor inteiro: 3 Informe um valor inteiro: 18 Informe um valor inteiro: 4 Informe um valor inteiro: 9 Percurso em ordem: 3 4 7 9 18 Veja a resolução comentada deste exercício usando Java: Código para NoArvore.java:
package estudos;
public class NoArvore {
int valor; // valor armazenado no nó
NoArvore esquerdo; // filho esquerdo
NoArvore direito; // filho direito
// construtor do nó
public NoArvore(int valor){
this.valor = valor;
}
}
Código para ArvoreBinariaBusca.java:
package estudos;
public class ArvoreBinariaBusca {
private NoArvore raiz; // referência para a raiz da árvore
// método usado para inserir um novo nó na árvore
// retorna true se o nó for inserido com sucesso e false
// se o elemento não puder ser inserido (no caso de já
// existir um elemento igual)
public boolean inserir(int valor){
// a árvore ainda está vazia?
if(raiz == null){
// vamos criar o primeiro nó e definí-lo como a raiz da árvore
raiz = new NoArvore(valor); // cria um novo nó
}
else{
// localiza o nó pai
NoArvore pai = null;
NoArvore noAtual = raiz; // começa a busca pela raiz
// enquanto o nó atual for diferente de null
while(noAtual != null){
if(valor < noAtual.valor) {
pai = noAtual;
noAtual = noAtual.esquerdo;
}
else if(valor > noAtual.valor){
pai = noAtual;
noAtual = noAtual.direito;
}
else{
return false; // um nó com este valor foi encontrado
}
}
// cria o novo nó e o adiciona ao nó pai
if(valor < pai.valor){
pai.esquerdo = new NoArvore(valor);
}
else{
pai.direito = new NoArvore(valor);
}
}
return true; // retorna true para indicar que o novo nó
// foi inserido
}
// método que permite disparar a travessia em-ordem
public void emOrdem(){
emOrdem(raiz);
}
// sobrecarga do método emOrdem com uma parâmetro (esta é a
// versão recursiva do método)
private void emOrdem(NoArvore raiz){
if(raiz == null){ // condição de parada
return;
}
// visita a sub-árvore da esquerda
emOrdem(raiz.esquerdo);
// visita o nó atual
System.out.print(raiz.valor + " ");
// visita a sub-árvore da direita
emOrdem(raiz.direito);
}
}
E aqui está o código para a classe que permite testar a árvore:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos criar um novo objeto da classe ArvoreBinariaBusca
ArvoreBinariaBusca arvore = new ArvoreBinariaBusca();
// vamos inserir 5 valores na árvore
for(int i = 0; i < 5; i++){
System.out.print("Informe um valor inteiro: ");
int valor = Integer.parseInt(entrada.nextLine());
// vamos inserir o nó e verificar o sucesso da operação
if(!arvore.inserir(valor)){
System.out.println("Erro. Um elemento já contém este valor.");
}
}
// vamos exibir os nós da árvore usando o percurso em ordem
System.out.println("\nPercurso em ordem:");
arvore.emOrdem();
System.out.println("\n");
}
}
|
PHP ::: Boletos Bancários, Arquivos de Remessa e Retornos do Banco ::: Caixa Econômica Federal - Banco 104 |
Boleto Bancário PHP - Como calcular o dígito verificador da conta corrente - Módulo 11 - Boleto Caixa Econômica CNAB240Quantidade de visualizações: 2249 vezes |
|
Nesta dica mostrarei, passo-a-passo, como calcular o dígito verificador da conta corrente para o boleto e arquivos de remessa da Caixa Econômica Federal (Banco 104) de acordo com o Manual de Leiaute de Arquivo Eletrônico Padrão CNAB 240 - Cobrança Bancária Caixa - SIGCB - Versão 67.118 v024 micro. Tenha certeza de verificar sua versão do manual antes de usar o código abaixo. O Dígito Verificador da Conta é um código adotado pelo banco, em nosso caso a Caixa Econômica, para verificação da autenticidade do número da conta corrente, e tal número deverá ser calculado através do módulo 11. Mostro abaixo o código completo para o cálculo do dígito verificador. Note que só precisamos informar o número da conta (sem o dígito) e o código se encarrega de calcular o dígito. Aqui eu informei o número da conta em uma variável, mas você pode modificar o código para que o valor venha de um formulário ou do banco de dados. Eis o código PHP:
<?php
// função que recebe o número da conta e devolve
// o dígito verificador
function digitoVerificadorConta($conta){
// primeiro vamos remover os espaços do número da conta
$conta = trim($conta);
// agora precisamos adicionar os zeros necessários
// para completar 12 posições
$conta = sprintf("%012d", $conta);
// agora vamos definir os índices de múltiplicação
$indices = "543298765432";
// e aqui a soma da multiplicação coluna por coluna
$soma = 0;
// fazemos a multiplicação coluna por coluna agora
for($i = 0; $i < strlen($conta); $i++){
$soma = $soma + ((int)($conta[$i])) *
((int)($indices[$i]));
}
// obtemos o resto da divisão da soma por onze
$resto = $soma % 11;
// subtraímos onze pelo resto da divisão
$digito = 11 - $resto;
// atenção: Se o resultado da subtração for
// maior que 9 (nove), o dígito será 0 (zero)
if($digito > 9){
$digito = 0;
}
return $digito;
}
// vamos obter o dígito verificador para a conta a seguir
$conta = "109990";
$digito = digitoVerificadorConta($conta);
echo "O dígito verificador para a conta " . $conta .
" é: " . $digito;
?>
Ao executar este código PHP nós teremos o seguinte resultado: O dígito verificador para a conta 109990 é: 6 É importante observar que o dígito verificador da agência e também do par agência/conta são sempre informados pela Caixa, geralmente pela agência na qual nossos clientes possuem conta. |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
|
Java - Programação orientada a objetos em Java - Como criar e usar interfaces em seus programas Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





