![]() |
|
Código-Fonte Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimentoDiga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
|
Você está aqui: Cards de Cards de Hidrologia |
||
|
||
|
|
||
Java ::: Projetos Java Completos - Códigos Fonte Completos Java ::: Jogos (Games) |
Como criar um Jogo da Velha em Java - Jogo completo com código fonte comentado - Versão consoleQuantidade de visualizações: 8314 vezes |
|
Faça o download do código-fonte Jogo da Velha em Java Sobre o Jogo da Velha em Java O Jogo da Velha, também conhecido como Tic-Tac-Toe, é um dos joguinhos mais fáceis de se programar em Java. Além disso, ele possibilita uma boa oportunidade de se entender matrizes, a estrutura switch, os laços for e while, assim como a estrutura básica presente em praticamente todos os games. O Jogo da Velha em Java Console Neste código fonte eu demonstro como o Jogo da Velha pode ser criado em Java usando o modo console, ou seja, em formato texto. Penso que o entendimento da lógica é mais fácil em modo console. Uma vez que você tenha aprendido todos os passos envolvidos, você poderá reproduzí-lo em modo gráfico sem muitas dificuldades. A versão do jogo apresentado nesta dica é um jogador humano, ou seja, você, contra o computador. Não coloquei inteligência artificial nem aprendizado de máquina nos movimentos do computador. Usei apenas jogadas sorteadas. Fica como desafio você implementar jogadas inteligentes por parte do computador como forma de deixar o jogo ainda mais interessante. Por enquanto o objetivo é só o aprendizado mesmo. Antes de continuarmos, veja uma imagem demonstrando o jogo: ![]() Me mostra um pouco do código Para mostrar a simplicidade do código, veja o método que registra a jogada do jogador humano:
// este método registra a jogada do jogador humano
private static void jogadaHumano(char[][] tabuleiro) {
int jogada; // para registrar a jogada do jogador humano
// repete até que a jogada seja válida
while (true) {
// lê a jogada do humano
System.out.print("\nSua jogada (1 a 9): ");
jogada = Integer.parseInt(entrada.nextLine());
// este movimento é válido?
if (movimentoValido(tabuleiro, jogada)){
break;
}
else{ // não é válido
System.out.println("O número " + jogada + " não é um movimento válido.");
}
}
// vamos registrar esse movimento
registrarMovimento(tabuleiro, jogada, 'X');
}
Os links para você baixar todas as versões deste projeto estão abaixo: 1) JOGOVELHAJC - Jogo da Velha em Java Console - NetBeans IDE - Faça o Download. Não se esqueça: Uma boa forma de estudar o código é fazendo pequenas alterações e rodando para ver os resultados. Outra opção é começar um projeto Java do zero e ir adicionando trechos do código fonte para melhor entendimento de suas partes. |
PHP ::: PHP + MySQL ::: MySQL Improved Extension (mysqli) |
Como estabelecer uma conexão PHP + MySQL no modo procedimental - Como se conectar ao banco MySQL usando PHP (modo procedural) usando mysqli_connect - Revisado)Quantidade de visualizações: 7499 vezes |
|
Nesta dica mostrarei como usar a função mysqli_connect da extensão mysqli para efetuar uma conexão PHP + MySQL usando o modo precedimental, ou seja, nada de programação orientada aqui, mas em outras dicas dessa seção você encontrará a forma de conexão orientada a objetos. Veja um trecho de código completo no qual nos conectamos ao banco de dados MySQL e exibimos uma mensagem indicando o sucesso da operação:
<?
// vamos efetuar a conexão com o banco
$conexao = mysqli_connect("localhost", "root",
"osmar1234", "estudos");
// conexão efetuada com sucesso?
if(mysqli_connect_errno()) {
echo "Não foi possível efetuar a conexão com o MySQL: "
. mysqli_connect_error();
// vamos sair daqui
exit();
}
else{
echo "Conexão efetuada com sucesso.";
// fecha a conexão
mysqli_close($conexao);
}
?>
Este trecho de código foi revisado e testado no PHP 8. |
C++ ::: Dicas & Truques ::: MIDI Musical Instrument Digital Interface, Mapeamento e sequenciamento MIDI, Entrada e saída MIDI |
Programação MIDI usando C++ - Como usar um vetor de chars para construir uma mensagem MIDI e passá-lo para a função midiOutShortMsg() da API do WindowsQuantidade de visualizações: 2705 vezes |
|
Nas dicas dessa seção nós vimos como é possível enviar uma mensagem MIDI para o dispositivo de saída por meio da função midiOutShortMsg() da API do Windows. Essa função recebe um handle para o dispositivo de saída MIDI e um valor DWORD contendo a mensagem MIDI. Se você revisitar essas dicas, verá que na maioria delas nós informamos a mensagem MIDI diretamente no parâmetro da função (como um valor hexadecimal). Nesta dica mostrarei como é possível construir as mensagens MIDI usando seus valores individuais e, o que é melhor, usando valores decimais. Para isso nós vamos construir um vetor de char e informar os valores que compõem a mensagem. É importante observar que a função midiOutShortMsg() exige que a mensagem MIDI seja informada na ordem de bytes "little endian" ou seja, o status MIDI é informado no byte de ordem mais baixa. Isso é conseguido com um cast do vetor para um unsigned long. Veja o trecho de código: // vamos criar um vetor contendo os valores que compõem a mensagem MIDI unsigned char vetor[4]; vetor[0] = 144; // Note-on no Canal 1 vetor[1] = 40; // Nota Mi na 4ª oitava vetor[2] = 100; // Velocidade/volume da nota vetor[3] = 0; // Não é usado // e aqui é que acontece a mágica. Quando fazemos o cast do // vetor para o tipo long sem sinal, os valores são colocados em // little endian, justamente a ordem de bytes esperada pela // função midiOutShortMsg() unsigned long mensagem = *(unsigned long*)vetor; // envia a mensagem MIDI midiOutShortMsg(saida, mensagem); Note que não coloquei o código todo. Para completá-lo, veja outras dicas dessa seção. |
HTML5 ::: Referência Tags/Elementos HTML5 ::: Tag/Elemento <Video> |
Como usar a tag/elemento <video> do HTML5 em suas aplicações webQuantidade de visualizações: 2006 vezes |
|
A tag/elemento <video> do HTML5 é usada quando queremos incorporar um vídeo em nossos documentos HTML sem incluir plugs adicionais, tais como o Flash Player. Contudo, o suporte a este elemento pode variar de navegador para navegador (faça testes com seus navegadores alvos antes). Em geral, navegadores que dão suporte ao elemento <video> suportam os seguintes formatos de vídeo: MP4, Ogg e WebM. Veja um documento HTML que carrega um vídeo MP4: <!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Como usar a tag video do HTML5</title> </head> <body> <video controls="controls" src="filme.mp4"> Seu browser não dá suporte ao elemento video do HTML5. </video> </body> </html> Quando você abrir esta página HTML, você verá um vídeo na tela já com os controles para iniciar, pausar, e parar a execução (contanto que você tenha informado um endereço válido para o vídeo). Note que não especificamos o tamanho do vídeo na página, o que fará com que o elemento <video> tenha as dimensões do vídeo que foi carregado. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Data e Hora |
Exercícios Resolvidos de C - Escreva um programa C que peça para o usuário informar um ano e informe o dia da semana que o ano começou (domingo, segunda-feiraQuantidade de visualizações: 787 vezes |
|
Pergunta/Tarefa: Escreva um programa C que pede para o usuário informar um ano e então mostre em qual dia da semana o ano começou, por exemplo, domingo, segunda-feira, terça-feira, quarta-feira, etc. Sua saída deverá ser parecida com: Informe um ano: 2022 O ano informado começou em um(a) Sábado Informe um ano: 2023 O ano informado começou em um(a) Domingo Informe um ano: 2024 O ano informado começou em um(a) Segunda-feira Informe um ano: 2025 O ano informado começou em um(a) Quarta-feira Veja a resolução comentada deste exercício usando C:
#include <stdio.h>
#include <stdlib.h>
// função principal do programa
int main(int argc, char *argv[]) {
// variáveis usadas na resolução do problema
char dias_semana[][20] = {"Domingo", "Segunda-feira", "Terça-feira",
"Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"};
int ano, dia_inicial;
// vamos pedir para o usuário informar o ano
printf("Informe um ano: ");
scanf("%d", &ano);
// vamos calcular o número equivalente ao dia da semana que o
// ano iniciou: 0:Domingo, 1:Segunda-feira, 2:Terça-feira, etc
// note que as divisões abaixo são divisões por inteiro, ou seja,
// sem a parte fracionária
dia_inicial = (ano + (ano - 1) / 4) - ((ano - 1) / 100) +
((ano - 1) / 400);
dia_inicial = dia_inicial % 7;
// e mostramos o resultado
printf("O ano informado começou em um(a) %s", dias_semana[dia_inicial]);
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 |
|
C++ - Como obter o diretório atual usando a função GetCurrentDirectory() da API do Windows - C++ e WinAPI |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |








