Dúvidas, comentários e doaçoes: +55 62 9 8513 2505

Planilha de Dimensionamento de Tubulações Hidráulicas Água Fria e Água Quente Completa
Nossa 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.

C ::: Dicas & Truques ::: Strings e Caracteres

Como copiar os caracteres de uma string para outra usando a função strcpy() da linguagem C

Quantidade de visualizações: 13698 vezes
Pessoas acostumadas com Delphi, Java ou PHP podem pensar que a tarefa de copiar o conteúdo de uma string para outra em C pode ser tão simples quanto o código a seguir:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[]){
  char frase1[] = "Gosto de PHP";
  char frase2[50]; // pode receber até 49 caracteres

  // copia a primeira frase para a segunda
  frase2 = frase1;

  // exibe o resultado
  printf(frase2);

  puts("\n\n");
  system("PAUSE");
  return 0;
}

Este código não funciona. No Dev-C++ (MingW) a seguinte mensagem de erro de compilação é exibida:

incompatible types in assignment 
of `char[13]` to `char[50]` 

Em C, a forma correta de copiar os caracteres de uma string para outra é obtendo ponteiros para a posição inicial das duas strings, percorrer todos os caracteres da primeira e atribuí-los um de cada vez nas posições de memória reservadas para a segunda string. Veja o protótipo da função strcpy(), usada para tal finalidade:

char *strcpy(char *destino, const char *origem);

Como podemos ver, a função copiará todos os caracteres contidos na string origem para a string destino. É importante observar que a string destino deverá ser declarada de forma que todos os caracteres a serem copiados possam ser acomodados sem que o programa corra o risco de escrever em áreas de memória reservadas a outras finalidades. Veja um exemplo completo:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, char *argv[]){
  char frase1[] = "Gosto de PHP";
  char frase2[50]; // pode receber até 50 caracteres

  // copia a primeira frase para a segunda
  strcpy(frase2, frase1);

  // exibe o resultado
  printf(frase2);

  puts("\n\n");
  system("PAUSE");
  return 0;
}



Python ::: Fundamentos da Linguagem ::: Variáveis e Constantes

Como acessar variáveis globais a partir de seus métodos Python

Quantidade de visualizações: 13262 vezes
Por padrão, nossos próprios métodos e funções em Python não enxergam as variáveis definidas fora do seu escopo, e quando o fazem, é somente para leitura, já que alterações nas variáveis fora do escopo fazem com que o interpretar crie versões locais dessas variáveis.

Uma solução é usar a palavra-chave "global" antes do nome da varíável que queremos acessar. Veja como isso pode ser feito no trecho de código abaixo:

# uma variável global
nome = "Carlos"

# um método que acessa a variável global
def metodo():
  global nome
  nome = "Osmar J. Silva"

# função principal do programa
def main():
  # chama o método
  metodo()
 
  # mostra o resultado
  print("Valor alterado para:", nome)
  
if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

Valor alterado para: Osmar J. Silva


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição

Exercícios Resolvidos de Java - Usando laços for aninhados para desenhar uma pirâmide de números em Java (com o usuário informando a quantidade de linhas)

Quantidade de visualizações: 9396 vezes
Pergunta/Tarefa:

Escreva um programa Java que solicita ao usuário um número inteiro. Este número inteiro deverá estar entre 1 e 12 e será usado como a quantidade de linhas em uma pirâmide de números. Você deverá usar laços for aninhados para controlar as linhas e montar a estrutura desejada.

Sua saída deverá ser parecida com:

Informe a quantidade de linhas: 5

              1
           2  1  2
        3  2  1  2  3
     4  3  2  1  2  3  4
  5  4  3  2  1  2  3  4  5
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) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
      
    // vamos solicitar a quantidade de linhas
    System.out.print("Informe a quantidade de linhas: ");
    int numLinhas = Integer.parseInt(entrada.nextLine());
    
    // não queremos aceitar quantidades de linhas menores que 1 
    // ou maiores que 12
    if((numLinhas < 1) || (numLinhas > 12)){
      System.out.println("O número de linhas deve estar entre 1 e 12");
      System.exit(0);
    }
    
    // este laço externo controla as linhas
    System.out.println();
    for(int linha = 1; linha <= numLinhas; linha++){
      // este laço gera os espaços antes de cada número nas 
      // linhas da pirâmide
      for (int coluna = 1; coluna <= (numLinhas - linha); coluna++){
        System.out.print("   "); // três espaços aqui
      }
      
      // aqui nós exibimos os números de cada linha do lado
      // esquerdo da pirâmide, até o centro
      for(int i = linha; i >= 1; i--){
        // o número da linha é maior ou igual a 10? se for 
        // colocamos um espaço antes do número
        if(i >= 10){
          System.out.print(" " + i);  
        }
        else{ // o número da linha é menor que 10? vamos 
          //colocar dois espaços antes do número
          System.out.print("  " + i);  
        }
      }
      
      // e finalmente exibimos os números de cada linha no 
      // lado direito da pirâmide
      for (int i = 2; i <= linha; i++){
        // o número da linha é maior ou igual a 10? se for 
        // colocamos um espaço antes do número
        if(i >= 10){
          System.out.print(" " + i);  
        }
        else{ // o número da linha é menor que 10? vamos 
          // colocar dois espaços antes do número
          System.out.print("  " + i);  
        }
      }
      
      // gera uma nova linha
      System.out.println();
    }
    
    System.out.println();
  }
}



PHP ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas

Como calcular o coeficiente angular de uma reta em PHP dados dois pontos no plano cartesiano

Quantidade de visualizações: 1569 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 PHP 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:

<?php
  // x e y do primeiro ponto
  $x1 = 3;
  $y1 = 6;
    
  // x e y do segundo ponto
  $x2 = 9;
  $y2 = 10;   
     
  $m = ($y2 - $y1) / ($x2 - $x1);
     
  // mostramos o resultado
  echo "O coeficiente angular é: " . $m;
?>

Ao executar este código PHP nós teremos o seguinte resultado:

O coeficiente angular é: 0.66666666666667

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__$):

<?php
  // x e y do primeiro ponto
  $x1 = 3;
  $y1 = 6;
    
  // x e y do segundo ponto
  $x2 = 9;
  $y2 = 10;   
     
  // vamos obter o comprimento do cateto oposto
  $cateto_oposto = $y2 - $y1;
  // e agora o cateto adjascente
  $cateto_adjascente = $x2 - $x1;
  // vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
  // (em radianos, não se esqueça)
  $tetha = atan2($cateto_oposto, $cateto_adjascente);
  // e finalmente usamos a tangente desse ângulo para calcular
  // o coeficiente angular
  $tangente = tan($tetha);
     
  // mostramos o resultado
  echo "O coeficiente angular é: " . $tangente;
?>

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.


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


© 2026 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 11 usuários muito felizes estudando em nosso site.