![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
C ::: C para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a norma ou módulo de vetores nos espaços R2 e R3 usando C - Geometria Analítica e Álgebra Linear usando CQuantidade de visualizações: 4449 vezes |
Em Geometria Analítica e Álgebra Linear, a magnitude, norma, comprimento, tamanho ou módulo (também chamado de intensidade na Física) de um vetor é o seu comprimento, que pode ser calculado por meio da distância de seu ponto final a partir da origem, no nosso caso (0,0). Considere o seguinte vetor no plano, ou seja, no espaço bidimensional, ou R2: \[\vec{v} = \left(7, 6\right)\] Aqui este vetor se inicia na origem (0, 0) e vai até as coordenadas (x = 7) e (y = 6). Veja sua plotagem no plano 2D: ![]() Note que na imagem já temos todas as informações que precisamos, ou seja, o tamanho desse vetor é 9 (arredondado) e ele faz um ângulo de 41º (graus) com o eixo x positivo. Em linguagem mais adequada da trigonometria, podemos dizer que a medida do cateto oposto é 6, a medida do cateto adjacente é 7 e a medida da hipotenusa (que já calculei para você) é 9. Note que já mostrei também o ângulo theta (__$\theta__$) entre a hipotenusa e o cateto adjacente, o que nos dá a inclinação da reta representada pelos pontos (0, 0) e (7, 6). Relembrando nossas aulas de trigonometria nos tempos do colegial, temos que o quadrado da hipotenusa é a soma dos quadrados dos catetos, ou seja, o Teorema de Pitágoras: \[a^2 = b^2 + c^2\] Como sabemos que a potenciação é o inverso da radiciação, podemos escrever essa fórmula da seguinte maneira: \[a = \sqrt{b^2 + c^2}\] Passando para os valores x e y que já temos: \[a = \sqrt{7^2 + 6^2}\] Podemos comprovar que o resultado é 9,21 (que arredondei para 9). Não se esqueça da notação de módulo ao apresentar o resultado final: \[\left|\vec{v}\right| = \sqrt{7^2 + 6^2}\] E aqui está o código C que nos permite informar os valores x e y do vetor e obter o seu comprimento, tamanho ou módulo: #include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]){ float x, y, norma; // vamos ler os valores x e y printf("Informe o valor de x: "); scanf("%f", &x); printf("Informe o valor de y: "); scanf("%f", &y); // vamos calcular a norma do vetor norma = sqrt(pow(x, 2) + pow(y, 2)); // mostra o resultado printf("A norma do vetor é: %f", norma); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Informe o valor de x: 7 Informe o valor de y: 6 A norma do vetor é: 9.219544457292887 Novamente note que arredondei o comprimento do vetor para melhor visualização no gráfico. Para calcular a norma de um vetor no espaço, ou seja, no R3, basta acrescentar o componente z no cálculo. |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como percorrer os caracteres de uma string C usando um laço forQuantidade de visualizações: 17620 vezes |
Como em C uma string é um vetor de caracteres, tais caracteres podem ser acessados por meio de seu índice no vetor (um valor inteiro começando em 0). Este trecho de código mostra como você pode usar o laço for para acessar cada caractere individualmente e exibí-lo na tela do programa:#include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]){ char palavra[] = "Arquivo"; // vamos percorrer os caracteres usando um laço for int i; for(i = 0; i < strlen(palavra); i++){ printf("Caractere na posicao %d = %c\n", i, palavra[i]); } puts("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Caractere na posicao 0 = A Caractere na posicao 1 = r Caractere na posicao 2 = q Caractere na posicao 3 = u Caractere na posicao 4 = i Caractere na posicao 5 = v Caractere na posicao 6 = o |
HTML5 ::: Dicas & Truques ::: Meta Tags |
HTML5 para iniciantes - Como usar a meta tag viewport para controlar o layout de suas páginas HTMLQuantidade de visualizações: 6233 vezes |
Quando estamos aprendendo HTML5 e queremos desenvolver páginas web responsivas, ou design responsivo, uma das primeiras tags que temos que entender e dominar bem, é a tag viewport, incluinda com a especificação do HTML5. Mas o que é a tag viewport? Esta meta tag foi originalmente apresentada no navegador Safari Mobile, e é usada para definir a largura e escala de apresentação do conteúdo da página HTML. Dessa forma, viewport é a área da página web na qual o conteúdo é exibido para o usuário. Como sabemos, uma página web pode ser acessada por dispositivos variados. A tela do laptop é muito maior se comparada à tela de um smartphone ou tablet. A meta tag viewport é adicionada na seção <head> da página HTML e pode conter os seguintes elementos: width: É a largura do viewport virtual no dispositivo. height: É a altura do viewport virtual do dispositivo. initial-scale: É o nível de zoom quando a página é acessada. maximum-scale: É o limite máximo de zoom que pode ser aplicado à página. user-scalable: Uma flag que indica se o usuário pode ou não aplicar zoom à página. Os valores permitidos são yes ou no. Veja, por exemplo, como definir um viewport de 980px e escala inicial de zoom de 1: <meta name="viewport" content="width=980, initial-scale=1"> No entanto, se nossa intenção é desenvolver um design responsivo, devemos passar o valor device-width para o atributo width do viewport. Isso faz com que a largura do viewport seja igual à largura do dispositivo que está acessando a página. Veja uma página HTML completa usando esta abordagem: <html> <head> <title>Estudando HTML5</title> <meta name="viewport" content="width=device-width, initial-scale=1"> </head> <body> <h1>Java Avançado - Como obter a largura e altura da tela do seu computador em pixels usando o método getScreenSize() da classe Toolkit do Java</h1> <p>A classe Toolkit da linguagem Java nos fornece o método getScreenSize(), que retorna um objeto da classe Dimension contendo a largura e a altura da tela do nosso computador, em pixels. Veja o código Java completo para o exemplo:</p> </body> </html> Note que o elementos dentro do atributo content são separados por vírgulas, juntamente com seus valores individuais. |
Java ::: Dicas & Truques ::: Imagens e Processamento de Imagens |
Como criar um programa de visualização de imagens em Java - Código fonte completoQuantidade de visualizações: 19616 vezes |
O que temos abaixo é o código completo para uma aplicação Java Swing que permite visualizar imagens JPG, GIF ou PNG. A imagem é selecinada usando um JFileChooser e carregada usando o método read() da classe ImageIO. Veja que usamos também uma classe personalizada de JPanel para exibir a imagem:import java.awt.*; import java.io.*; import java.awt.image.*; import java.awt.event.*; import javax.swing.*; import javax.imageio.*; public class Estudos extends JFrame{ private BufferedImage imagem; AreaImagem areaImagem; public Estudos(){ super("Estudos Java"); Container c = getContentPane(); c.setLayout(new BorderLayout()); JButton btn = new JButton("Carregar Imagem"); btn.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e){ JFileChooser fc = new JFileChooser(); int res = fc.showOpenDialog(null); if(res == JFileChooser.APPROVE_OPTION){ File arquivo = fc.getSelectedFile(); imagem = null; try{ imagem = ImageIO.read(arquivo); } catch(IOException exc){ JOptionPane.showMessageDialog(null, "Erro ao carregar a imagem: " + exc.getMessage()); } if(imagem != null){ areaImagem.imagem = imagem; areaImagem.repaint(); } } } } ); c.add(btn, BorderLayout.SOUTH); // Cria a área de exibição da imagem areaImagem = new AreaImagem(); c.add(areaImagem, BorderLayout.CENTER); setSize(400, 300); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } // Sub-classe de JPanel para exibir a imagem class AreaImagem extends JPanel{ public BufferedImage imagem; public void paintComponent(Graphics g){ super.paintComponent(g); // desenha a imagem no JPanel g.drawImage(imagem, 0, 0, this); } } |
wxWidgets ::: Dicas & Truques ::: wxApp |
Como usar a classe wxApp em suas aplicações C++ wxWidgetsQuantidade de visualizações: 2125 vezes |
A classe wxApp (Application Class) é uma das primeiras classes que devemos estudar se quisermos ter um domínio perfeito do framework wxWidgets. Para usá-la, devemos incluir #include <wx/app.h> em nossos códigos. Essa classe herda de wxAppConsole. Todas as aplicações wxWidgets definem uma classe application derivada de wxApp. Há somente uma instância dela, e essa instância representa a aplicação sendo executada no momento. De todos os métodos herdados de wxApp, há pelo menos um que devemos implementar, e ele é a função OnInit(), que é chamada quando o wxWidgets está pronto para executar o nosso código. OnInit() equivale ao main() em C/C++ ou WinMain (aplicações Win32). Veja um trecho de código no qual declaramos e usamos a classe wxApp: Código para aplicacao.h: #include <wx/wx.h> // arquivo de definição // declaramos a classe application class MinhaAplicacao : public wxApp{ public: // é chamado no startup da aplicação virtual bool OnInit(); }; // declara MinhaAplicacao& GetApp() DECLARE_APP(MinhaAplicacao) Código para aplicacao.cpp: #include "aplicacao.h" // arquivo de implementação // aqui o wxWidgets implementa nosso objeto MinhaAplicacao IMPLEMENT_APP(MinhaAplicacao) bool MinhaAplicacao::OnInit(){ // vamos mostrar uma mensagem ao iniciar a aplicação wxMessageDialog *alerta = new wxMessageDialog(NULL, wxT("A aplicação foi iniciada com sucesso"), wxT("Informação"), wxOK); alerta->ShowModal(); // em geral retornamos true para iniciar o loop de eventos // mas essa aplicação exibe apenas uma janela de mensagem. Podemos sair return false; } Veja que no arquivo de declaração (header file) nós temos a macro DECLARE_APP. Ela nos permite declarar a função wxGetApp() que retorna uma referência para o objeto aplicação. Se não fizermos isso, a única forma de obter tal referência é usando o ponteiro global wxTheApp, que é do tipo wxApp*. A macro IMPLEMENT_APP, no arquivo de implementação, permite ao wxWidgets criar dinamicamente uma instância do objeto application no ponto apropriado da inicialização da biblioteca. Esse trecho de código é totalmente funcional, mas teremos apenas a exibição de uma mensagem wxMessageDialog. Por essa razão eu retornei false no laço de eventos. Se tivéssemos criado uma janela wxFrame, o retorno deveria ser true, já que teríamos de lidar com eventos. Para finalizarmos, lembre-se de que o método OnInit() da classe wxApp é o local ideal para se fazer as verificações iniciais da aplicação, tais como conexão com banco de dados, permissão do usuário, disponibilidade da rede, etc. |
C ::: C para Engenharia ::: Física - Mecânica |
Como calcular a Energia Potencial Gravitacional de um corpo dado a sua massa e altura em CQuantidade de visualizações: 2486 vezes |
A Energia Potencial Gravitacional ou Energia Gravitacional é a energia potencial que um objeto massivo tem em relação a outro objeto massivo devido à gravidade. É a energia potencial associada ao campo gravitacional, que é parcialmente convertida em energia cinética quando os objetos caem uns contra os outros. A energia potencial gravitacional aumenta quando dois objetos são separados. A fórmula para obtenção da Energia Potencial Gravitacional de um corpo em relação à sua massa e distância do chão, ou seja, da superfície terrestre, é: \[ E_\text{pg} = \text{m} \cdot \text{g} \cdot \text{h} \] Onde: Epg: energia potencial gravitacional (em joule, J). m: massa do corpo (em kg). g: aceleração da gravidade (m/s2). h: altura do objeto em relação ao chão (em metros). Como podemos ver, a Energia Potencial Gravitacional está diretamente relacionada à distância do corpo em relação à superfície terrestre. Dessa forma, quanto mais distante da terra o objeto estiver, maior a sua energia gravitacional. Isso nós diz também que, um objeto de altura zero possui Energia Potencial Gravitacional nula. Vamos ver um exemplo agora? Observe o seguinte enunciado: 1) Uma pessoa levanta um tijolo com peso de 2 quilogramas à distância de 1,5 metros do chão. Qual é a Energia Potencial Gravitacional deste corpo? Como o exercício nos dá a massa do objeto em kg e a distância dele em relação ao chão já está em metros, tudo que temos a fazer é jogar na fórmula. Veja o código C completo para o cálculo: #include <stdio.h> #include <stdlib.h> // função principal do programa int main(int argc, char *argv[]){ // gravidade terrestre em m/s2 float gravidade = 9.80665; // massa do corpo float massa = 2; // em kg // altura do corpo em relação ao chão float altura = 1.5; // em metros // vamos calcular a energia potencial gravitacional float epg = massa * gravidade * altura; // mostramos o resultado printf("A Energia Potencial Gravitacional é: %fJ", epg); printf("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: A Energia Potencial Gravitacional é: 29.419950J |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como renomear um diretório em PHP usando a função rename()Quantidade de visualizações: 11811 vezes |
Diretórios podem ser renomeados usando a função rename() da linguagem PHP. Esta função recebe o nome atual do diretório e o novo nome e retorna um valor boolean (true ou false) informando o sucesso ou não da operação. Antes de usar esta função verifique se você possui as permissões adequadas para renomear o diretório. Veja um trecho de código no qual renomeamos um diretório no diretório public_html: <?php // renomeia o diretório "recentes" para "atuais" $diretorio_antigo = "/site/public_html/recentes"; $diretorio_novo = "/site/public_html/atuais"; if(rename($diretorio_antigo, $diretorio_novo)){ echo "Diretório renomeado com sucesso."; } else{ echo "Não foi possível renomear o diretório."; } ?> Ao executar este código nós teremos o seguinte resultado: Diretório renomeado com sucesso. Seja cuidadoso. Se você não tiver as permissões adequadas para renomear um diretório, a seguinte mensagem de erro será exibida: Warning: rename(imagens,imagens_novas) [function.rename]: Permission denied in /site/public_html/testes.php on line 9 Não foi possível renomear o diretório. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Ler dois números inteiros e informar se os dois possuem o mesmo dígito no final em JavaQuantidade de visualizações: 783 vezes |
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar dois números inteiros e informe se os dois números informados possuem o último dígito igual, ou seja, terminam com o mesmo dígito. Sua saída deve ser parecida com: Informe o primeiro número: 28 Informe o segundo número: 4318 Os dois números possuem o último dígito igual. Informe o primeiro número: 39 Informe o segundo número: 93 Os dois números não possuem o último dígito igual. Veja a resolução comentada deste exercício usando Java: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar dois inteiros System.out.print("Informe o primeiro número: "); int n1 = Integer.parseInt(entrada.nextLine()); System.out.print("Informe o segundo número: "); int n2 = Integer.parseInt(entrada.nextLine()); // agora vamos testar se os dois números terminam com // o mesmo último dígito if(Math.abs(n1 % 10) == Math.abs(n2 % 10)){ System.out.println("Os dois números possuem o último dígito igual."); } else{ System.out.println("Os dois números não possuem o último dígito igual."); } } } |
Delphi ::: Data Access Controls (Controles de Acesso a Dados) ::: TClientDataSet |
Como obter a quantidade de registros em um TClientDataSet do Delphi usando a propriedade RecordCountQuantidade de visualizações: 11515 vezes |
Em algumas situações precisamos saber a quantidade de registros atualmente armazenados em um componente TClientDataSet. Para isso podemos usar a propriedade RecordCount, implementada originalmente na classe TDataSet e reimplementada na classe TClientDataSet. Veja um trecho de código no qual usamos o evento OnClick de um botão para exibir a quantidade de registros atualmento no TClientDataSet: procedure TForm3.Button3Click(Sender: TObject); var qRegistros: Integer; begin // obtém a quantidade de registros no TClientDataSet qRegistros := ClientDataSet1.RecordCount; // mostra o resultado ShowMessage('O ClientDataSet possui ' + IntToStr(qRegistros) + ' registros.'); end; Ao executar o código e clicar no botão você verá uma mensagem parecida com: "O ClientDataSet possui 20 registros.". Esta dica foi escrita e testada no Delphi 2009. |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como testar se um número é par ou ímpar em Python usando o operador de módulo - Python para MatemáticaQuantidade de visualizações: 18153 vezes |
O operador de módulo do Python nos permite obter o resto de uma divisão inteira, e podemos tirar proveito desse operador para verificarmos se um determinado número inteiro é par ou ímpar. Veja o exemplo:# função principal do programa def main(): # vamos pedir para o usuário informar um número numero = int(input("Informe um número: ")) # o número é par? if numero % 2 == 0: print("O numero informado é par") else: print("O numero informado é impar") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe um número: 8 O numero informado é par |
Nossas 20 dicas & truques de programação mais populares |
Portugol - Exercício Resolvido de Portugol - Um programa que lê três números inteiros e mostra o maior |
Você também poderá gostar das dicas e truques de programação abaixo |
AutoCAD Civil 3D .NET C# - Como retornar a quantidade de perfis de um alinhamento do Civil 3D usando a função GetProfileIds() da API C# do AutoCAD Civil 3D JavaScript - Como adicionar zeros (ou outro caractere) no início de uma string usando o método padStart() da linguagem JavaScript Delphi - Delphi para matemática - Como arredondar valores de ponto-flutuante para cima usando a função Ceil() |
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 |