![]() |
|
|
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. |
||
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de Python - Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menorQuantidade de visualizações: 5208 vezes |
|
Algoritmos Resolvidos de Python - Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor Pergunta/Tarefa: Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor que R$ 20,00; caso contrário, o lucro será de 30%. Elabore um algoritmo que leia o valor do produto e imprima o valor de venda para o produto. Sua saída deverá ser parecida com: Informe o valor do produto: 85 O valor de venda é: 110.5 Veja a resolução comentada deste exercício usando Python: Código para principal.py:
# método principal
def main():
# valor ler o valor do produto
valor = float(input("Informe o valor do produto: "))
# vamos calcular o valor de venda
if valor < 20:
valor_venda = valor + (valor * (45.0 / 100))
else:
valor_venda = valor + (valor * (30.0 / 100))
print("O valor de venda é: {0}".format(valor_venda))
if __name__== "__main__":
main()
|
Java ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como usar classes abstratas em Java - Programação Orientada a Objetos - Java POOQuantidade de visualizações: 22583 vezes |
Classes abstratas (abstract classes) não diferem muito das classes que normalmente criamos, ou seja, elas também podem possuir propriedades e métodos. Porém, não é possível criar instâncias de uma classe abstrata usando o operador new. Veja:
abstract class Pessoa{
public String nome;
public int idade;
}
public class Estudos{
public static void main(String args[]){
// cria um objeto da classe Pessoa
Pessoa p = new Pessoa();
}
}
Ao tentarmos compilar este exemplo teremos a seguinte mensagem:
Estudos.java:9: Pessoa is abstract; cannot be
instantiated
Pessoa p = new Pessoa();
^
1 error
Classes abstratas geralmente contém métodos abstratos (ainda que métodos não abstratos sejam também permitidos). Um método abstrato é um método que possui apenas a assinatura. Não há implementação. Esta implementação deverá ser fornecida pela subclasse ou classe derivada. Uma classe que contém métodos abstratos deverá, obrigatoriamente, ser declarada abstrata. Veja um exemplo de um método abstrato:
public abstract class Pessoa{
public abstract String getNome();
}
Se a classe não fosse declarada com o modificador abstract, teríamos a seguinte mensagem de erro de compilação:
Pessoa.java:1: Pessoa is not abstract and does
not override abstract method getNome() in
Pessoa
public class Pessoa{
^
1 error
Classes abstratas são um dos tópicos mais complicados da linguagem Java e uma dor de cabeça enorme para aqueles que estão estudando para a certificação Java. Mostramos abaixo algumas dicas resultantes de nossas pesquisas sobre o assunto. 1)Uma classe não abstrata não pode conter métodos abstratos. Se uma classe concreta (não abstrata) herda de uma classe abstrata e não implementa todos os métodos abstratos, a classe derivada deve ser declarada abstract. Além disso, métodos abstratos não podem ser marcados como static. Insistir nisso pode gerar a seguinte mensagem de erro de compilação:
Pessoa.java:2: illegal combination of
modifiers: abstract and static
public static abstract String getNome();
^
2) Embora uma classe abstrata não possa ser instanciada usando o operador new, ela pode conter construtores. Tais construtores serão invocados nos construtores das classes derivadas. 3) Uma subclasse pode ser abstrata até mesmo se sua superclasse for concreta. E isso é fácil de notar, uma vez que todas as classes Java herdam de Object, que é concreta. 4) Uma classe derivada pode sobrescrever um método de sua superclasse e declará-lo abstract. Isso faz sentido quando a classe derivada for abstract e quiser tornar o método herdado inválido. 5) Embora uma classe abstrata não possa ser instanciada usando o operador new, ela pode ser usada como um tipo de dados. Esta técnica é útil quando parte do time de desenvolvedores precisa adiantar códigos que dependem de classes que ainda não foram implementadas (e, portanto, herdarão das classes abstratas usadas como tipos de dados) por outra parte do mesmo time. |
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como contar as ocorrências de uma substring em uma string em Ruby usando a função scan()Quantidade de visualizações: 8923 vezes |
Podemos obter a quantidade de vezes em que uma substring aparece em uma string Ruby usando o método scan() da classe String. Este método nos permite executar um bloco de código a cada vez que a substring fornecida a ele for encontrada. Veja o exemplo:
# declara e inicializa uma variável string
frase = "Ruby? Gosto muito de Ruby"
puts "A frase é: " + frase
# vamos obter a quantidade de vezes em que a
# substring "Ruby" aparece na frase
quant = 0
substring = "Ruby"
frase.scan(substring){quant = quant + 1}
# exibe o resultado
puts "A substring \"Ruby\" aparece " + quant.to_s \
+ " vezes"
Ao executarmos este código Ruby nós teremos o seguinte resultado: A frase é: Ruby? Gosto muito de Ruby A substring "Ruby" aparece 2 vezes |
C ::: C para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em C - Curso de C para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 1519 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 C, 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 C que declara uma matriz 2x3 e gera a matriz transposta 3x2:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main(int argc, char *argv[]){
setlocale(LC_ALL,""); // para acentos do português
// vamos declarar e construir uma matrix
// 2x3 (duas linhas e três colunas
int matriz[2][3] = {{3, 5, 7}, {1, 2, 9}};
int i, j;
// vamos exibir os valores da matriz
printf("Elementos da matriz:\n");
for(i = 0; i < 2; i++){
for(j = 0; j < 3; j++){
printf("%5d ", matriz[i][j]);
}
printf("\n");
}
// como temos uma matriz 2x3, a transposta deverá ser
// 3x2, ou seja, três linhas e duas colunas
int linhas = 3; // linhas da matriz original
int colunas = 2; // colunas da matriz original
int transposta[linhas][colunas];
// e agora vamos preencher a matriz transposta
for(i = 0; i < 2; i++){
for(j = 0; j < 3; j++){
transposta[j][i] = matriz[i][j];
}
}
// vamos exibir os valores da matriz transposta
printf("Elementos da matriz transposta:\n");
for(i = 0; i < 3; i++){
for(j = 0; j < 2; j++){
printf("%5d ", transposta[i][j]);
}
printf("\n");
}
printf("\n\n");
system("PAUSE");
return 0;
}
Ao executar este código C 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
|
Nossas 20 dicas & truques de programação mais populares |
|
JavaScript - Validação de formulários em JavaScript - Como validar um formulário contendo usuário e senha em JavaScript JavaScript - Como adicionar zeros (ou outro caractere) no início de uma string usando o método padStart() da linguagem JavaScript Delphi - Como retornar o caractere a partir de um determinado código ASCII em Delphi usando a função Chr() |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Python - Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em Python |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





