Você está aqui: Cards de Python |
||
|
||
|
|
||
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Fenômenos dos Transportes, Hidráulica e Drenagem |
Exercício Resolvido de Python - Determine a vazão escoada em um canal com seção retangular, com lâmina d´água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por KmQuantidade de visualizações: 837 vezes |
|
Exercício Resolvido de Python - Determine a vazão escoada em um canal com seção retangular, com lâmina d'água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km Pergunta/Tarefa: Python para Fenômenos dos Transportes, Hidráulica e Drenagem. Python para cálculo de vazão em condutos livres. Fórmula de Manning para a velocidade de escoamento. Neste exercício em Python veremos como calcular a vazão de um canal com seção retangular. Para isso nós vamos usar a Equação de Manning da velocidade do escoamento. Determine a vazão escoada em um canal com seção retangular, com lâmina d'água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km. Utilize η=0,012. ![]() Sua saída deverá ser parecida com: Informe a Largura da Base do Canal (em metros): 3 Informe a Profundidade do Escoamento (em metros): 2 Informe a Declividade do Canal (em metros por km): 0.2 Informe o Coeficiente de Rugosidade do Canal: 0.012 A Área Molhada do Canal é: 6.0 m2 O Perímetro Molhado do Canal é: 7.0 m O Raio Hidráulico do Canal é: 0.8571428571428571 m A Velocidade do Escoamento é: 1.0634144533132281 m/s A Vazão do Canal é: 6.380486719879369 m3/s Veja a resolução completa para o exercício em Python, comentada linha a linha:
# vamos importar o módulo Math
import math
# método principal
def main():
# vamos ler a largura do canal em metros
b = float(input("Informe a Largura da Base do Canal (em metros): "))
# vamos ler a profundida do escoamento em metros
h = float(input("Informe a Profundidade do Escoamento (em metros): "))
# vamos obter a declividade do canal em metros por quilômetros
I = float(input("Informe a Declividade do Canal (em metros por km): "))
# vamos converter a declividade em metro por metro
I = I / 1000.0
# vamos ler o coeficiente de rugosidade do canal
n = float(input("Informe o Coeficiente de Rugosidade do Canal: "))
# vamos calcular a área molhada
am = b * h
# agora vamos calcular o perímetro molhado
pm = b + 2 * h
# finalmente calculamos o raio hidráulico
rh = am / pm
# agora vamos usar a equação de manning para calcular a velocidade do escoamento
v = math.pow(rh, 2.0 / 3.0) * (math.sqrt(I) / n)
# finalmente calculamos a vazão do canal
Q = am * v
# e mostramos os resultados
print("\nA Área Molhada do Canal é: {0} m2".format(am))
print("O Perímetro Molhado do Canal é: {0} m".format(pm))
print("O Raio Hidráulico do Canal é: {0} m".format(rh))
print("A Velocidade do Escoamento é: {0} m/s".format(v))
print("A Vazão do Canal é: {0} m3/s".format(Q))
if __name__== "__main__":
main()
|
Delphi ::: Dicas & Truques ::: Arquivos e Diretórios |
Como verificar se um arquivo existe usando a função FileExists() da unit SysUtils do DelphiQuantidade de visualizações: 20409 vezes |
|
Quando estamos trabalhando com arquivos, é sempre uma boa idéia checar se um arquivo já existe antes de permitir que nosso código tente criar outro arquivo com o mesmo nome. Em Delphi a existência de um arquivo pode ser verificada por meio do uso da função FileExists(), na unit SysUtils. Esta função recebe o caminho e nome do arquivo e retorna true se ele existir, e false caso contrário. Veja um trecho de código no qual testamos se um determinado aqui já existe no sistema:
procedure TForm1.Button1Click(Sender: TObject);
var
arquivo: string;
begin
// diretorio e nome do arquivo
arquivo := 'C:\arquivo de codigos\dados.txt';
// vamos verificar se o arquivo existe no caminho especificado
if FileExists(arquivo) then
ShowMessage('O arquivo existe')
else
ShowMessage('O arquivo NÃO existe');
end;
Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Métodos - Exercícios Resolvidos de Java - Ex. 4 - Um método estático que recebe dois números inteiros e retorna o maior delesQuantidade de visualizações: 4910 vezes |
|
Pergunta/Tarefa: Escreva um método Java que recebe dois números inteiros e retorna o maior deles. Este método deverá ter a seguinte assinatura:
public static int maior(int a, int b){
// sua implementação aqui
}
Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos solicitar que o usuário informe dois numeros inteiros
System.out.print("Informe o primeiro número: ");
int num1 = Integer.parseInt(entrada.nextLine());
System.out.print("Informe o segundo número: ");
int num2 = Integer.parseInt(entrada.nextLine());
// obtém o número maior
int numeroMaior = maior(num1, num2);
System.out.println("O numero maior é: " + numeroMaior);
System.out.println("\n");
}
// um método estático que recebe dois números inteiros e retorna o maior deles
public static int maior(int a, int b){
if(a > b){
return a;
}
else{
return b;
}
}
}
|
Java ::: Coleções (Collections) ::: ArrayList |
Java para iniciantes - Como embaralhar os elementos de uma ArrayList usando o método shuffle() da classe CollectionsQuantidade de visualizações: 13893 vezes |
|
Nesta dica mostrarei como usar o método estático shuffle() da classe Collections da linguagem Java para misturar, ou seja, embaralhar os elementos de um objeto da classe ArrayList. Veja o código completo:
package arquivodecodigos;
import java.util.ArrayList;
import java.util.Collections;
public class Estudos{
public static void main(String[] args){
// cria uma ArrayList que conterá strings
ArrayList<String> nomes = new ArrayList<String>();
// adiciona itens na lista
nomes.add("Carlos");
nomes.add("Maria");
nomes.add("Fernanda");
nomes.add("Osmar");
// exibe os elementos da ArrayList
System.out.println("Ordem original:\n");
for(int i = 0; i < nomes.size(); i++){
System.out.println(nomes.get(i));
}
// Vamos embaralhar os itens da ArrayList
Collections.shuffle(nomes);
// exibe os elementos da ArrayList
System.out.println("\nElementos embaralhados:\n");
for(int i = 0; i < nomes.size(); i++){
System.out.println(nomes.get(i));
}
System.exit(0);
}
}
Ao executar este código nós teremos o seguinte resultado: Ordem original: Carlos Maria Fernanda Osmar Elementos embaralhados: Carlos Fernanda Osmar Maria |
C++ ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em C++Quantidade de visualizações: 1199 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 C++. 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 C++:
#include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[]){
float c = 36.056; // medida da hipotenusa
float b = 30; // medida do cateto adjascente
// agora vamos calcular o comprimento da cateto oposto
float a = sqrt(pow(c, 2) - pow(b, 2));
// e mostramos o resultado
cout << "A medida do cateto oposto é: " << a << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: A medida do cateto oposto é: 20.0009 Como podemos ver, o resultado retornado com o código C++ confere com os valores da imagem apresentada. |
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 |








