Você está aqui: Cards de Ética e Legislação Profissional |
||
|
||
|
|
||
PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como ordenar um array em PHP usando a função sort() - PHP para iniciantesQuantidade de visualizações: 9735 vezes |
|
Em várias situações nós precisamos ordenar os elementos de um vetor de inteiros, de caracteres, de strings, etc. Para isso nós podemos usar a função sort() da linguagem PHP. Veja o código a seguir:
<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
// um vetor com quatro elementos
$pessoas = array("Kelly", "Alice", "Mônica", "Cíntia");
// mostra os elementos sem ordenação
echo "Sem ordenar: ";
foreach($pessoas as $pessoa){
echo $pessoa . ", ";
}
// vamos ordenar o vetor em ordem alfabética
// crescente
sort($pessoas);
// mostra os elementos ordenados
echo "<br><br>Ordenados: ";
foreach($pessoas as $pessoa){
echo $pessoa . ", ";
}
?>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: Sem ordenar: Kelly, Alice, Mônica, Cíntia Ordenados: Alice, Cíntia, Kelly, Mônica Note que a função sort() requer o vetor (array) a ser ordenado e uma flag opcional indicando como a ordenação deverá ser feita. Esta flag pode ser um dos seguintes valores: SORT_REGULAR - padrão, compara os itens normalmente (não modifica o tipo). SORT_NUMERIC - compara os items numericamente. SORT_STRING - compara os itens como strings. SORT_LOCALE_STRING - compara os itens como strings, utilizando o locale atual. Utiliza o locale que pode ser modificado com setlocale(). SORT_NATURAL - compara os itens como strings utilizando "ordenação natural" tipo natsort(). SORT_FLAG_CASE - pode ser combinado (bitwise OR) com SORT_STRING ou SORT_NATURAL para ordenar strings sem considerar maiúsculas e minúsculas. |
C# ::: LINQ ::: LINQ to Objects |
Como retornar o primeiro elemento de um array de strings em C# usando a função First() do LINQQuantidade de visualizações: 1197 vezes |
|
Nesta dica mostrarei um exemplo bem simples do uso do método First() do LINQ (Language-Integrated Query) do C# para retornar o primeiro elemento de um vetor de strings. É claro que este método funciona com qualquer coleção, mas um exemplo simples nos ajudará a entender melhor o seu funcionamento. Em outras dicas eu aprofundo o uso deste método. Vamos ao código então. Veja:
using System;
using System.Linq;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// vamos construir um vetor de strings
string[] linguagens = {"Java", "Python", "PHP", "Ruby"};
// vamos obter o primeiro elemento do vetor
string primeira = linguagens.First();
// vamos mostrar o resultado
Console.WriteLine("A primeira linguagem é: {0}", primeira);
Console.WriteLine("Pressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: A primeira linguagem é: Java Fique atento ao fato de que o método First() pode atirar uma exceção do tipo InvalidOperation se o array ou coleção estiver vazia ou não incluir nenhum elemento que se encaixe nas condições testadas. Veja o resultado ao chamarmos este método em um vetor vazio: System.InvalidOperationException HResult=0x80131509 Message=Sequence contains no elements Source=System.Linq StackTrace: at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.First[TSource](IEnumerable`1 source) at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 11 |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como ler e processar os dados de um arquivo CSV usando a função fgetcsv() do PHPQuantidade de visualizações: 27174 vezes |
|
Arquivos CSV são arquivos texto cujas linhas possuem valores separados por vírgulas (ou ponto-e-vírgula, dois pontos, etc). As informações contidas em tais arquivos podem ser lidas usando-se a função fgetcsv(). Esta função recebe um ponteiro para um arquivo, o tamanho da maior linha de texto no arquivo (forneça 0 se não quiser ter este limite em seu código) e o caractere de delimitação (no exemplo eu usei ponto-e-vírgula). Observe a estrutura do seguinte arquivo CSV: 23;OSMAR J SILVA;AV. LESTE, 54;GOIANIA;GO 19;MARCOS DE PAULA;RUA L, 523;SÃO PAULO;SP As informações deste arquivo podem ser lidas usando-se o código abaixo:
<?php
// nome do arquivo
$arquivo = 'dados.csv';
// ponteiro para o arquivo
$fp = fopen($arquivo, "r");
// processa os dados do arquivo
while(($dados = fgetcsv($fp, 0, ";")) !== FALSE){
$quant_campos = count($dados);
for($i = 0; $i < $quant_campos; $i++){
echo $dados[$i] . "<br>";
}
echo "<br>";
}
fclose($fp);
?>
Ao executar este código PHP nós teremos o seguinte resultado: 23 OSMAR J SILVA AV. LESTE, 54 GOIANIA GO 19 MARCOS DE PAULA RUA L, 523 SÃO PAULO SP |
PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como embaralhar os elementos de um array em PHP usando a função shuffle() - Vetores e matrizes em PHPQuantidade de visualizações: 13091 vezes |
|
Em algumas situações nós precisamos misturar os elementos de um vetor em PHP, ou seja, embaralhar de forma aleatória os elementos. Para isso nós podemos usar a função shuffle(), que recebe um vetor e o devolve com a ordem dos elementos embaralhada de forma randômica. Veja o exemplo completo:
<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
$nomes = array("Osmar", "Marcos", "Igor", "Gustavo");
// ordem original
for($i = 0; $i < count($nomes); $i++){
echo $nomes[$i] . "<br>";
}
echo "<br>";
// embaralha o vetor
shuffle($nomes);
// ordem embaralhada
for($i = 0; $i < count($nomes); $i++){
echo $nomes[$i] . "<br>";
}
?>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: Osmar Marcos Igor Gustavo Gustavo Osmar Marcos Igor |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercício Resolvido de Java - Usando o laço do...while para pedir ao usuário para informar números inteiros e calcular a quantidade de números positivos, negativos, a soma e a médiaQuantidade de visualizações: 9935 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que usa o laço do...while para ler números inteiros até que o valor lido seja igual a 0. Em seguida mostre a quantidade de valores positivos e negativos, a soma dos valores e a média aritmética (sem incluir o valor 0 na contagem e no cálculo da média). A média deverá ser exibida como um valor de ponto flutuante. Sua saída deverá ser parecida com a mostrada abaixo: Informe um número inteiro (0 para sair): 5 Informe um número inteiro (0 para sair): -4 Informe um número inteiro (0 para sair): 3 Informe um número inteiro (0 para sair): 8 Informe um número inteiro (0 para sair): -2 Informe um número inteiro (0 para sair): 0 Quantidade de números positivos: 3 Quantidade de números negativos: 2 A soma dos números lidos é: 10 A média aritmética é: 2.0 Veja a resolução comentada deste exercício usando Java console:
package exercicios;
import java.util.Scanner;
public class Exercicios {
public static void main(String[] args) {
// vamos fazer a leitura usando a classe Scanner
Scanner entrada = new Scanner(System.in);
// declaração das variáveis
int numero, quantLidos = 0, soma = 0;
int quantPositivos = 0, quantNegativos = 0;
// laço do...while que repetirá até que o usuário informe o valor 0
do {
// lê o primeiro ou próximo número
System.out.print("Informe um número inteiro (0 para sair): ");
numero = Integer.parseInt(entrada.nextLine());
if(numero > 0){ // o número é positivo?
quantPositivos++;
}
else if(numero < 0){ // o número é negativo?
quantNegativos++;
}
// soma este número à soma já existente
soma += numero;
// aumenta a contagem dos números lidos
if(numero != 0){ // não incluir o 0 para sair do programa na contagem
quantLidos++;
}
}
while(numero != 0); // condição de parada do laço
if(quantLidos == 0){
System.out.println("Você não informou nenhum número.");
}
else{
System.out.println("Quantidade de números positivos: " + quantPositivos);
System.out.println("Quantidade de números negativos: " + quantNegativos);
System.out.println("A soma dos números lidos é: " + soma);
System.out.println("A média aritmética é: " + ((soma * 1.0) / quantLidos));
// note a multiplicação de soma por 1.0 para gerar um valor de ponto flutuante
// antes da divisão
}
}
}
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





