PHP ::: Dicas & Truques ::: Data e Hora |
Como gerar um calendário mensal completo para um determinado mês e ano usando PHPQuantidade de visualizações: 5 vezes |
|
Nesta dica eu mostro como podemos usar as principais funções de data e hora da linguagem PHP para montar um calendário PHP completo (com comentários e fácil de modificar). Basta passar um mês e ano e a função se encarrega do restante. Este código é muito útil em aplicações PHP para escolas, faculdades, sistemas financeiros, etc. Veja o resultado na imagem abaixo: ![]() E agora o código completo:
<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
// função que permite montar o calendário
function montar_calendario($mes, $ano){
// um vetor para guardar os meses
$meses = array(1 => 'Janeiro', 2 => 'Fevereiro',
3 => 'Março', 4 => 'Abril', 5 => 'Maio',
6 => 'Junho', 7 => 'Julho', 8 => 'Agosto',
9 => 'Setembro', 10 => 'Outubro', 11 => 'Novembro',
12 => 'Dezembro');
// um vetor com os dias da semana
$dias_semana = array('Dom', 'Seg', 'Ter', 'Qua',
'Qui', 'Sex', 'Sáb');
// vamos obter o primeiro dia do calendário
$primeiro_dia = mktime(0, 0, 0, $mes, 1, $ano);
// obtém a quantidade de dias no mês
$dias_mes = date('t', $primeiro_dia);
// dia da semana que o calendário inicia (começa em 0)
$dia_inicio = date('w', $primeiro_dia);
// cria a tabela HTML para o calendário
echo '<table border="1" cellspacing="0" cellpadding="4">
<tr><th colspan="7">'. $meses[$mes] . ' - ' .
$ano . '</th>
</tr>
<tr><td align="center">';
echo implode('</td><td align="center">', $dias_semana);
echo '</td></tr>';
// precisamos de células vazias até encontrarmos
// o dia inicial da semana
if($dia_inicio > 0){
for($i = 0; $i < $dia_inicio; $i++){
echo '<td> </td>';
}
}
// agora já podemos começar a preencher o
// calendário
for($dia = 1; $dia <= $dias_mes; $dia++ ){
if($dia_inicio == 0){
// vamos colorir o domingo de vermelho
$estilo = ' style="color: red"';
}
else{
$estilo = '';
}
// vamos colocar a data de hoje sublinhada
if(($dia == date("j")) && ($mes == date("n")) &&
($ano == date("Y"))){
echo '<td ' . $estilo . ' align="center"><u>'
. $dia . '</u></td>';
}
else{
echo '<td ' . $estilo . ' align="center">' .
$dia . '</td>';
}
// vamos incrementar o dia de referência
$dia_inicio++;
// já precisamos adicionar uma nova linha na tabela?
if($dia_inicio == 7){
$dia_inicio = 0;
echo "</tr>";
if($dia < $dias_mes){
echo '<tr>';
}
}
} // fim do laço for
// agora preenchemos as células restantes
if($dia_inicio > 0){
for($i = $dia_inicio; $i < 7; $i++){
echo '<td> </td>';
}
echo '</tr>';
}
echo '</table>';
}
// vamos montar o mês de março de 2021
montar_calendario(3, 2021);
?>
</body>
</html>
|
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como retornar a quantidade de itens em uma TListBox do Delphi usando a propriedade Items.CountQuantidade de visualizações: 13471 vezes |
Em algumas situações nós precisamos obter a quantidade de itens em uma TListBox. Isso pode ser feito por meio da propriedade Count do objeto Items, uma instância da classe TStrings. Esta propriedade contém um valor inteiro que representa a quantidade de elementos na ListBox. Veja:
procedure TForm1.Button1Click(Sender: TObject);
var
quant: Integer;
begin
// vamos adicionar dois itens na TListBox
ListBox1.Items.Add('Item 1');
ListBox1.Items.Add('Item 2');
// vamos obter a quantidade de itens
quant := ListBox1.Items.Count;
// exibe o resultado
ShowMessage('Quantidade de elementos: ' + IntToStr(quant));
end;
É possível também obter a quantidade de itens em uma TListBox acessando a propriedade Count da classe TCustomListBox. Esta propriedade é herdada pela classe TListBox. Veja: quant := ListBox1.Count; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em C++ - Como efetuar cálculos de porcentagem em C++Quantidade de visualizações: 40808 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 C++. 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 C++:
// Algoritmo que calcula porcentagem em C++
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
double valor, percentual, valor_final;
valor = 178.00; // valor original
percentual = 15.0 / 100.0; // 15%
valor_final = valor + (percentual * valor);
// mostra o resultado
cout << "O valor final do produto é: " << valor_final;
// O resultado será 204,70
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
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 C++:
// Algoritmo que calcula porcentagem em C++
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
double valor, percentual, valor_final;
valor = 250.00; // valor original
percentual = 8.0 / 100.0; // 8%
valor_final = valor - (percentual * valor);
// mostra o resultado
cout << "O valor final do produto é: " << valor_final;
// O resultado será 230,00
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
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 C++:
// Algoritmo que calcula porcentagem em C++
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
double perguntas, acertos;
perguntas = 90.0;
acertos = 72.0;
// mostra a porcentagem de acertos
cout << "Porcentagem de acertos: " << ((acertos / perguntas) * 100) << "%";
// mostra a porcentagem de erros
cout << "\nPorcentagem de erros: " << ((perguntas - acertos) / perguntas)
* 100 << "%";
// Os resultados serão 80% e 20%
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
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 C++:
// Algoritmo que calcula porcentagem em C++
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
double valor_anterior, novo_valor, porcentagem_lucro;
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;
cout << "A porcentagem de lucro foi de: " << porcentagem_lucro << "%";
// O resultado será 13,33
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
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 C++:
// Algoritmo que calcula porcentagem em C++
#include <iostream>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// variáveis usadas na resolução do problema
double valor, percentual, comissao;
valor = 70.0; // valor do produto
percentual = 5.0 / 100.0; // 5%
// calcula a comissão
comissao = percentual * valor;
// mostra o resultado
cout << "O valor repassado ao vendedor é: " << comissao;
// O resultado será 3,5
cout << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
Portugol ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Portugol - Faça um algoritmo em Portugol que leia 9 números inteiros, guarde-os em uma matriz 3x3 e mostre os números paresQuantidade de visualizações: 1334 vezes |
|
Pergunta/Tarefa: Faça um algoritmo em Portugol que leia 9 números inteiros e guarde-os em uma matriz 3x3. Imprima a matriz no formato tabular, usando a melhor formatação que você conseguir. Em seguida, percorra a matriz novamente e imprima somente os números que são pares, todos na mesma linha e separados por espaço. Sua saída deverá ser parecida com:
Linha 1 e coluna 1: 8
Linha 1 e coluna 2: 1
Linha 1 e coluna 3: 5
Linha 2 e coluna 1: 3
Linha 2 e coluna 2: 9
Linha 2 e coluna 3: 30
Linha 3 e coluna 1: 7
Linha 3 e coluna 2: 23
Linha 3 e coluna 3: 10
Valores na matriz
8 1 5
3 9 30
7 23 10
Os valores pares são: 8 30 10
Veja a resolução completa para o exercício em Portugol, comentada linha a linha (fiz a resolução no Portugol Webstudio):
// Um algoritmo que lê uma matriz 3x3
programa {
funcao inicio() {
// variáveis usadas na resolução do problema
inteiro matriz[3][3]
inteiro i, j
// vamos pedir para o usuário informar os valores
// dos elementos da matriz, uma linha de cada vez
para (inteiro i = 0; i < 3; i++) {
para (inteiro j = 0; j < 3; j++) {
escreva("Linha ", (i + 1), " e coluna ", (j + 1), ": ")
leia(matriz[i][j])
}
}
// vamos mostrar a matriz da forma que ela foi informada
escreva("\nValores na matriz:\n\n")
para (inteiro i = 0; i < 3; i++) {
para (inteiro j = 0; j < 3; j++) {
escreva(matriz[i][j], " ")
}
// passa para a próxima linha da matriz
escreva("\n")
}
// agora vamos percorrer a matriz novamente e mostrar
// apenas os valores pares
escreva("\nOs valores pares são: ")
para (inteiro i = 0; i < 3; i++) {
para (inteiro j = 0; j < 3; j++) {
// é um número par?
se (matriz[i][j] % 2 == 0) {
escreva(matriz[i][j], " ")
}
}
}
}
}
|
Nossas 20 dicas & truques de programação mais populares |
|
jQuery - Como remover uma classe (ou classes) de um elemento HTML usando a função removeClass() do jQuery Java - Apostila de Java - Como retornar uma substring em Java usando o método substring() da classe String JavaScript - Como remover elementos duplicados de um array em JavaScript usando um Set e o método Array.from() |
Você também poderá gostar das dicas e truques de programação abaixo |
|
JavaScript - Como inverter a ordem dos elementos de um array em JavaScript - Vetores e matrizes em JavaScript C++ Builder - Como habilitar ou desabilitar um TEdit usando a função EnableWindow() da API do Windows usando C++ Builder |
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 |







