![]() |
|||||
|
AngularJS ::: Angular / AngularJS + JavaScript ::: AngularJS Services (Serviços AngularJS) |
Aprenda a ler dados de um servidor remoto usando o serviço $http do AngularJSQuantidade de visualizações: 1579 vezes |
O serviço $http do AngularJS pode ser usado quando precisamos ler informações vindas de um servidor remoto. Esta comunicação é feita por meio do objeto XMLHttpRequest ou via JSONP. A funcionalidade deste serviço é semelhante às requisições AJAX do jQuery. Vamos ver um exemplo no qual enviamos dois números para uma página PHP e ela nos retorna a soma destes números como uma resposta JSON. Primeiro veja o código PHP que gera o JSON: <?php header("Cache-Control: no-cache, must-revalidate"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header('Content-type: application/json'); $numero1 = $_GET["numero1"]; $numero2 = $_GET["numero2"]; $soma = $numero1 + $numero2; // vamos gerar o JSON com a soma $res = json_encode(array("soma" => $soma)); // vamos retornar o JSON para a página que chamou esta echo $res; ?> Salve este código como somar.php e experimente chamá-la no seu navegador fornecendo os dois valores a serem somados. Veja: http://localhost/somar.php?numero1=37&numero2=3 Se tudo correr bem, o seguinte resultado será exibido: {"soma":40} Aqui eu usei PHP no servidor remoto, mas você pode usar Java, Perl, Node.js, ASP.NET, etc, desde que o retorno seja JSON. Agora vamos à aplicação AngularJS. Veja o código completo: <!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Cadastro de Alunos AngularJS</title> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.7.9/angular.min.js"> </script> </head> <body> <script type="text/javascript"> // vamos criar uma nova aplicação var app = angular.module('MinhaApp', []); // vamos criar o controller HttpTesteController app.controller('HttpTesteController', function($scope, $http){ // vamos fazer a conexão remota $http.get("http://localhost/somar.php?numero1=37&numero2=3") .then(function(response){ $scope.resultado = response.data.soma; } ); }); </script> <div ng-app="MinhaApp" ng-controller="HttpTesteController"> <h1>A soma dos valores é: {{resultado}}</h1> </div> </body> </html> Abra esta página no seu navegador web. Você deverá ver um resultado parecido com: A soma dos valores é: 40 Note que usamos o método get() do serviço $http para fazer uma requisição GET para a página PHP. Em dicas dessa seção mostro como fazer requisições POST e também tratar os possíveis erros que podem ocorrer nesta operação. |
Delphi ::: Win32 API (Windows API) ::: Processos |
Como usar o Delphi para verificar se um determinado processo do Windows está sendo executadoQuantidade de visualizações: 19823 vezes |
Em algumas situações precisamos verificar se um determinado processo está sendo executado, ou seja, gostaríamos de saber se o executável "programa.exe" está carregado na memória e efetuar alguma tarefa se o teste resultar satisfatório. Nesta dica eu mostro como isso pode ser feito. O primeiro passo é acrescentar a unit TlHelp32 na cláusula uses do seu formulário. Esta unit contém algumas funções, tipos e definições úteis para se trabalhar com processos acessando a API do Windows. Uma vez importada a unit TlHelp32, coloque a função abaixo na seção implementation de seu formulário: // função personalizada que permite verificar se um determinado // processo está sendo executado function isProcessRunning(exeFileName: string): Boolean; var ContinueLoop: BOOL; FSnapshotHandle: THandle; FProcessEntry32: TProcessEntry32; begin FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); FProcessEntry32.dwSize := SizeOf(FProcessEntry32); ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32); Result := False; while Integer(ContinueLoop) <> 0 do begin if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) = UpperCase(ExeFileName))) then begin Result := True; end; ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32); end; CloseHandle(FSnapshotHandle); end; Agora, para testar a função, coloque o código abaixo no evento Click de um botão: procedure TForm3.Button1Click(Sender: TObject); begin if isProcessRunning('notepad.exe') then ShowMessage('O processo está sendo executado') else ShowMessage('O processo NÃO está sendo executado'); end; Aqui nós estamos testando se o processo "notepad.exe" está sendo executado. Uma melhoria neste código seria listar todos os processos em execução ou listar as cópias em execução de um mesmo processo. |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como contar as ocorrências de um caractere em uma string C# usando o método IndexOf() da classe StringQuantidade de visualizações: 16925 vezes |
Nesta dica mostrarei como podemos tirar proveito da função IndexOf() da classe String do C# para contar todas as ocorrências de uma letra em uma palavra, texto ou frase. Note que, além de retornar a quantidade de ocorrências do caractere, nós vamos mostrar também o índice de cada ocorrência. Veja o código C# completo: using System; namespace Estudos { class Program { static void Main(string[] args) { string frase = "Gosto muito de C#. E você?"; char letra = 'o'; // vamos pesquisar a letra "o" int quant = 0; int pos = -1, pos_ant = -1, cont = 0; while (cont < frase.Length) { pos = frase.IndexOf(letra, cont); if ((pos != pos_ant) && (pos != -1)) { Console.WriteLine("\"" + letra + "\" encontrada no índice " + pos); quant++; } cont++; // aumenta o contador pos_ant = pos; } Console.WriteLine("Encontrei " + quant + " ocorrências da " + "letra " + letra); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: "o" encontrada no índice 1 "o" encontrada no índice 4 "o" encontrada no índice 10 "o" encontrada no índice 22 Encontrei 4 ocorrências da letra o |
C ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular raiz quadrada em C usando a função sqrt()Quantidade de visualizações: 6765 vezes |
A raiz quadrada de um número pode ser obtida em C por meio da função sqrt(). Esta função recebe um valor double, ou seja, qualquer tipo que possa ser convertido em double e retorna um valor double. Veja o exemplo:#include <stdio.h> #include <stdlib.h> #include <math.h> int main(int argc, char *argv[]) { int numero = 9; printf("A raiz quadrada de %d é %f", numero, sqrt(numero)); printf("\n\n"); system("pause"); return 0; } Ao executar este código nós teremos o seguinte resultado: A raiz quadrada de 9 é 3. É importante observar que não é possível obter a raiz quadrada de um número negativo. Caso seu código tente fazer isso, o resultado poderá ser imprevisível. |
JavaScript ::: Dicas & Truques ::: Cookies |
Cookies em JavaScript - Como escrever uma função para a criação de cookies em JavaScriptQuantidade de visualizações: 91 vezes |
Nesta dica mostrarei como podemos criar uma função JavaScript chamada gravarCookie() que recebe o nome, o valor e a duração de dias do cookie. Em outras dicas desse seção você encontra a função que faz a leitura dos cookies criados. Veja o código JavaScript completo, incluindo o código HTML: <html> <head> <title>Estudando JavaScript</title> <script type="text/javascript"> // função que permite gravar um cookie function gravarCookie(nome, valor, diasDuracao){ var dataExpiracao = new Date(); dataExpiracao.setTime(dataExpiracao.getTime() + (diasDuracao * 24 * 3600 * 1000)); document.cookie = nome + "=" + escape(valor) + ((diasDuracao == null) ? "" : "; expires=" + dataExpiracao); } </script> </head> <body> <script type="text/javascript"> // cria um cookie que durará um dia gravarCookie("nome_visitante", "Osmar", 1); document.writeln("Cookie criado com sucesso."); </script> </body> </html> Ao executar este código nós teremos o seguinte resultado: Cookie criado com sucesso. |
PHP ::: Fundamentos da Linguagem ::: Tipos de Dados |
Entendendo o tipo de dados NULL do PHP - Aprenda a usar o tipo de dados NULL da linguagem PHP - AtualizadaQuantidade de visualizações: 11024 vezes |
O tipo de dados NULL (nulo) do PHP é semelhante aos tipos undef (Perl) e None (Python). Este tipo de dados possui apenas um valor que é usado para indicar que uma variável não possui nenhum valor (não recebeu nenhuma atribuição ainda). Este tipo de dados pode ser escrito NULL, Null, null, etc. Não há distinção de maiúsculas e minúsculas. Veja um exemplo de seu uso:$nome = "Osmar J. Silva"; $nome = null; // variável é NULL agora $nome = Null; // mesmo resultado $nome = NULL; // mesmo resultado Se quisermos testar se uma variável ainda é NULL, podemos usar a função is_null(). Veja: <? $nome; if(is_null($nome)){ echo 'A variável $nome ainda é NULL.'; } ?> Este código mostrará o seguinte resultado: A variável $nome ainda é NULL. Note que, se as advertências estiverem habilitadas na página PHP, a seguinte mensagem será exibida: Warning: Undefined variable $nome in ...\index.php on line 4 Esta é a forma da linguagem PHP nos advertir de que a variável foi declarada mas não foi inicializada com algum valor. Esta dica foi revisada, atualizada e testada no PHP 8. |
VB.NET ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como copiar todos os elementos de um vetor para outro em VB.NET usando o método CopyTo() da classe ArrayQuantidade de visualizações: 7376 vezes |
Nesta dica eu mostro como podemos usar o método CopyTo() da classe Array do VB.NET para copiar todos os elementos de um array para um outro array. Veja o código completo para o exemplo: Imports System Module Program Sub Main(args As String()) ' cria um array de inteiros Dim valores() As Integer = {1, 2, 3, 4, 5} ' exibe os valores do primeiro array For Each valor As Integer In valores Console.WriteLine(valor) Next ' cria um segundo array e copia os elementos ' do primeiro para o segundo Dim valores2() As Integer = {6, 7, 8, 9, 10, 15, 20} valores.CopyTo(valores2, 0) Console.WriteLine() ' exibe os valores do segundo array For Each valor As Integer In valores2 Console.WriteLine(valor) Next Console.WriteLine("\nPressione qualquer tecla para sair...") ' pausa o programa Console.ReadKey() End Sub End Module Ao executar este código VB.NET nós teremos o seguinte resultado: 1 2 3 4 5 1 2 3 4 5 15 20 |
Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais |
Cálculo de estribos em vigas de concreto armado usando Python - Armadura mínima transversal normativaQuantidade de visualizações: 196 vezes |
A ABNT NBR 6118 (Projeto de estruturas de concreto armado) define uma taxa de armadura mínima para os estribos das vigas de concreto armado, e, a partir dessa taxa mínima nós podemos facilmente calcular a área de aço mínima a ser usada. A fórmula para o cálculo da taxa mínima de armadura tranversal pode ser definida como: \[\rho_\text{sw} = 0,2 \cdot \frac{f_\text{ck,m}}{f_\text{ywk}} \] Onde: ρsw é um número adimensional representando a taxa de armadura mínima transversal de acordo com recomendações da norma NBR 6118; fctk,m é a resistência à tração média do concreto em Mpa; fymk é a resistência à tração do aço em Mpa. Em geral, esse valor é fixado em 500 (CA 50), mesmo que o aço usado seja CA 60 ou superior; Após calculada a taxa de armadura transversal mínima, podemos calcular a área de aço mínima transversal por meio da seguinte fórmula: \[A_\text{sw,min} = \rho_\text{sw} \cdot b_w \cdot S \cdot sen(\alpha) \] Onde: Asw,min é a área de aço mínima a ser usada, em cm2/m; ρsw é um número adimensional representando a taxa de armadura mínima transversal de acordo com recomendações da norma NBR 6118; bw é a largura da viga em centímetros; S é o espaçamento a ser considerado. Informamos o valor de 100 para considerar um espaçamento de 1 metro; α é a inclinação dos estribos, em geral 90º. Veja agora o código Python : # vamos importar o módulo Math import math # função principal do programa def main(): # vamos pedir para o usuário informar o FCK do concreto fck = float(input("Informe o FCK do concreto em Mpa: ")) # agora vamos calcular a resistência à tração média # do concreto fctk_m = 0.3 * math.pow(fck, 2.0 / 3.0) # vamos pedir para o usuário informar a largura da viga em cm largura = float(input("Informe a largura da viga em cm: ")) # vamos calcular a taxa de armadura transversal mínima fywk = 500 # vamos considerar aço CA 50 psw = 0.2 * (fctk_m / fywk) # agora vamos calcular a área mínima de aço para a armadura # tranversal, ou seja, os estribos S = 100 # considerando 1 metro de viga inclinacao = 90 # inclinação em graus dos estribos aws_min = psw * largura * S * math.sin(math.radians(inclinacao)) # e mostramos os resultados print("\n-------RESULTADOS--------------------------------------") print("A resistência à tração média do concreto é: {0} Mpa". format(round(fctk_m, 5))) print("A taxa de armadura transversal mínima é: {0}".format( round(psw, 5))) print("A área mínima de aço é: {0} cm2/m".format(round(aws_min, 5))) if __name__ == "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe o FCK do concreto em Mpa: 25 Informe a largura da viga em cm: 19 -------RESULTADOS-------------------------------------- A resistência à tração média do concreto é: 2.56496 Mpa A taxa de armadura transversal mínima é: 0.00103 A área mínima de aço é: 1.94937 cm2/m |
C++ ::: C++ para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como somar os elementos da diagonal principal de uma matriz em C++Quantidade de visualizações: 1581 vezes |
A Matriz quadrada é um tipo especial de matriz que possui o mesmo número de linhas e o mesmo número de colunas, ou seja, dada uma matriz Anxm, ela será uma matriz quadrada se, e somente se, n = m, onde n é o número de linhas e m é o número de colunas. Em geral as matrizes quadradas são chamadas de Matrizes de Ordem n, onde n é o número de linhas e colunas. Dessa forma, uma matriz de ordem 4 é uma matriz que possui 4 linhas e quatro colunas. Toda matriz quadrada possui duas diagonais, e elas são muito exploradas tanto na matemática quanto na construção de algorítmos. Essas duas diagonais são chamadas de Diagonal Principal e Diagonal Secundária. A diagonal principal de uma matriz quadrada une o seu canto superior esquerdo ao canto inferior direito. Veja: ![]() Nesta dica veremos como calcular a soma dos valores dos elementos da diagonal principal de uma matriz usando C++. Para isso, só precisamos manter em mente que a diagonal principal de uma matriz A é a coleção das entradas Aij em que i é igual a j. Assim, tudo que temos a fazer é converter essa regra para código C++. Veja um trecho de código C++ completo no qual pedimos para o usuário informar os elementos da matriz e em seguida mostramos a soma dos elementos da diagonal superior: #include <iostream> #include <cstdlib> using namespace std; int main(int argc, char *argv[]){ // vamos declarar e construir uma matriz de três linhas // e três colunas int linhas = 3, colunas = 3; int matriz[linhas][colunas]; // guarda a soma dos elementos na diagonal principal int soma_diagonal = 0; // vamos ler os valores para os elementos da matriz for(int i = 0; i < linhas; i++){ // linhas for(int j = 0; j < colunas; j++){ // colunas cout << "Informe o valor para a linha " << i << " e coluna " << j << ": "; cin >> matriz[i][j]; } } // vamos mostrar a matriz da forma que ela // foi informada cout << "\n"; // percorre as linhas for(int i = 0; i < linhas; i++){ // percorre as colunas for(int j = 0; j < colunas; j++){ cout << matriz[i][j] << " "; } // passa para a próxima linha da matriz cout << "\n"; } // vamos calcular a soma dos elementos da diagonal // principal for(int i = 0; i < linhas; i++){ for(int j = 0; j < colunas; j++){ if(i == j){ soma_diagonal = soma_diagonal + matriz[i][j]; } } } // finalmente mostramos a soma da diagonal principal cout << "\nA soma dos elementos da diagonal principal é: " << soma_diagonal << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este código C++ nós teremos o seguinte resultado: Informe o valor para a linha 0 e coluna 0: 3 Informe o valor para a linha 0 e coluna 1: 7 Informe o valor para a linha 0 e coluna 2: 9 Informe o valor para a linha 1 e coluna 0: 2 Informe o valor para a linha 1 e coluna 1: 4 Informe o valor para a linha 1 e coluna 2: 1 Informe o valor para a linha 2 e coluna 0: 5 Informe o valor para a linha 2 e coluna 1: 6 Informe o valor para a linha 2 e coluna 2: 8 3 7 9 2 4 1 5 6 8 A soma dos elementos da diagonal principal é: 15 |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: NumPy Python Library |
Exercício Resolvido de Python NumPy - Como somar duas matrizes usando a biblioteca NumPy do PythonQuantidade de visualizações: 1234 vezes |
Pergunta/Tarefa: Escreva um programa Python que usa a biblioteca NumPy para efetuar a soma de duas matrizes de mesma ordem, ou seja, mesmo número de linhas e colunas. Seu código deverá somar o primeiro elemento da matriz A com o primeiro elemento da matriz B, e assim por diante. Sua saída deverá ser parecida com: A primeira matriz é: [[4 1 3] [9 2 5]] A segunda matriz é: [[ 3 10 2] [ 1 13 4]] A matriz soma é: [[ 7 11 5] [10 15 9]] Veja a resolução comentada deste exercício em Python: # vamos importar a biblioteca NumPy import numpy as np # função principal do programa def main(): # vamos criar a primeira matriz a = np.array([[4, 1, 3], [9, 2, 5]]) # vamos criar a segunda matriz b = np.array([[3, 10, 2], [1, 13, 4]]) # vamos somar as duas matrizes c = a + b # e agora mostramos o resultado print("A primeira matriz é:\n{0}".format(a)) print("A segunda matriz é:\n{0}".format(b)) print("A matriz soma é:\n{0}".format(c)) if __name__== "__main__": main() |
Nossas 20 dicas & truques de programação mais populares |
JavaScript - Como elevar uma base a um determinado expoente usando o método pow() do objeto Math do JavaScript wxWidgets - Como baixar, compilar a biblioteca e criar um projeto C++ wxWidgets usando o Visual Studio 2017 JavaScript - Como testar se uma string termina com uma determinada substring em JavaScript usando a função endsWith() |
Você também poderá gostar das dicas e truques de programação abaixo |
TypeScript - Como calcular o coeficiente angular de uma reta em TypeScript dados dois pontos no plano cartesiano Delphi - Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em Delphi Java - Exercício Resolvido de Java - Usando um laço for para contar de 0 até 10 e somar todos os valores |
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 |