![]() |
|
|
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 |
||
|
||
|
|
||
C ::: Dicas & Truques ::: Strings e Caracteres |
Como contar as ocorrências de uma substring em uma string em C usando uma função substring_count() personalizadaQuantidade de visualizações: 10717 vezes |
Em algumas situações precisamos obter a quantidade de vezes que uma substring ocorre dentro de uma string. Para isso podemos usar a função personalizada substring_count(). Esta função recebe a string e a substring que desejamos pesquisar e retorna um inteiro contendo a quantidade de vezes que a substring foi encontrada. Veja o código:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// função personalizada que permite contar as
// ocorrências de uma substring em uma string
int substring_count(const char *str, const char *substring){
int i, j, k, quant = 0;
// vamos percorrer todos os caracteres da string
for(i = 0; str[i]; i++){
for(j = i, k = 0; str[j] == substring[k]; j++, k++){
if(substring[k + 1] == 0) // fim da comparação
quant++;
}
}
return quant;
}
int main(int argc, char *argv[]){
char frase[] = "Gosto muito de Java, JavaScript e Python";
printf("Ocorrencias encontradas: %d",
substring_count(frase, "Java"));
puts("\n\n");
system("PAUSE");
return 0;
}
|
VB.NET ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em VB.NET dados dois pontos no plano cartesianoQuantidade de visualizações: 1427 vezes |
|
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: ![]() Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem VB.NET que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:
Imports System
Module Program
Sub Main(args As String())
' x e y do primeiro ponto
Console.Write("Informe a coordenada x do primeiro ponto: ")
Dim x1 As Double = Double.Parse(Console.ReadLine())
Console.Write("Informe a coordenada y do primeiro ponto: ")
Dim y1 As Double = Double.Parse(Console.ReadLine())
' x e y do segundo ponto
Console.Write("Informe a coordenada x do segundo ponto: ")
Dim x2 As Double = Double.Parse(Console.ReadLine())
Console.Write("Informe a coordenada y do segundo ponto: ")
Dim y2 As Double = Double.Parse(Console.ReadLine())
' agora vamos calcular o coeficiente angular
Dim m As Double = (y2 - y1) / (x2 - x1)
' e mostramos o resultado
Console.WriteLine("O coeficiente angular é: " & m)
Console.WriteLine("\nPressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
Ao executar este código em linguagem VB.NET nós teremos o seguinte resultado: O coeficiente angular é: 0,6666666666666666 Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):
Imports System
Module Program
Sub Main(args As String())
' x e y do primeiro ponto
Console.Write("Informe a coordenada x do primeiro ponto: ")
Dim x1 As Double = Double.Parse(Console.ReadLine())
Console.Write("Informe a coordenada y do primeiro ponto: ")
Dim y1 As Double = Double.Parse(Console.ReadLine())
' x e y do segundo ponto
Console.Write("Informe a coordenada x do segundo ponto: ")
Dim x2 As Double = Double.Parse(Console.ReadLine())
Console.Write("Informe a coordenada y do segundo ponto: ")
Dim y2 As Double = Double.Parse(Console.ReadLine())
' vamos obter o comprimento do cateto oposto
Dim cateto_oposto As Double = y2 - y1
' e agora o cateto adjascente
Dim cateto_adjascente As Double = x2 - x1
' vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
' (em radianos, não se esqueça)
Dim tetha As Double = Math.Atan2(cateto_oposto, cateto_adjascente)
' e finalmente usamos a tangente desse ângulo para calcular
' o coeficiente angular
Dim tangente As Double = Math.Tan(tetha)
' e mostramos o resultado
Console.WriteLine("O coeficiente angular é: " & tangente)
Console.WriteLine("\nPressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar um caractere a partir de seu código ASCII em C# usando o método ToChar() da classe ConvertQuantidade de visualizações: 2 vezes |
|
A classe Convert, do namespace System, possui vários métodos que possibilitam a conversão entre tipos base. Um destes métodos nos permitem informar um número inteiro e obter o caractere ou letra correspondente. Veja um techo de código no qual informamos o valor 65 e obtemos, como retorno, a letra "A":
using System;
namespace Estudos {
class Program {
static void Main(string[] args) {
int codigo = 65;
char letra = Convert.ToChar(codigo);
Console.WriteLine("A letra para o código ASCII {0} é {1}",
codigo, letra);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executarmos este código C# nós teremos o seguinte resultado: A letra para o código ASCII 65 é A |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como inverter a ordem dos elementos de um array usando apenas uma variável temporáriaQuantidade de visualizações: 9982 vezes |
|
Pergunta/Tarefa: Considere o seguinte trecho de código:
// declara, constrói e inicializa um array de 10 inteiros
int valores[] = {6, 3, 90, 1, 54, 7, 12, 32, 9, 4};
int temp;
Ordem inicial: 6 3 90 1 54 7 12 32 9 4 Ordem invertida: 4 9 32 12 7 54 1 90 3 6 Veja a resolução comentada deste exercício usando Java console:
package estudos;
public class Estudos {
public static void main(String[] args) {
// declara, constrói e inicializa um array de 10 inteiros
int valores[] = {6, 3, 90, 1, 54, 7, 12, 32, 9, 4};
int temp;
// vamos mostar a ordem inicial dos elementos no vetor
System.out.print("Ordem inicial: ");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
// vamos inverter a ordem dos elementos no array
int inicio = 0, fim = valores.length - 1;
while(inicio < fim){
temp = valores[inicio];
valores[inicio] = valores[fim];
valores[fim] = temp;
// incrementa e decrementa as variáveis de controle
inicio++;
fim--;
}
// vamos mostar a ordem invertida dos elementos do vetor
System.out.print("\nOrdem invertida: ");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
System.out.println();
}
}
|
C ::: Desafios e Lista de Exercícios Resolvidos ::: C Básico |
Exercícios Resolvidos de C - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversaQuantidade de visualizações: 1676 vezes |
|
Algorítmo Resolvido de C - Ler um número de três dígitos, separá-lo e invertê-lo, escrevendo o número lido e sua forma inversa Pergunta/Tarefa: Escreva um programa C que leia um número de 3 dígitos e o inverta, escrevendo o número lido e o invertido. Por exemplo, se o usuário informar o valor 753, seu programa deverá invertê-lo, resultando em 357. Seu programa deverá exibir a seguinte saída: Observação: Seu código deverá usar apenas os operadores matemáticos disponíveis, por padrão, na linguagem C. Informe um valor inteiro de três dígitos: 753 O valor original é: 753 O valor invertido é: 357 Veja a resolução comentada deste exercício usando C console (modo texto):
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main(int argc, char *argv[])
{
int numero, temp, inverso;
setlocale(LC_ALL,""); // para acentos do português
// vamos solicitar ao usuário que informe um valor inteiro
// na faixa 100 a 999 (incluindo)
printf("Informe um valor inteiro de três dígitos: ");
// vamos ler o valor informado
scanf("%d", &numero);
// vamos verificar se o valor está na faixa permitida
if(numero < 100 || numero > 999){
printf("Valor fora da faixa permitida");
}
else{
// vamos criar uma variável temporária para
// manter intacto o valor lido
temp = numero;
inverso = 0; // guardará o valor invertido
// vamos inverter o valor agora
while(temp != 0){
inverso = (inverso * 10) + (temp % 10);
temp = temp / 10;
}
// vamos mostrar o resultado
printf("O valor original é: %d\n", numero);
printf("O valor invertido é: %d", inverso);
}
printf("\n\n");
system("pause");
return 0;
}
|
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 |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




