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
C# ::: Dicas & Truques ::: Strings e Caracteres

Como retornar o índice da primeira ocorrência de um caractere em uma string C# usando o método IndexOf() da classe String

Quantidade de visualizações: 8810 vezes
Em alguma ocasião nós precisaremos verificar se um determinado caractere está contido em uma palavra, frase ou texto, e poderemos querer também retornar o índice da primeira ocorrência de tal caractere.

Para isso nós podemos usar a função IndexOf() da classe String. Este método recebe o caractere ou substring desejada e retorna um valor inteiro indicando o índice da primeira ocorrência. Se o caractere não for encontrado, o valor -1 é retornado.

Veja o código completo para o exemplo:

using System;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      string frase = "Gosto de Java e C#";

      // vamos obter o índice da primeira ocorrência da letra "J"
      int pos = frase.IndexOf("J");

      // o caractere for encontrado?
      if (pos != -1) {
        Console.WriteLine("O caractere foi encontrado" +
          " na posição " + pos);
      }
      else {
        Console.WriteLine("O caractere não foi encontrado");
      }

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

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

O caractere foi encontrado na posição 9

Tenha em mente que o método IndexOf() da classe String do C# diferencia letras maiúsculas de letras minúsculas.


Python ::: Dicas & Truques ::: Matemática e Estatística

Como calcular porcentagem em Python - Como efetuar cálculos de porcentagem em Python

Quantidade de visualizações: 26141 vezes
Cálculos de porcentagens estão presentes em boa parte das aplicações que desenvolvemos. Porém, há momentos em que a mente trava e não conseguimos lembrar com clareza como estes cálculos são feitos, principalmente em Python.

Esta anotação tem o objetivo de ser uma fonte de pesquisa para os momentos em que suas habilidades matemáticas insistirem em continuar ocultas.

Ex: 1 - Suponhamos que um produto que custe R$ 178,00 sofra um acréscimo de 15%. Qual o valor final do produto? Veja o código em Python:

# Algoritmo que calcula porcentagem em Python
def main():
  valor = 178.00 # valor original
  percentual = 15.0 / 100.0 # 15%
  valor_final = valor + (percentual * valor)

  # mostra o resultado
  print("O valor final do produto é: {0}".format(valor_final))

  # O resultado será 204,70
  
if __name__== "__main__":
  main()

Ex: 2 - Um produto, cujo valor original era de R$ 250,00, teve um desconto de 8%. Qual foi seu valor final? Veja o código em Python:

# Algoritmo que calcula porcentagem em Python
def main():
  valor = 250.00 # valor original
  percentual = 8.0 / 100.0 # 8%
  valor_final = valor - (percentual * valor)

  # mostra o resultado
  print("O valor final do produto é: {0}".format(valor_final))  
  # O resultado será 230,00
  
if __name__== "__main__":
  main()

Ex: 3 - Em um concurso de perguntas e respostas, um jovem acertou 72 das 90 perguntas apresentadas. Qual foi a porcentagem de acertos? E a porcentagem de erros? Veja o código em Python:

# Algoritmo que calcula porcentagem em Python
def main():
  perguntas = 90.0
  acertos = 72.0

  # mostra a porcentagem de acertos
  print("Porcentagem de acertos: {0}%".format((acertos / perguntas) * 100))

  # mostra a porcentagem de erros
  print("Porcentagem de erros: {0}%".format(((perguntas - acertos) / perguntas) * 100))

  # Os resultados serão 80% e 20%
  
if __name__== "__main__":
  main()

Ex: 4 - Um aparelho de CD foi adquirido por R$ 300,00 e revendido por R$ 340,00. Qual foi a porcentagem de lucro na transação? Veja o código em Python:

# Algoritmo que calcula porcentagem em Python
def main():
  valor_anterior = 300.0 # valor anterior
  novo_valor = 340.0 # valor novo

  # calcula a porcentagem de lucro
  # efetua o cálculo
  porcentagem_lucro = ((novo_valor * 100) / valor_anterior) - 100

  print("A porcentagem de lucro foi de: {0}%".format(porcentagem_lucro))

  # O resultado será 13,33
  
if __name__== "__main__":
  main()

Ex: 5 - Uma loja repassa 5% do lucro a seus vendedores. Se um produto custa R$ 70,00, qual o valor em reais repassado a um determinado vendedor? Veja o código em Python:

# Algoritmo que calcula porcentagem em Python
def main():
  valor = 70.0 # valor do produto
  percentual = 5.0 / 100.0 # 5%

  # calcula a comissão
  comissao = percentual * valor

  # mostra o resultado
  print("O valor repassado ao vendedor é: {0}".format(comissao))

  # O resultado será 3,5
  
if __name__== "__main__":
  main()



VB.NET ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição

Exercícios Resolvidos de VB.NET - Um laço for que solicita ao usuário 10 números inteiros e mostra o menor e o maior valor informado

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

Escreva um programa VB.NET que usa o laço for para solicitar ao usuário que informe 10 números inteiros. Em seguida mostre o maior e o menor valor lido. Não é permitido usar vetores ou matrizes (arrays).

Sua saída deve ser parecida com:

Informe o 1º valor: 5
Informe o 2º valor: 1
Informe o 3º valor: 20
Informe o 4º valor: 6
Informe o 5º valor: 3
Informe o 6º valor: 4
Informe o 7º valor: 7
Informe o 8º valor: 12
Informe o 9º valor: 9
Informe o 10º valor: 8

O maior valor lido foi: 20
O menor valor lido foi: 1
Resposta/Solução:

Veja a solução comentada deste exercício usando a linguagem VB.NET:

Imports System

Module Program
  Sub Main(args As String())
    Dim valor As Integer ' guarda o valor lido
    Dim maior, menor As Integer ' variáveis que guardarão
    ' o maior e o menor valor lido

    ' vamos pedir ao usuário que informe 10 valores inteiros
    For i As Integer = 1 To 10 Step 1
      Console.Write("Informe o " & i & "º valor: ")
      valor = Integer.Parse(Console.ReadLine())

      ' esta é a primeira iteração do laço? se for vamos assumir que o
      ' maior e menor valor lido são o primeiro valor informado
      If i = 1 Then
        maior = valor
        menor = valor
      Else ' não é a primeira iteração
        ' vamos verificar se é maior que o valor atual da variável maior
        If valor > maior Then
          maior = valor
        End If
        ' vamos verificar se é menor que o valor atual da variável menor
        If valor < menor Then
          menor = valor
        End If
      End If
    Next

    ' vamos exibir o maior e o menor valor lido
    Console.WriteLine(vbCrLf & "O maior valor lido foi: " & maior)
    Console.WriteLine("O menor valor lido foi: " & menor)

    Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...")
    ' pausa o programa
    Console.ReadKey()
  End Sub
End Module



Ruby ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o cosseno de um ângulo em Ruby usando o método cos() da biblioteca Math - Calculadora de cosseno em Ruby

Quantidade de visualizações: 932 vezes
Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula:

\[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \]

Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem Ruby. Esta método, que faz parte da biblioteca Math, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja:

puts "Cosseno de 0 = " + Math.cos(0).to_s
puts "Cosseno de 1 = " + Math.cos(1).to_s
puts "Cosseno de 2 = " + Math.cos(2).to_s

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

Cosseno de 0 = 1.0
Cosseno de 1 = 0.5403023058681398
Cosseno de 2 = -0.4161468365471424

Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo:




Delphi ::: Dicas & Truques ::: Matemática e Estatística

Como calcular juros compostos e montante usando Delphi

Quantidade de visualizações: 933 vezes
O regime de juros compostos é o mais comum no sistema financeiro e portanto, o mais útil para cálculos de problemas do dia-a-dia. Os juros gerados a cada período são incorporados ao principal para o cálculo dos juros do período seguinte.

Chamamos de capitalização o momento em que os juros são incorporados ao principal. Após três meses de capitalização, temos:

1º mês: M = P .(1 + i)
2º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i)
3º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) x (1 + i)

Simplificando, obtemos a fórmula:

M = P . (1 + i) ^ n

Importante: a taxa i tem que ser expressa na mesma medida de tempo de n, ou seja, taxa de juros ao mês para n meses.

Para calcularmos apenas os juros basta diminuir o principal do montante ao final do período:

J = M - P

Vejamos um exemplo:

Considerando que uma pessoa empresta a outra a quantia de R$ 2.000,00, a juros compostos, pelo prazo de 3 meses, à taxa de 3% ao mês. Quanto deverá ser pago de juros?

Veja o código Delphi para a resolução:

procedure TForm1.Button1Click(Sender: TObject);
var
  principal, taxa, juros, montante: double;
  meses: integer;
begin
  principal := 2000.00;
  taxa := 0.03;
  meses := 3;

  montante := principal * power((1 + taxa), meses);
  juros := montante - principal;

  ShowMessage('O total de juros a ser pago é: '
    + FloatToStr(juros));
  ShowMessage('O montante a ser pago é: '
    + FloatToStr(montante));
end;

Um outra aplicação interessante é mostrar mês a mês a evolução dos juros.

procedure TForm1.Button1Click(Sender: TObject);
var
  principal, taxa, juros, montante, anterior: double;
  i, meses: integer;
begin
  principal := 2000.00;
  taxa := 0.03;
  meses := 3;
  anterior := 0.0;

  for i := 1 to meses do
    begin
      montante := principal * power((1 + taxa), i);
      juros := montante - principal - anterior;

      anterior := anterior + juros;

      Memo1.Lines.Add('Mês: ' + IntToStr(i) + ' - Montante: '
        + FloatToStr(montante) + ' - Juros: ' + FloatToStr(juros));
    end;
end;

Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009.


PHP ::: Dicas & Truques ::: Data e Hora

PHP para iniciantes - Como converter segundos para horas no formato HH:MM:SS usando a função gmdate() do PHP

Quantidade de visualizações: 215 vezes
Nesta dica mostrarei o uso da função gmdate() da linguagem PHP para convertermos, de forma bem rápida, um determinado número de segundos em horas no formato HH:MM:SS. É claro que há uma infinidade de formas de se fazer isso em PHP. Porém, essa é uma das mais simples, pois não exige nenhum cálculo.

Veja o código completo para o exemplo:

<html>
<head>
<title>Estudando PHP</title>
</head>
<body>

<?php
  $segundos = 134;
  echo "$segundos segundos equivale a " .
    gmdate("H:i:s", $segundos);
?>
 
</body>
</html>

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

134 segundos equivale a 00:02:14


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: 1582 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



C ::: C para Engenharia ::: Física - Mecânica

Como calcular a velocidade da queda livre de um corpo dado o intervalo de tempo (e a aceleração da gravidade) em C

Quantidade de visualizações: 2596 vezes
A Queda Livre é um Movimento Uniformemente Variado, na qual um objeto em queda livre tem a sua velocidade aumentada a taxas constantes. Abandonado em alturas próximas da terra, a velocidade com que um corpo cai aumenta a uma taxa de aproximadamente 9,8m/s. Isso é o mesmo que dizer que a aceleração da gravidade terrestre é de 9,8m/s2, o que aumenta a velocidade do objeto em 35,28km/h a cada segundo.

Assim, a fórmula da velocidade de um objeto em queda livre é:

\[ \text{v} = \text{g} \cdot \text{t} \]

Onde:

v ? velocidade de queda (m/s)

g ? aceleração da gravidade (m/s2)

t ? intervalo de tempo (s)

Vamos ver um exemplo? Veja o seguinte enunciado:

1) Um corpo é abandonado a uma altura qualquer no tempo 0s e está em queda livre. Calcule a sua velocidade no tempo 15s.

Como sabemos que o intervalo de tempo é 15s, só precisamos jogar na fórmula. Veja o código C completo para o cálculo:

#include <stdio.h>
#include <stdlib.h>
     
int main(int argc, char *argv[]){
  // gravidade terrestre em m/s2
  float gravidade = 9.80665;
  // intervalo de tempo da queda livre (em segundos)
  float tempo = 15.00; // em segundos
  // velocidade da queda nesse intervalo
  float velocidade = gravidade * tempo;
  
  // mostramos o resultado
  printf("A velocidade da queda livre é: %fm/s",
    velocidade);
    
  printf("\n\n");
  system("PAUSE");
  return 0;
}

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

A velocidade da queda livre é: 147.099747m/s

Se quisermos saber a velocidade em km/h, basta multiplicar o resultado por 3.6, o que dará 529.56km/h.

Vamos tornar o experimento mais interessante? Veja uma modificação no código C que mostra a velocidade da queda nos 10 primeiros segundos, de forma individual:

#include <stdio.h>
#include <stdlib.h>
     
int main(int argc, char *argv[]){
  int i; // variável de controle do laço
  // gravidade terrestre em m/s2
  float gravidade = 9.80665;
  // intervalo de tempo da queda livre (em segundos)
  int tempo;
  // velocidade da queda nesse intervalo
  float velocidade;
  
  // um laço for que repete 10 vezes
  for(i = 1; i <= 10; i++){
    tempo = i; // inicialmente será um segundo
    velocidade = gravidade * tempo;
    printf("A velocidade no tempo %d: %fm/s\n",
      tempo, velocidade);
  }
    
  printf("\n\n");
  system("PAUSE");
  return 0;
}

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

A velocidade no tempo 1: 9.806650m/s
A velocidade no tempo 2: 19.613300m/s
A velocidade no tempo 3: 29.419950m/s
A velocidade no tempo 4: 39.226601m/s
A velocidade no tempo 5: 49.033249m/s
A velocidade no tempo 6: 58.839901m/s
A velocidade no tempo 7: 68.646553m/s
A velocidade no tempo 8: 78.453201m/s
A velocidade no tempo 9: 88.259850m/s
A velocidade no tempo 10: 98.066498m/s


Python ::: Pygame ::: Animação, Animações, Técnicas de Animação

Como criar um relógio analógico no Pygame - Código completo com variáveis e comentários em português

Quantidade de visualizações: 1369 vezes
Nesta dica mostrarei um código para a criação de um relógio analógico completo em Python, com comentários detalhados e fácil de entender. Veja a imagem:



Por simplicidade, eu mantive a mesma cor para todos os elementos da animação e deixei somente o básico mesmo, para que você possa se concentrar nas partes mais importantes.

Neste código você aprenderá como definir o tamanho, título e cor de fundo para uma janela do Pygame do Python. Aprenderá também como definir a quantidade de frames por segundo para a animação, assim como controlar os disparos do timer pygame.time.Clock().

Por fim, o código mostra como calcular o ângulo dos ponteiros das horas, minutos e segundos e efetuar o desenho das retas saindo do centro do círculo. Você sabia, por exemplo, que o ângulo de 45 graus corresponde exatamente à hora 1:30hs?

Em vários exemplos de relógios analógicos na internet, o ponteiro das horas fica preso à uma determinada hora, aguardando o ponteiro dos segundos completar um giro completo. No código que apresento aqui, eu obtive a hora atual como um decimal, o que faz com que o ponteiro das horas mostre a posição real da hora, como um relógio analógico do mundo real.

Para estudantes de matemática, engenharia e física, este código é uma boa aplicação da técnica de se converter coordenadas polares para coordenadas cartesianas.

Eis o código completo para o relógio analógico. Boa diversão.

# vamos importar as bibliotecas necessárias
import pygame, sys
from pygame.locals import *
import math
from datetime import datetime

# função que faz a correção dos ângulos
def corrigir_angulo(angulo):
  return abs(angulo % 360)

# inicializa a biblioteca
pygame.init()

# quantidade de frames por segundo
FPS = 30
# construímos o timer
timer = pygame.time.Clock()

# obtém a superfície do jogo e define o tamanho da tela
janela = pygame.display.set_mode((600, 400))
  
# vamos definir o título da janela do jogo
pygame.display.set_caption('Relógio Analógico no Pygame')

# vamos definir alguns parâmetros
fonte = pygame.font.Font(None, 36)
VERMELHO = (200, 0, 0)
BRANCO = (255, 255, 255)
raio = 150
x_inicial = 300
y_inicial = 200
distancia_aro = 20
  
# e aqui nós entramos no loop do game
while True:
  # vamos pintar a tela toda de branco
  janela.fill(BRANCO)
  
  # monitoramos os eventos
  for evento in pygame.event.get():
    # se o evento foi um pedido para sair
    if evento.type == QUIT:
      # fechamos a tela do jogo 
      pygame.quit()
      # e saimos do programa
      sys.exit()
  
  # vamos desenhar um circulo não preenchido (maior)
  pygame.draw.circle(janela, VERMELHO, (x_inicial, y_inicial), raio, 2)
  # vamos desenhar um circulo não preenchido (menor)
  pygame.draw.circle(janela, VERMELHO, (x_inicial + 1, y_inicial + 1), 5, 0)

  # vamos desenhar os números do relório (1-12)
  for n in range(1, 13):
    # calcula o ângulo dessa hora
    angulo = math.radians((n * (360 / 12)) - 90)
    # agora convertemos o ângulo e o raio para coordenadas cartesianas
    if len(str(n)) > 1:
      x = math.cos(angulo) * (raio - distancia_aro) - 18
    else:
      x = math.cos(angulo) * (raio - distancia_aro) - 10
    y = math.sin(angulo) * (raio - distancia_aro) - 10
    texto_numero = fonte.render(str(n), True, VERMELHO)
    janela.blit(texto_numero, (x_inicial + x, y_inicial + y))

  # vamos obter as horas, minutos e segundos atuais
  hoje = datetime.today()
  horas = hoje.hour % 12
  minutos = hoje.minute
  segundos = hoje.second
  
  # ajustamos as horas para tratar a hora decimal (com frações de horas)
  horas = horas + (minutos * (1 / 60)) + (segundos * (1 / 3600))

  # desenha o ponteiro das horas
  angulo_horas = corrigir_angulo(horas * (360 / 12) - 90)
  angulo_horas = math.radians(angulo_horas)
  hora_x = math.cos(angulo_horas) * (raio - 60)
  hora_y = math.sin(angulo_horas) * (raio - 60)
  coord_finais = (x_inicial + hora_x, y_inicial + hora_y)
  pygame.draw.line(janela, VERMELHO, (x_inicial, y_inicial), coord_finais, 4)

  # desenha o ponteiro dos minutos
  angulo_minutos = corrigir_angulo(minutos * (360 / 60) - 90)
  angulo_minutos = math.radians(angulo_minutos)
  minutos_x = math.cos(angulo_minutos) * (raio - 40)
  minutos_y = math.sin(angulo_minutos) * (raio - 40)
  coord_finais = (x_inicial + minutos_x, y_inicial + minutos_y)
  pygame.draw.line(janela, VERMELHO, (x_inicial, y_inicial), coord_finais, 3)

  # desenha o ponteiro dos segundos
  angulo_segundos = corrigir_angulo(segundos * (360 / 60) - 90)
  angulo_segundos = math.radians(angulo_segundos)
  segundos_x = math.cos(angulo_segundos) * (raio - 30)
  segundos_y = math.sin(angulo_segundos) * (raio - 30)
  coord_finais = (x_inicial + segundos_x, y_inicial + segundos_y)
  pygame.draw.line(janela, VERMELHO, (x_inicial, y_inicial), coord_finais, 1)

  # redesenha a tela continuamente 
  pygame.display.update()

  # aciona o disparo do timer
  timer.tick(FPS)



PHP ::: Dicas & Truques ::: PDO (PHP Data Objects)

PHP MySQL - Como efetuar uma conexão PHP + MySQL usando PDO (PHP Data Objects)

Quantidade de visualizações: 13664 vezes
O acesso e manipulação de informações em uma base de dados MySQL usando PDO está se tornando muito popular nos dias atuais. Nesta dica eu mostrarei como podemos efetuar uma conexão PHP + MySQL usando o construtor da classe PDO, passando a ele os parâmetros de conexão.

Veja o código completo para o exemplo:

<html>
<head>
<title>Estudando PHP</title>
</head>
<body>

<?php
  $server = "localhost";
  $user = "root";
  $pass = "osmar1234";
  $db = "estudos";
   
  try{
    $conn = new PDO("mysql:host=$server;dbname=$db", 
       $user, $pass);
    echo "Conexão efetuada com sucesso.";
  } 
  catch(PDOException $e){
    echo 'Não foi possível conectar: ' . $e->getMessage();
  }
?>
 
</body>
</html>

Se você forneceu todos os parâmetros de conexão corretamente, execute a página PHP e você terá o seguinte resultado:

Conexão efetuada com sucesso.

Carregar Publicações Anteriores


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 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
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

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



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