Você está aqui: Teste de Conhecimento em Engenharia Civil - Materiais de Construção |
|
![]() |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como inverter o conteúdo de uma string C# usando as funções ToCharArray() e Reverse()Quantidade de visualizações: 16035 vezes |
Nesta dica mostrarei como podemos tirar proveito do método ToCharArray() da classe String e do método Reverse() da classe Array do C# para inverter a ordem dos caracteres de uma palavra, frase ou texto. Note que criei um método InverterString() que recebe uma string e a devolve invertida. Veja o código completo para o exemplo: using System; namespace Estudos { class Program { static void Main(string[] args) { string frase = "Gosto de C# e Java"; Console.WriteLine("String original: " + frase); // inverte o conteúdo frase = InverterString(frase); Console.WriteLine("String invertida: " + frase); Console.WriteLine("Pressione uma tecla para sair..."); Console.ReadKey(); } static string InverterString(string str) { char[] arrChar = str.ToCharArray(); Array.Reverse(arrChar); string invertida = new String(arrChar); return invertida; } } } Ao executar este código nós teremos o seguinte resultado: String original: Gosto de C# e Java String invertida: avaJ e #C ed otsoG |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de C - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 2389 vezes |
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa C que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando C: #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]){ setlocale(LC_ALL,""); // para acentos do português int lado_a, lado_b, lado_c; // vamos ler o primeiro lado do triângulo printf("Informe o primeiro lado do triângulo: "); scanf("%d", &lado_a); // vamos ler o segundo lado do triângulo printf("Informe o segundo lado do triângulo: "); scanf("%d", &lado_b); // vamos ler o terceiro lado do triângulo printf("Informe o terceiro lado do triângulo: "); scanf("%d", &lado_c); // os lados informados formam um triângulo? if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c)) && (lado_c < (lado_a + lado_b))){ // é um triângulo equilátero (todos os lados iguais)? if((lado_a == lado_b) && (lado_b == lado_c)){ printf("\nO triângulo é equilátero\n"); } else{ // é isósceles (dois lados iguais e um diferente)? if((lado_a == lado_b) || (lado_a == lado_c) || (lado_c == lado_b)){ printf("\nO triângulo é isósceles\n"); } else{ // é escaleno printf("\nO triângulo é escaleno\n"); } } } else{ printf("\nOs lados informados não formam um triângulo.\n"); } printf("\n\n"); system("pause"); return 0; } |
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como somar os valores dos elementos de um vetor de inteiros em JavaQuantidade de visualizações: 27011 vezes |
Nesta dica eu mostro como podemos usar um laço for para obter a soma dos valores dos elementos de um vetor (ou matriz) de inteiros em Java. Veja que aqui eu criei um método que recebe o vetor e retorna um valor int contendo a soma de todos os elementos. Veja o código completo para o exemplo: package arquivodecodigos; public class Estudos{ public static void main(String[] args){ int[] valores = new int[5]; // inicializa os elementos do array valores[0] = 23; valores[1] = 65; valores[2] = 2; valores[3] = 87; valores[4] = 34; // obtém a soma int soma = soma(valores); System.out.println("A soma dos valores é: " + soma); System.exit(0); } public static int soma(int[] a){ int total = 0; for(int i = 0; i < a.length; i++){ total += a[i]; } return total; } } Ao executarmos este código nós teremos o seguinte resultado: A soma dos valores é: 211 |
C++ ::: Dicas & Truques ::: Arquivos e Diretórios |
Como excluir um diretório em C++ usando a função rmdir()Quantidade de visualizações: 8477 vezes |
Em algumas situações nossos códigos C++ precisam excluir diretórios. Isso pode ser feito com o auxílio da função _rmdir() ou rmdir(), disponível no header direct.h (trazido da linguagem C). Veja a assinatura desta função:int _rmdir(const char *pathname); a) ENOTEMPTY - Directory not empty - O diretório não está vazio e portanto não pode ser excluído; b) ENOENT - No such file or directory - O caminho do diretório é inválido; c) EACCESS - Acesso negado - Algum outro programa está usando este diretório e mantém controle sobre o mesmo. Veja um trecho de código C++ no qual excluímos um diretório: #include <iostream> #include <direct.h> using namespace std; int main(int argc, char *argv[]){ // vamos excluir este diretório char diretorio[] = "C:\\Dev-Cpp\\estudos"; // vamos testar se houve erro na exclusão do diretório if(rmdir(diretorio) == -1){ cout << "Erro: " << strerror(errno) << endl; } else{ cout << "Diretório excluído com sucesso" << endl; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } É possível usar a versão Unicode de _rmdir(), ou rmdir(). O método _wrmdir(), também presente em direct.h é útil quando precisamos internacionalizar nossas aplicações. Veja o exemplo: #include <iostream> #include <direct.h> using namespace std; int main(int argc, char *argv[]){ // vamos excluir este diretório wchar_t diretorio[] = L"C:\\Dev-Cpp\\estudos"; // vamos testar se houve erro na exclusão do diretório if(_wrmdir(diretorio) == -1){ cout << "Erro: " << strerror(errno) << endl; } else{ cout << "Diretório excluído com sucesso" << endl; } system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } |
PHP ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação Orientada a Objetos em PHP - Como passar um objeto de uma classe para uma função PHPQuantidade de visualizações: 8501 vezes |
Em algumas situações precisamos fornecer um objeto de uma classe para um método de outra classe ou mesmo uma simples função PHP. Nesta dica eu mostro como isso pode ser feito. Note que, ao receber o objeto da classe no método ou função, todas as alterações feitas no objeto serão refletidas no objeto original, ou seja, objetos de classe são automaticamente passados por referência em PHP. Eis o código: <?php // classe Cliente com duas variáveis privadas e seus // correspondentes métodos mutatórios e acessórios class Cliente{ private $nome; private $email; public function setNome($nome){ $this->nome = $nome; } public function getNome(){ return $this->nome; } public function setEmail($email){ $this->email = $email; } public function getEmail(){ return $this->email; } } // vamos criar um novo objeto da classe Cliente $c = new Cliente; $c->setNome("Osmar J. Silva"); $c->setEmail("osmar@arquivodecodigos.com.br"); // vamos agora passar este objeto para uma função PHP imprimirCliente($c); // e aqui está a função que recebe o objeto da classe Cliente // e exibe o valor de suas variáveis function imprimirCliente($cliente){ echo "Nome: " . $cliente->getNome() . "<br> E-Mail: " . $cliente->getEmail(); } ?> Ao executar este código teremos o seguinte resultado: Nome: Osmar J. Silva E-Mail: osmar@arquivodecodigos.com.br |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |