![]() |
|
||||
|
|||||
Você está aqui: Cards de Ética e Legislação Profissional |
||
|
||
|
|
||
PHP ::: Dicas & Truques ::: Strings e Caracteres |
Como transformar uma string em letras minúsculas em PHP usando a função strtolower()Quantidade de visualizações: 3 vezes |
|
A função strtolower() do PHP pode ser usada quando queremos converter uma palavra, frase ou texto para letras minúsculas. Veja um exemplo de seu uso:
<?php
// vamos definir a codificação como iso-8859-1
ini_set('default_charset', "iso-8859-1");
// vamos criar uma string
$frase = "PHP? Eu gosto de PHP";
echo "A frase original é: " . $frase;
// agora vamos converter a frase para letras
// minúsculas
$frase_minusculas = strtolower($frase);
echo "<br>Em letras minúsculas: " . $frase_minusculas;
?>
Ao executarmos este código PHP nós teremos o seguinte resultado: A frase original é: PHP? Eu gosto de PHP Em letras minúsculas: php? eu gosto de php Ao executar este código no PHP 8, Windows 10 e codificação do arquivo em ANSI, o resultado da função strtolower() é o esperado, mas somente sem usar acentos e caracteres especiais. Veja:
<?php
// vamos definir a codificação como iso-8859-1
ini_set('default_charset', "iso-8859-1");
// vamos criar uma string
$frase = "JAVA? NÃO! É DE PHP QUE EU GOSTO";
echo "A frase original é: " . $frase;
// agora vamos converter a frase para letras
// minúsculas
$frase_minusculas = strtolower($frase);
echo "<br>Em letras minúsculas: " . $frase_minusculas;
?>
Ao executarmos o código novamente nós teremos a seguinte saída: A frase original é: JAVA? NÃO! É DE PHP QUE EU GOSTO Em letras minúsculas: java? nÃo! É de php que eu gosto Note que as letras acentuadas não foram convertidas para letras minúsculas. Isso aconteceu porque os caracteres acentuados são tratados como caracteres de múltiplos bytes, ou seja, multi-byte chars. A saída, nesse caso, e no PHP 8 (e acredito mais recentes), é usar a função mb_strtolower(). Veja:
<?php
// vamos definir a codificação como iso-8859-1
ini_set('default_charset', "iso-8859-1");
// vamos criar uma string
$frase = "JAVA? NÃO! É DE PHP QUE EU GOSTO";
echo "A frase original é: " . $frase;
// agora vamos converter a frase para letras
// minúsculas
$frase_minusculas = mb_strtolower($frase);
echo "<br>Em letras minúsculas: " . $frase_minusculas;
?>
Execute o código novamente e verá que o resultado agora está correto: A frase original é: JAVA? NÃO! É DE PHP QUE EU GOSTO Em letras minúsculas: java? não! é de php que eu gosto Agora você já sabe o primeiro passo para resolver problemas de acentuação no PHP. Bons estudos. |
C++ ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em C++Quantidade de visualizações: 1183 vezes |
|
Todos estamos acostumados com o Teorema de Pitágoras, que diz que "o quadrado da hipotenusa é igual à soma dos quadrados dos catetos". Baseado nessa informação, fica fácil retornar a medida do cateto oposto quando temos as medidas da hipotenusa e do cateto adjascente. Isso, claro, via programação em linguagem C++. Comece observando a imagem a seguir: ![]() Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. A medida da hipotenusa é, sem arredondamentos, 36.056 metros. Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras): \[c^2 = a^2 + b^2\] Tudo que temos que fazer é mudar a fórmula para: \[a^2 = c^2 - b^2\] Veja que agora o quadrado do cateto oposto é igual ao quadrado da hipotenusa menos o quadrado do cateto adjascente. Não se esqueça de que a hipotenusa é o maior lado do triângulo retângulo. Veja agora como esse cálculo é feito em linguagem C++:
#include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;
int main(int argc, char *argv[]){
float c = 36.056; // medida da hipotenusa
float b = 30; // medida do cateto adjascente
// agora vamos calcular o comprimento da cateto oposto
float a = sqrt(pow(c, 2) - pow(b, 2));
// e mostramos o resultado
cout << "A medida do cateto oposto é: " << a << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: A medida do cateto oposto é: 20.0009 Como podemos ver, o resultado retornado com o código C++ confere com os valores da imagem apresentada. |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string C++ começa com uma determinada substring usando a função compare()Quantidade de visualizações: 8312 vezes |
|
Este exemplo usa a função compare() da classe string para verificar se uma string começa com uma determinada substring em C++. Se o resultado for positivo, o valor 0 é retornado. Do contrário obteremos um valor diferente de 0. Veja a forma da função que usaremos: int compare(size_t pos1, size_t n1, const string& str) const; int compare(size_t pos1, size_t n1, const char* s) const; a) Fornecendo uma variável como parâmetro; b) Fornecendo uma string entre aspas. O truque aqui é fornecer a posição inicial e a quantidade de caracteres que queremos testar.
#include <iostream>
#include <string>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// vamos criar duas strings
string str1("Gosto de programar em Java");
string str2("Gosto");
// agora vamos testar se a primeira string começa com a segunda
if(str1.compare(0, str2.size(), str2) == 0){
cout << "A string começa com \"Gosto\"";
}
else{
cout << "A string não começa com \"Gosto\"";
}
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: A string começa com "Gosto" |
Delphi ::: Data Access Controls (Controles de Acesso a Dados) ::: TClientDataSet |
Como tornar o TClientDataSet do Delphi somente leitura usando a propriedade ReadOnlyQuantidade de visualizações: 12185 vezes |
|
Em algumas situações gostaríamos que um TClientDataSet fosse somente leitura, ou seja, não queremos permitir inserção, atualização ou exclusão dos dados do dataset. Para isso podemos usar a propriedade ReadOnly. Se seu valor for True, os dados do TClientDataSet serão apenas para leitura. Se o valor for False, os dados podem ser modificados e/ou novos dados podem ser inseridos no dataset. O valor padrão é False. Em tempo de design a propriedade ReadOnly do TClientDataSet pode ser ajustada selecionando-se o componente no formulário e acessando o Object Inspector. Em tempo de execução esta propriedade pode ser ajustada por meio do seguinte trecho de código: procedure TForm3.Button3Click(Sender: TObject); begin // vamos tornar o TClientDataSet somente leitura ClientDataSet1.ReadOnly := True; end; Se necessário, podemos obter o valor desta propriedade em tempo de execução da seguinte forma:
procedure TForm3.Button3Click(Sender: TObject);
begin
// vamos verificar se o TClientDataSet é somente leitura
if ClientDataSet1.ReadOnly then
ShowMessage('O ClientDataSet é somente leitura')
else
ShowMessage('O ClientDataSet NÃO é somente leitura')
end;
Ao executarmos este código e clicarmos no botão teremos uma mensagem parecida com: "O ClientDataSet NÃO é somente leitura". É importante observar que se tentarmos efetuar alguma operação que modifica o conteúdo de um TClientDataSet somente leitura nós teremos uma exceção do tipo: Project Project2.exe raised exception class EDatabaseError with message 'ClientDataSet1': Cannot modify a read-only dataset'. Quando ajustamos o valor da propriedade ReadOnly para True, automaticamente a propriedade CanModify do dataset é ajustada para False. Importante: Mesmo que o valor da propriedade ReadOnly seja False, os usuários ainda podem ser impedidos de modificar os dados de um client dataset se este obtém seus dados a partir de um provider (por exemplo: TDataSetProvider). A propriedade Options do provider pode limitar se os dados podem ser editados e, se puderem, os tipos de alterações permitidos. Esta dica foi escrita e testada no Delphi 2009. |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de VisuAlg - Como testar se um ano é bissexto em VisuAlg - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou nãoQuantidade de visualizações: 1170 vezes |
|
Pergunta/Tarefa: Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016. Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400. Escreva um programa VisuAlg que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não. Sua saída deverá ser parecida com: Informe o ano: 2024 O ano informado é bissexto. Veja a resolução comentada deste exercício usando VisuAlg:
algoritmo "Como testar se um ano é bissexto em VisuAlg"
var
// variáveis usadas na resolução do problema
ano: inteiro
inicio
// vamos solicitar que o usuário informe um ano
escreva("Informe o ano: ")
leia(ano)
// vamos verificar se o ano informado é bissexto
se (((ano mod 4 = 0) e (ano mod 100 <> 0)) ou (ano mod 400 = 0)) entao
escreva("O ano informado é bissexto.")
senao
escreva("O ano informado não é bissexto.")
fimse
fimalgoritmo
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de VisuAlg |
Veja mais Dicas e truques de VisuAlg |
Dicas e truques de outras linguagens |
|
Portugol - Como resolver uma equação do segundo grau em Portugol - Como calcular Bhaskara em Portugol |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






