Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: GoLang ::: Fundamentos da Linguagem ::: Laços

Como usar o laço for em GoLang - O laço for da linguagem Go

Quantidade de visualizações: 721 vezes
Como todas (ou praticamente todas) as linguagens de programação, a GoLang também possui o seu laço for, ou loop for. Este laço é usado para repetir uma ou mais instruções quando sabemos exatamente quantas vezes essa repetição ocorrerá.

Em Go, o laço for é composto de três partes: inicialização, teste de continuidade e incremento ou decremento da variável de controle. Na parte da inicialização nós declaramos e inicializamos as variáveis que serão usadas dentro da estrutura. O teste de continuidade é a parte na qual verificamos se o laço deverá continuar repetindo ou encerrar. Finalmente, a parte de incremento ou decremento é usada para ajustarmos a variável de controle do laço.

Veja, por exemplo, como escrever um laço for em GoLang que contará de 1 até 10, escrevendo os números na tela:

// pacote principal
package main

// vamos importar o módulo de formatação de
// entrada e saída
import "fmt"

......


Ao executar este código Go nós teremos o seguinte resultado:

1 2 3 4 5 6 7 8 9 10

O laço for da linguagem GoLang nos permite omitir as partes da inicialização e de incremento ou decremento, embora esse tipo de código não seja muito usual.

Veja um trecho de código no qual usamos o laço for da linguagem Go para contar de 10 até 0 (omitindo a parte da inicialização da variável de controle):

// pacote principal
package main

// vamos importar o módulo de formatação de
// entrada e saída
import "fmt"

// esta é a função principal do programa
......


Ao executarmos este código Go nós teremos o seguinte resultado:

10 9 8 7 6 5 4 3 2 1 0

Veja, agora, uma modificação do código acima. Desta vez eu omiti a parte de incremento ou decremento da variável de controle:

// pacote principal
package main

// vamos importar o módulo de formatação de
// entrada e saída
import "fmt"

// esta é a função principal do programa
......


Link para compartilhar na Internet ou com seus amigos:

Python ::: Python para Engenharia ::: Física - Mecânica - Estática

Como calcular o centroide ou centro de gravidade de um triângulo em Python

Quantidade de visualizações: 1203 vezes
O centro de gravidade, ou centroide (centro geométrico), é o ponto no qual a massa de um triângulo se equilibra. Para ajudar a visualizar isso, imagine uma figura triangular suspensa sobre a ponta de um lápis. A figura vai se equilibrar se a ponta do lápis for posicionada em seu centro de gravidade. Encontrar o centroide pode ser necessário em vários projetos e aplicações de engenharia, e pode ser encontrado usando geometria simples.

Veja a seguinte figura:



Nesta figura nós temos os três vértices do triângulo devidamente registrados, assim como o ponto representando seu centroide. Assim, a fórmula do centroide do triângulo é:

\[x_c = \frac{x_1 + x_2 + x_3}{3}\]
\[y_c = \frac{y_1 + y_2 + y_3}{3}\]

Agora vamos ver como calcular o centro de gravidade do triângulo em Python. Para isso nós vamos pedir para o usuário informar as coordenadas dos três vértices do triângulo e, em seguida, vamos mostrar as coordenadas do ponto que representa o centroide. Veja:

# função principal do programa
def main():
  # vamos ler as coordenadas do primeiro vértice
  va_x = float(input("Informe o x do primeiro vértice: "))
  va_y = float(input("Informe o y do primeiro vértice: "))

  # vamos ler as coordenadas do segundo vértice
  vb_x = float(input("Informe o x do segundo vértice: "))
  vb_y = float(input("Informe o y do segundo vértice: "))

  # vamos ler as coordenadas do terceiro vértice
......


Ao executar este código Python nós teremos o seguinte resultado:

Informe o x do primeiro vértice: 3
Informe o y do primeiro vértice: 10
Informe o x do segundo vértice: 12
Informe o y do segundo vértice: 15
Informe o x do terceiro vértice: 14
Informe o y do terceiro vértice: 7
As coordenadas do centroide são: x=9.67; y=10.67


C# ::: Datas e Horas ::: DateTime

Como usar a estrutura DateTime do C# em seus programas

Quantidade de visualizações: 9088 vezes
A estrutura DateTime representa um momento no tempo, geralmente expressado como uma data e hora do dia. O tipo DateTime representa datas e horas com valores na faixa de meia-noite do dia 1º de janeiro de 0001 Anno Domini (Common Era) até as 11:59:59 da noite do dia 31 de dezembro de 9999 A.D. (C.E.).

Os valores de horas são medidos em unidades de 100 nanosegundos chamados de ticks e uma data em particular é o número de ticks desde a meia-noite do dia 1º de janeiro de 0001 A.D (C.E) no calendário Gregoriano (GregorianCalendar). Por exemplo, um valor de tick de 31241376000000000L representa a data 1º de janeiro de 0100 (sexta-feira) à meia-noite. O valor DateTime é sempre expresso no contexto de um calendário explícito ou padrão.

Considerações sobre versões

Em versões do .NET Framework anteriores à 2.0, a estrutura DateTime contém um campo de 64 bits composto de um campo de 2 bits não usados concatenados com um campo privado Ticks, que é um campo sem sinal de 62 bits que contém o número de ticks que representam a data e hora. O valor do campo Ticks pode ser obtido por meio da propriedade Ticks.

A partir do .NET Framework 2.0, a estrutura DateTime contém um campo de 64 bits composto de um campo privado Kind concatenado com o campo Ticks. O campo Kind é um campo de 2 bits que indica se a estrutura DateTime representa uma hora local, uma hora UTC (Coordinated Universal Time) ou um hora em um fuso horário não especificado. O campo Kind é usado quando estamos efetuando conversões de horas entre fuso horários, mas, não é usado para comparações de datas e horas ou aritmética. O valor do campo Kind pode ser obtido por meio da propriedade Kind.

É importante observar que uma alternativa ao uso da estrutura DateTime para se trabalhar com datas e horas em um fuso horário em particular é a estrutura DateTimeOffset. Esta estrutura guarda as informações de data e hora em um campo DateTime privado e o número de minutos pelos quais a data e hora diferem do horário UTC em um campo Int16 privado. Isso torna possível usarmos um valor DateTimeOffset para refletir as horas em um fuso horário em particular, enquanto um valor DateTime pode, sem causar confusão, refletir somente a hora UTC e do fuso horário local.

Valores DateTime

As descrições de valores de horas no tipo DateTime geralmente são expressas usando o padrão Coordinated Universal Time (UTC), que é o nome reconhecido internacionalmente para o Greenwich Mean Time (GMT). O Coordinated Universal Time é a hora de acordo com as medições em longitude de zero graus, ou seja, o ponto de origem UTC. Horários de verão não são aplicáveis ao UTC.

A hora local é relativa a um determinado fuso horário. Um fuso horário está associado à diferença de fuso horário, que é o deslocamento do fuso horário medido em horas a partir do ponto de origem UTC. Além disso, a hora local é opcionalmente afetada pelo horário de verão, que adiciona ou subtrai uma hora à duração do dia. Consequentemente, a hora local é calculada adicionando-se a diferença de fuso horário ao UTC e ajustando o horário de verão se necessário. A diferença de fuso horário no ponto de origem UTC é zero.

A hora UTC é ideal para cálculos, comparações e armazenamento de datas e horas em arquivos. A hora local é apropriada para a exibição em interfaces do usuário em aplicações desktop. Aplicações que são acessadas em diferentes fuso horários (tais com aplicações web) também precisam fornecer meios para a correta adequação a tais fuso horários.

Veja um trecho de código no qual usamos a propriedade Now da estrutura DateTime para exibir a data e hora local no formato longo:

static void Main(string[] args){
  // Data e hora atual
  DateTime agora = DateTime.Now;

  // exibe o resultado
......


O resultado da execução deste código será algo parecido com:

segunda-feira, 23 de fevereiro de 2008 19:54:46.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Escreva um programa Java para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no array

Quantidade de visualizações: 413 vezes
Pergunta/Tarefa:

Dado o seguinte vetor de inteiros:

// vamos declarar e construir um vetor de 8 inteiros
int valores[] = {0, 3, 0, 5, 7, 4, 0, 9};
Escreva um programa Java para mover todos os zeros para o final do vetor, ou seja, para a direita, sem alterar a ordem dos elementos diferentes de zero já presentes no array e sem criar um vetor adicional ou temporário.

Sua saída deverá ser parecida com:

Vetor na ordem original:

0   3   0   5   7   4   0   9   

Vetor com os zeros deslocados para o final:

3   5   7   4   9   0   0   0
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

package exercicio;

public class Exercicio {
  public static void main(String[] args) {
    // vamos declarar e construir um vetor de 8 inteiros
    int valores[] = {0, 3, 0, 5, 7, 4, 0, 9};
    
    // vamos mostrar o vetor na ordem original
    System.out.println("Vetor na ordem original:\n");
    for(int i = 0; i < valores.length; i++){
      System.out.print(valores[i] + "   ");
    }
    
    // vamos inicializar j como 0 para que ele aponte para
    // o primeiro elemento do vetor
    int j = 0;
    
    // agora o laço for percorre todos os elementos do vetor,
    // incrementanto a variável i e deixando o j em 0
......


Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes.


Python ::: Dicas & Truques ::: Strings e Caracteres

Como pesquisar uma substring em uma string usando a função find() da linguagem Python

Quantidade de visualizações: 12088 vezes
Nesta dica mostrarei como podemos usar o método find() do objeto string da linguagem Python para pesquisar uma
substring em uma string. A assinatura dessa função é:

find(substring[, start[, end]])


onde substring é a substring a ser pesquisada e start e end são argumentos opcionais que definem os índices de início e fim da pesquisa.

Se a substring não for encontrada, o valor -1 é retornado. Se for encontrada, o índice do primeiro caractere é retornado.

Veja um exemplo completo do seu uso:

def main():
  frase = "Gosto de Python e JavaScript"

  indice = frase.find("Python")
  if indice != -1:
    print("A palavra foi encontrada no índice", indice)
......


Ao executarmos este código Python nós teremos o seguinte resultado:

A palavra foi encontrada no índice 9.


Java ::: Dicas & Truques ::: Matemática e Estatística

Como converter de binário para decimal usando o método parseInt() da classe Integer da linguagem Java

Quantidade de visualizações: 15365 vezes
Nesta dica eu mostro como podemos usar o método parseInt() da classe Integer do Java para converter um valor binário em um valor decimal. Para isso só precisamos forcecer o valor 2 como segundo argumento para o método parseInt().

Veja o código completo para o exemplo:

package arquivodecodigos;

public class Estudos{
  public static void main(String args[]){
    String binario = "00000110";
     
    // efetua a conversão de binário para
    // decimal
    int decimal = Integer.parseInt(binario, 2);
......


Ao executar este exemplo nós teremos o seguinte resultado:

O valor binário 00000110 convertido para decimal é: 6


Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 15 usuários muito felizes estudando em nosso site.