Você está aqui: Cards de Engenharia Civil - Estruturas de Aço e Madeira |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar o menor valor em um array de inteiros em JavaQuantidade de visualizações: 1862 vezes |
Nesta dica eu mostro como obter o menor valor em um array (vetor) de inteiros. 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 o menor valor
int menor = menor(valores);
System.out.println("O menor valor é: " + menor);
System.exit(0);
}
public static int menor(int[] a){
int min = a[0];
for(int i = 1; i < a.length; i++){
if(a[i] < min){
min = a[i];
}
}
return min;
}
}
Ao executarmos este código nós teremos o seguinte resultado: O menor valor é: 2 |
VB.NET ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de VB.NET - Um laço for que solicita ao usuário 10 números inteiros e mostra o menor e o maior valor informadoQuantidade de visualizações: 777 vezes |
|
Pergunta/Tarefa: Escreva um programa VB.NET que usa o laço for para solicitar ao usuário que informe 10 números inteiros. Em seguida mostre o maior e o menor valor lido. Não é permitido usar vetores ou matrizes (arrays). Sua saída deve ser parecida com: Informe o 1º valor: 5 Informe o 2º valor: 1 Informe o 3º valor: 20 Informe o 4º valor: 6 Informe o 5º valor: 3 Informe o 6º valor: 4 Informe o 7º valor: 7 Informe o 8º valor: 12 Informe o 9º valor: 9 Informe o 10º valor: 8 O maior valor lido foi: 20 O menor valor lido foi: 1 Veja a solução comentada deste exercício usando a linguagem VB.NET:
Imports System
Module Program
Sub Main(args As String())
Dim valor As Integer ' guarda o valor lido
Dim maior, menor As Integer ' variáveis que guardarão
' o maior e o menor valor lido
' vamos pedir ao usuário que informe 10 valores inteiros
For i As Integer = 1 To 10 Step 1
Console.Write("Informe o " & i & "º valor: ")
valor = Integer.Parse(Console.ReadLine())
' esta é a primeira iteração do laço? se for vamos assumir que o
' maior e menor valor lido são o primeiro valor informado
If i = 1 Then
maior = valor
menor = valor
Else ' não é a primeira iteração
' vamos verificar se é maior que o valor atual da variável maior
If valor > maior Then
maior = valor
End If
' vamos verificar se é menor que o valor atual da variável menor
If valor < menor Then
menor = valor
End If
End If
Next
' vamos exibir o maior e o menor valor lido
Console.WriteLine(vbCrLf & "O maior valor lido foi: " & maior)
Console.WriteLine("O menor valor lido foi: " & menor)
Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
|
Python ::: Tkinter GUI Toolkit ::: Entry |
Como setar o foco em uma caixa de texto Entry do Tkinter usando a função focus_set()Quantidade de visualizações: 1705 vezes |
|
Em várias situações durante o processo de programação em Tkinter nós precisamos, via programação, trocar o foco de uma caixa de texto para outra. Isso pode ser feito com o auxílio da função focus_set(). No código abaixo nós temos uma janela Tkinter com duas caixas de texto Entry e um botão Button. Experimente digitar conteúdo nas duas caixas de texto e depois clicar no botão. Você verá que o foco é colocado novamente na primeira caixa de texto. Veja o código Python completo:
# vamos importar o módulo Tkinter
from tkinter import *
from tkinter.ttk import *
# variáveis globais
caixa_texto_1 = None
# método principal
def main():
# acessamos a variável global
global caixa_texto_1
# vamos criar o frame principal da aplicação Tkinter
janela = Tk()
# agora definimos o tamanho da janela
janela.geometry("600x400")
# criamos uma caixa de texto Entry de linha única
caixa_texto_1 = Entry(janela, width=40)
caixa_texto_1.grid(column=0, row=0, sticky=W, padx=15, pady=10)
# criamos uma segunda caixa de texto Entry de linha única
caixa_texto_2 = Entry(janela, width=40)
caixa_texto_2.grid(column=0, row=1, sticky=W, padx=15, pady=0)
# vamos criar um botão Button
btn = Button(janela, text="Definir Foco", width=20, command=definir_foco)
btn.grid(column=0, row=2, sticky=W, padx=15, pady=10)
# entramos no loop da aplicação
janela.mainloop()
# função para definir o foco na primeira caixa de texto
def definir_foco():
# definimos o foco na primeira caixa de texto Entry
caixa_texto_1.focus_set()
if __name__== "__main__":
main()
|
C ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Como usar protótipos de função em CQuantidade de visualizações: 12593 vezes |
Um protótipo de função é uma declaração que define o nome, tipos de parâmetros e tipos de retorno de uma função. Em geral o protótipo de uma função é exigido quando a definição da função não é feita antes do código que efetua uma chamada a ela. Veja um exemplo:
#include <stdio.h>
#include <stdlib.h>
// uma função que retorna a soma de dois inteiros
// fornecidos como argumento
int somar(int a, int b){
return (a + b);
}
int main(int argc, char *argv[]){
// efetua uma chamada à função somar
int res = somar(3, 5);
// exibe o resultado
printf("Soma: %d", res);
puts("\n\n");
system("PAUSE");
return 0;
}
Este código compila e executa normalmente, uma vez que a função somar() foi definida antes da função main(), ou seja, antes da parte do programa que possui uma chamada a ela. Veja agora esta nova versão:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
// efetua uma chamada à função somar
int res = somar(3, 5);
// exibe o resultado
printf("Soma: %d", res);
puts("\n\n");
system("PAUSE");
return 0;
}
// uma função que retorna a soma de dois inteiros
// fornecidos como argumento
int somar(int a, int b){
return (a + b);
}
Aqui temos um problema: a função somar() é definida depois do código contendo uma chamada a ela. No Dev-C++ temos o seguinte erro de compilação: `somar` undeclared (first use this function) A solução para este casos é a criação do protótipo da função. Para a função somar() isso pode ser feito da seguinte forma: // protótipo da função somar() int somar(int, int); Note que não há a necessidade de especificar os nomes dos parâmetros da função, apenas seus tipos. Veja ainda que o protótipo da função é terminado com ponto-e-vírgula e sempre colocado após as instruções de #include. Veja o código completo para um exemplo usando protótipos de funções:
#include <stdio.h>
#include <stdlib.h>
// protótipo da função somar()
int somar(int, int);
int main(int argc, char *argv[]){
// efetua uma chamada à função somar
int res = somar(3, 5);
// exibe o resultado
printf("Soma: %d", res);
puts("\n\n");
system("PAUSE");
return 0;
}
// uma função que retorna a soma de dois inteiros
// fornecidos como argumento
int somar(int a, int b){
return (a + b);
}
|
C# ::: Datas e Horas ::: DateTime |
Como adicionar ou subtrair meses de uma data em C# usando o método AddMonths() da estrutura DateTimeQuantidade de visualizações: 11111 vezes |
|
Em algumas situações nossos códigos precisam adicionar ou subtrair meses de uma data. Isso pode ser feito com o auxílio do método AddMonths() da estrutura DateTime. Este método recebe o número de meses a serem acrescidos ou substraídos da data representada pelo DateTime atual e retorna um novo DateTime com as devidas modificações. Veja um trecho de código no qual adicionamos 3 meses à data atual:
static void Main(string[] args){
// vamos obter a data de hoje
DateTime hoje = DateTime.Now;
// exibe a data de hoje
System.Console.WriteLine("Hoje é {0:d}", hoje);
// vamos adicionar 3 meses à data de hoje
DateTime data_futura = hoje.AddMonths(3);
// exibe a data daqui a três meses
System.Console.WriteLine("Daqui a 3 meses será {0:d}", data_futura);
// pausa o programa
System.Console.Write("\nPressione qualquer tecla para sair...");
Console.ReadKey();
}
É possível também subtrair meses. Para isso só precisamos fornecer um valor negativo para o método AddMonths(). Veja:
static void Main(string[] args){
// vamos obter a data de hoje
DateTime hoje = DateTime.Now;
// exibe a data de hoje
System.Console.WriteLine("Hoje é {0:d}", hoje);
// vamos subtrair 5 meses da data de hoje
DateTime data_passado = hoje.AddMonths(-5);
// exibe a data 5 meses atrás
System.Console.WriteLine("Há 5 meses era {0:d}", data_passado);
// pausa o programa
System.Console.Write("\nPressione qualquer tecla para sair...");
Console.ReadKey();
}
Lembre-se, contudo, que o método AddMonths() pode disparar uma exceção do tipo ArgumentOutOfRangeException se o DateTime resultante for menor que MinValue ou maior que MaxValue. MinValue e MaxValue são os menor e maior valores que um DateTime pode representar. Esta exceção também será disparada se o valor fornecido para o mês for menor que -120.000 ou maior que 120.000. |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
|
GNU Octave - Como calcular o comprimento da hipotenusa em GNU Octave dadas as medidas do cateto oposto e do cateto adjascente |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






