![]() |
|
|
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 Python |
||
|
||
|
|
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Valor da diária, valor médio arrecadado com e sem promoção e o lucro ou prejuízo mensal de uma promoção em um hotelQuantidade de visualizações: 15218 vezes |
|
Pergunta/Tarefa: Escreva um programa Java para resolver o seguinte problema: Um hotel com 42 apartamentos resolveu fazer promoções para os fins de semana fora da alta temporada, isto é, nos meses de abril, maio, junho, agosto, setembro, outubro e novembro. A taxa da promoção é de 22% da diária normal. A ocupação média do hotel sem promoção é de 40%. A expectativa é aumentar a taxa de ocupação para 70%. Supondo que as expectativas se confirmem, escrever um algoritmo que lê a diária normal, que calcule e escreva as seguintes informações: (a) O valor da diária no período da promoção. (b) O valor médio arrecadado sem a promoção, durante um mês. (c) O valor médio arrecadado com a promoção, durante um mês. (d) O lucro ou prejuízo mensal com a promoção. Seu código Java deverá apresentar uma saída parecida com: Informe o valor da diária normal: 120 Diária no período de promoção: 26,40 Média arrecadada sem a promoção durante um mês: 8064,00 Média arrecadada com a promoção durante um mês: 3104,64 Prejuízo mensal com a promoção: 4959,36 Veja a resolução comentada deste exercício usando Java console (lendo a entrada do usuário por meio do uso da classe Scanner):
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos criar um objeto da classe Scanner
Scanner entrada = new Scanner(System.in);
// valor da diária em período normal
double valor_diaria_normal;
// valor da diária no período de promoção
double valor_diaria_promocao;
// vamos obter o valor da diária no período normal
System.out.print("Informe o valor da diária normal: ");
valor_diaria_normal = Double.parseDouble(entrada.nextLine());
// vamos obter o valor da diária no período promocional
valor_diaria_promocao = valor_diaria_normal * (22.0 / 100.0);
// vamos calcular o valor médio arrecadado sem a promoção, durante um mês
// estamos assumindo 4 finais de semana por mês
double media_arrecado_sem_promocao = (valor_diaria_normal
* (42 * (40.0 / 100.0)) * 4);
// vamos calcular o valor médio arrecadado com a promoção, durante um mês
// estamos assumindo 4 finais de semana por mês
double media_arrecado_com_promocao = (valor_diaria_promocao
* (42 * (70.0 / 100.0)) * 4);
System.out.printf("Diária no período de promoção: %.2f\n",
valor_diaria_promocao);
System.out.printf("Média arrecadada sem a promoção durante um mês: %.2f\n",
media_arrecado_sem_promocao);
System.out.printf("Média arrecadada com a promoção durante um mês: %.2f\n",
media_arrecado_com_promocao);
// houve lucro ou prejuízo?
if (media_arrecado_sem_promocao < media_arrecado_com_promocao) {
System.out.printf("Lucro mensal com a promoção: %.2f\n",
media_arrecado_com_promocao - media_arrecado_sem_promocao);
}
else {
System.out.printf("Prejuízo mensal com a promoção: %.2f\n",
media_arrecado_sem_promocao - media_arrecado_com_promocao);
}
}
}
|
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em Python - Python para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 7715 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 Python, 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 Python que declara uma matriz 2x3 e gera a matriz transposta 3x2:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos declarar e construir uma matrix
# 2x3 (duas linhas e três colunas
matriz = np.array([(3, 5, 7), (1, 2, 9)])
# vamos exibir os valores da matriz
print("Elementos da matriz:")
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
print("%7.2f" % matriz[i][j], end="")
print()
# como temos uma matriz 2x3, a transposta deverá ser
# 3x2, ou seja, três linhas e duas colunas
linhas = np.shape(matriz)[0] # linhas da matriz original
colunas = np.shape(matriz)[1] # colunas da matriz original
transposta = np.empty((colunas, linhas))
# e agora vamos preencher a matriz transposta
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
transposta[j][i] = matriz[i][j]
# vamos exibir os valores da matriz transposta
print("\nElementos da matriz transposta:")
for i in range(np.shape(transposta)[0]):
for j in range(np.shape(transposta)[1]):
print("%7.2f" % transposta[i][j], end="")
print()
if __name__== "__main__":
main()
Ao executar este código Python 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
É possível também obter a matriz transposta de um outra matriz usando o método transpose() da biblioteca NumPy da linguagem Python. Veja:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos declarar e construir uma matrix
# 2x3 (duas linhas e três colunas
matriz = np.array([(3, 5, 7), (1, 2, 9)])
# vamos exibir os valores da matriz
print("Elementos da matriz:")
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
print("%7.2f" % matriz[i][j], end="")
print()
# vamos transpor a matriz usando o método transpose()
transposta = matriz.transpose()
# vamos exibir os valores da matriz transposta
print("\nElementos da matriz transposta:")
for i in range(np.shape(transposta)[0]):
for j in range(np.shape(transposta)[1]):
print("%7.2f" % transposta[i][j], end="")
print()
if __name__== "__main__":
main()
Ao executar este novo código Python veremos que o resultado é o mesmo. |
Java ::: Dicas & Truques ::: Data e Hora |
Como retornar a diferença de dias entre duas datas em Java - Datas e horas em JavaQuantidade de visualizações: 10874 vezes |
Algumas vezes precisamos obter a diferença de dias entre duas datas em Java. Esta dica mostra como isso pode ser feito usando dois objetos da classe Date. Veja que usamos o método parse() da classe SimpleDateFormat para construir as duas datas e o método getTime() da classe Date para obter a quantidade de milisegundos desde 1º de janeiro de 1970 GMT armazenada em cada um dos objetos Date. O resto é um cálculo matemático bem simples:
package arquivodecodigos;
import java.util.*;
import java.text.*;
public class Estudos{
public static void main(String args[]){
try{
// constrói a primeira data
DateFormat fm = new
SimpleDateFormat("dd/MM/yyyy");
Date data1 = (Date)fm.parse("20/12/2019");
// constrói a segunda data
fm = new SimpleDateFormat("dd/MM/yyyy");
Date data2 = (Date)fm.parse("25/01/2020");
// vamos obter a diferença em dias
long diff = data2.getTime() -
data1.getTime();
// exibe o resultado
System.out.println("Primeira data: " + data1.toString());
System.out.println("Segunda data: " + data2.toString());
System.out.println("Diferença em dias = "
+ diff / (1000 * 60 * 60 * 24));
}
catch(ParseException e){
System.out.println("Erro: " + e.getMessage());
}
}
}
Ao executarmos este código Java nós teremos o seguinte resultado: Primeira data: Fri Dec 20 00:00:00 BRST 2019 Segunda data: Sat Jan 25 00:00:00 BRST 2020 Diferença em dias = 36 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como retornar o primeiro elemento de um vetor em JavaQuantidade de visualizações: 1218 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que mostra como acessar e retornar o primeiro elemento de um array (vetor) Java. Sua saída deverá ser parecida com: Os elementos do vetor são: [9, 5, 3, 2, 4, 8] O primeiro elemento do array é: 9 Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Arrays;
public class Estudos {
public static void main(String[] args) {
// vamos criar um array de inteiros
int valores[] = {9, 5, 3, 2, 4, 8};
System.out.println("Os elementos do vetor são: " +
Arrays.toString(valores));
// agora vamos retornar o primeiro elemento do vetor
int primeiro = valores[0];
// e mostramos o resultado
System.out.println("O primeiro elemento do array é: " +
primeiro);
}
}
|
C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de C++ - Como testar se um ano é bissexto em C++ - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou nãoQuantidade de visualizações: 699 vezes |
|
Pergunta/Tarefa: Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016. Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400. Escreva um programa C++ que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não. Sua saída deverá ser parecida com: Informe o ano: 2024 O ano informado é bissexto. Veja a resolução comentada deste exercício usando C++:
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// variáveis usadas para resolver o problema
int ano;
// vamos solicitar que o usuário informe um ano
cout << "Informe o ano: ";
cin >> ano;
// vamos verificar se o ano informado é bissexto
if(((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0)){
cout << "O ano informado é bissexto.";
}
else{
cout << "O ano informado não é bissexto.";
}
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
Delphi - Como usar a propriedade Eof para verificar se estamos no último registro do TClientDataSet do Delphi GNU Octave - Como calcular a derivada de uma função usando a função diff() do GNU Octave - Regra do Tombo (ou Regra da Potência) |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




