![]() |
|
|
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 Engenharia Civil - Estruturas de Concreto Armado |
||
|
||
|
|
||
Java ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Java para iniciantes - Como usar os diferentes tipos de variáveis em JavaQuantidade de visualizações: 17945 vezes |
|
Na linguagem de programação Java podemos encontrar diferentes tipos de variáveis. Veja a lista e uma descrição detalhada de cada um destes tipos: Variáveis de instância (Instance Variables) - Estas variáveis são não-estáticas, ou seja, declaradas sem o modificador static. Variáveis de instância são assim chamadas porque seus valores são únicos para cada instância da classe. Assim, a variável nomeCliente pode armazenar valores diferentes para cada cópia da classe Cliente. Variáveis de classes - Estas variáveis são declaradas com o modificador static. Isso informa ao compilador que há exatamente uma única cópia desta variável, independente do número de instâncias da classe. Um bom exemplo de tal variável é quantCliente, que pode ser incrementada cada vez que uma nova cópia da classe é criada. Variáveis locais - São usadas para armazenar o estado temporário de um método. Variáveis locais são acessíveis somente dentro do método em que são declaradas, e automaticamente abandonadas na saída deste. Parâmetros - São os parâmetros de métodos. Tais variáveis são acessíveis somente ao código no corpo do método. Geralmente quando falamos de "campos em geral" (excluindo variáveis locais e parâmetros), podemos simplesmente dizer "campos". Se a discussão se aplica a todas as variáveis acima, usamos "variáveis". Se o contexto pede uma distinção, usamos termos específicos (campo estático, variável local, etc) como apropriado. Podemos ainda usar o termo "membro". Os campos, métodos e tipos aninhados de um tipo podem ser chamados de seus membros. |
PHP ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se duas strings são iguais em PHP sem considerar maiúsculas e minúsculas usando a função strcasecmp()Quantidade de visualizações: 1 vezes |
|
Em algumas situações nós gostaríamos de testar se duas strings são iguais em PHP, sem diferentes letras maiúsculas e minúsculas. Isso pode ser feito com o auxílio da função strcasecmp(), que retorna um valor 0 se as duas strings forem iguais. Veja um exemplo completo de seu uso:
<?php
$palavra1 = "Programar";
$palavra2 = "PROGRAMAR";
echo "A primeira palavra é: " . $palavra1;
echo "\nA segunda palavra é: " . $palavra2;
if(strcasecmp($palavra1, $palavra2) == 0){
echo "\nAs duas palavras são iguais";
}
else{
echo "\nAs duas palavras são diferentes";
}
?>
Ao executar este código PHP nós teremos o seguinte resultado: A primeira palavra é: Programar A segunda palavra é: PROGRAMAR As duas palavras são iguais |
Java ::: Java para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em Java - Java para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 4165 vezes |
|
A matriz transposta de uma matriz A é a matriz AT. Tal matriz é obtida quando copiamos os elementos da matriz A para uma outra matriz (ou para ela mesma) e trocamos de posição as linhas e colunas. Dessa forma, a primeira linha da matriz A se transforma na primeira coluna da matriz transposta, a segunda linha da matriz A se transforma na segunda coluna da matriz transposta e assim por diante. Em termos de notação, podemos dizer, de forma algébrica, que: ATji = Aij Onde i representa as linhas e j representa as colunas, tanto na matriz original quanto na matriz transposta. É importante estar atento à quantidade de linhas e colunas na matriz original e na matriz transposta equivalente. Assim, se a matriz original for 3x2, a matriz transposta será 2x3. Antes de vermos o código Java, dê uma olhada na seguinte matriz de duas linhas e três colunas: \[A = \left[\begin{matrix} 3 & 5 & 7 \\ 1 & 2 & 9 \end{matrix}\right] \] Sua matriz transposta correspondente é: \[A^T = \left[\begin{matrix} 3 & 1 \\ 5 & 2 \\ 7 & 9 \end{matrix}\right] \] E agora veja o código Java que declara uma matriz 2x3 e gera a matriz transposta 3x2:
package arquivodecodigos;
public class Estudos{
public static void main(String args[]){
// vamos declarar e construir uma matrix
// 2x3 (duas linhas e três colunas
int matriz[][] = {{3, 5, 7}, {1, 2, 9}};
// vamos exibir os valores da matriz
System.out.println("Elementos da matriz:");
for(int i = 0; i < matriz.length; i++){
for(int j = 0; j < matriz[0].length; j++){
System.out.printf("%5d ", matriz[i][j]);
}
System.out.println();
}
// como temos uma matriz 2x3, a transposta deverá ser
// 3x2, ou seja, três linhas e duas colunas
int linhas = matriz.length; // linhas da matriz original
int colunas = matriz[0].length; // colunas da matriz original
int transposta[][] = new int[colunas][linhas];
// e agora vamos preencher a matriz transposta
for(int i = 0; i < matriz.length; i++){
for(int j = 0; j < matriz[0].length; j++){
transposta[j][i] = matriz[i][j];
}
}
// vamos exibir os valores da matriz transposta
System.out.println("Elementos da matriz transposta:");
for(int i = 0; i < transposta.length; i++){
for(int j = 0; j < transposta[0].length; j++){
System.out.printf("%5d ", transposta[i][j]);
}
System.out.println();
}
}
}
Ao executar este código Java nós teremos o seguinte resultado:
Elementos da matriz:
3 5 7
1 2 9
Elementos da matriz transposta:
3 1
5 2
7 9
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercício Resolvido de Java - Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operaçõesQuantidade de visualizações: 6737 vezes |
|
Exercícios Resolvidos de Java - Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações Pergunta/Tarefa: Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações: void armazenaPessoa(String nome, int idade, float altura); void removePessoa(String nome); int buscaPessoa(String nome); // informa em que posição da agenda está a pessoa void imprimeAgenda(); // imprime os dados de todas as pessoas da agenda void imprimePessoa(int index); // imprime os dados da pessoa que está na posição "i" da agenda. O código deverá ser desenvolvido em Java console (modo texto) e usar um menu switch() para as operações. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: Código para a classe Pessoa (Pessoa.java):
package arquivodecodigos;
public class Pessoa {
private String nome;
private int idade;
private double altura;
// construtor cheio
public Pessoa(String nome, int idade, double altura) {
this.nome = nome;
this.idade = idade;
this.altura = altura;
}
// construtor vazio
public Pessoa() {
}
// método que imprime todos os dados da pessoa
public void imprimirDados(){
System.out.println("Nome: " + nome + "\nIdade: " +
idade + "\nAltura: " + altura);
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public double getAltura() {
return altura;
}
public void setAltura(double altura) {
this.altura = altura;
}
}
Código para a classe Agenda (Agenda.java):
package arquivodecodigos;
public class Agenda {
// vetor que guardará as pessoas
private Pessoa pessoas[];
// construtor da classe Agenda
public Agenda(int quantidade){
pessoas = new Pessoa[quantidade];
}
public void armazenaPessoa(String nome, int idade, double altura){
// ainda temos posições disponíveis na agenda?
boolean cadastrado = false;
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] == null){
// encontramos uma posição
Pessoa p = new Pessoa(nome, idade, altura); // criamos uma nova pessoa
// guardamos ela no vetor
pessoas[i] = p;
// e avisamos que o cadastro foi efetuado com sucesso
cadastrado = true;
break; // sai do laço
}
}
if(cadastrado){
System.out.println("\nCadastro efetuado com sucesso");
}
else{
System.out.println("\nNão foi possível cadastrar. Agenda cheia");
}
}
// método que permite pesquisar e excluir uma pessoa
public void removePessoa(String nome){
// vamos verificar se a exclusão foi efetuada com sucesso
boolean excluido = false;
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] != null){
// esta é a pessoa que estamos procurando?
if(pessoas[i].getNome().equals(nome)){
pessoas[i] = null; // posição disponível novamente
excluido = true;
break; // sai do laço
}
}
}
if(excluido){
System.out.println("\nPessoa removida com sucesso");
}
else{
System.out.println("\nNão foi possível remover. Pessoa não encontrada.");
}
}
// informa em que posição da agenda está a pessoa
public int buscaPessoa(String nome){
int resultado = -1;
// vamos verificar se a pessoa existe na agenda
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] != null){
// esta é a pessoa que estamos procurando?
if(pessoas[i].getNome().equals(nome)){
resultado = i;
break; // sai do laço
}
}
}
return resultado;
}
// imprime os dados de todas as pessoas da agenda
public void imprimeAgenda(){
// vamos percorrer o vetor de pessoas e imprimir cada uma
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] != null){
Pessoa p = pessoas[i];
System.out.println("\nNome: " + p.getNome());
System.out.println("Idade: " + p.getIdade());
System.out.println("Altura: " + p.getAltura());
}
}
}
// imprime os dados da pessoa que está na posição "i" da agenda
public void imprimePessoa(int index){
// este índice é válido?
if((index < 0) || (index > (pessoas.length - 1))){
System.out.println("\nÍndice inválido");
}
else{
Pessoa p = pessoas[index];
if(p == null){
System.out.println("\nNão existe pessoa nesse índice ainda.");
}
else{
System.out.println("\nNome: " + p.getNome());
System.out.println("Idade: " + p.getIdade());
System.out.println("Altura: " + p.getAltura());
}
}
}
}
Código para a classe Principal (Principal.java):
package arquivodecodigos;
import java.util.Scanner;
public class Principal {
// para fazer a leitura da entrada do usuário
static Scanner entrada = new Scanner(System.in);
public static void main(String[] args) {
// cria uma nova Agenda
Agenda agenda = new Agenda(10);
String nome; // nome da pessoa
int idade; // idade da pessoa
double altura; // altura da pessoa
// cria o menu de opções
while(true){
System.out.println("\n1. Nova Pessoa");
System.out.println("2. Excluir Pessoa");
System.out.println("3. Buscar Pessoa");
System.out.println("4. Imprimir Agenda");
System.out.println("5. Imprimir Pessoa (Índice)");
System.out.println("6. Sair");
System.out.print("Sua opção: ");
int opcao = Integer.parseInt(entrada.nextLine());
switch(opcao){
case 1:
System.out.print("\nInforme o nome: ");
nome = entrada.nextLine();
System.out.print("Informe a idade: ");
idade = Integer.parseInt(entrada.nextLine());
System.out.print("Informe a altura (use ponto em vez de vírgula): ");
altura = Double.parseDouble(entrada.nextLine());
agenda.armazenaPessoa(nome, idade, altura);
break;
case 2:
System.out.print("\nInforme o nome a ser removido: ");
nome = entrada.nextLine();
agenda.removePessoa(nome);
break;
case 3:
System.out.print("\nInforme o nome a ser pesquisado: ");
nome = entrada.nextLine();
int indice = agenda.buscaPessoa(nome);
if(indice < 0){
System.out.println("\nA pessoa não foi encontrada");
}
else{
System.out.println("\nA pessoa foi encontrada no índice: "
+ indice);
}
break;
case 4:
agenda.imprimeAgenda();
break;
case 5:
System.out.print("\nInforme o índice desejado: ");
int index = Integer.parseInt(entrada.nextLine());
agenda.imprimePessoa(index);
break;
case 6:
System.exit(0);
default:
System.out.println("\nOpção inválida\n");
break;
}
}
}
}
|
C ::: Dicas & Truques ::: Rotinas de Conversão |
Como converter uma string em um valor de ponto-flutuante usando a função atof() da linguagem CQuantidade de visualizações: 9664 vezes |
|
Em algumas situações, pode ser necessário converter uma string em um valor numérico de ponto-flutuante. Para isso podemos usar a função atof(). Esta função recebe uma matriz de caracteres e tenta transformá-la em um valor de ponto-flutuante. Se a conversão não for possível, o valor 0 é retornado. Os sinais "+" e "-", o ponto decimal e uma parte exponencial, representada por "e" ou "E" são válidos na string a ser convertida. Veja um exemplo:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
// valor de ponto-flutuante em forma de string
char valor_str[] = "34.5";
// A linha abaixo causa um comportamento estranho
//float res = 10 + valor_str;
// temos que converter a string em um valor de ponto-flutuante válido
float res = 10 + atof(valor_str);
printf("O resultado e: %f", res);
puts("\n");
system("pause");
return 0;
}
|
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 |





