while while condição // comandos end while. exemplos while var contador as integer contador = 0...

Post on 17-Apr-2015

129 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

WhileWhile Condição

// comandosEnd While

Exemplos WhileVar contador As Integer

contador = 0

While (contador < 10)

contador += 1console.ConsoleWrite(contador)

End While

O que faz este programa?Var contador As Integer

contador = 0

While true

contador += 1console.ConsoleWrite(contador)

End While

ExercicioDisco Voador que anda de um lado para outro...

ExercicioDefine disco As SpriteVar posX As IntegerVar direcao As Integer

disco.Load("ufo.gif")disco.MoveTo(0,200)disco.Show()

posX = 0direcao = 1

While (True)posX += 5*direcaoIf (posX > 500) Or (posX < 0) Then

direcao = direcao * -1End Ifdisco.MoveTo(posX, 200)delay(50)

End While

ExercicioE se quisessemos fazer que o disco acelerasse cada vez mais?

ExercicioE se agora houvessem dois discos voadores?

Função RandomMuitas vezes precisaremos de números aleatórios para diversas operações:

Valor = Random (min, max)

Onde Valor, min e max são inteiros

Função RandomCom a função acima, como poderiamos gerar números aleatórios reais?

ExercícioImplementar o jogo da adivinhação:

O computador pensa num número e pergunta ao jogador. Se o jogador disser um número maior, o computador responde “o número que pensei é menor”, se o número que o jogador chutou for menor o computador responde “o número que pensei é maior” e se o jogador acertar o computador diz “Acertou em X jogadas”, onde X é o número de tentativas.

Super Exercicio

A Função Iskeydown(“[tecla]”)

Retorna verdadeiro caso a [tecla] tenha sido pressionada.

Faça o disco se mover nas 4 direções, com as teclas a, s, w, z

Super Exercício

While (True)

If Iskeydown("a") ThenposX += 5disco.MoveTo(posX, 200)delay (100)

End If

End While

ForFor (Caso inicial) To (Caso Final) [Step k]

// Comandos

Next

ExemploFor i = 1 To 200

Disco.MoveTo (i, 200)Next

For i = 1 To 200 Step 3Disco.MoveTo (i, 200)

Next

Vetores e MatrizesConceito Matemático

ExemploDefine Meu_Vetor As Integer [4]

Meu_Vetor[1] = 0Meu_Vetor[4] = 40Meu_Vetor[2] = 20

ExercícioEscreva um programa (usando for) que lê 2 vetores e imprime o produto escalar deles.

Lembrando:

V1 . V2 = (v1.x*v2.x) + (v1.y*v2.y) + (v1.z*v2.z)

V1 . V2 = (v1[1]*v2[1]) + ... + (v1[n] * v2[n])

Agora Matrizes...Define Matriz2D As Decimal [ 2, 3 ]

Matriz2D [1,1] = 0Matriz2D [1,2] = 3.1Matriz2D [1,3] = 2.5Matriz2D [2,1] = 0.2Matriz2D [2,2] = 2.1Matriz2D [2,3] = 7.5

ExercícioEscreva um programa que lê duas matrizes de 13 x 22 e calcula a soma das duas...(imprima a matriz assim:

12 21 24 20223 12 11 224 2 2 3 1...

Joysticks...

If joysticks[1].IsButtonPressed(1) Then Console.WriteLine(“pressionou botao 1”)End If

PONG!

ScreenWidth() // Retorna a resolução horizontal da tela

ScreenHeight() // Retorna a resolução vertical da tela

PONG!!!

Mais alguns atributos do objeto Sprite:

Sprite.WidthSprite.HeightSprite.XSprite.Y

Exericio Pré-Pong

Fazer uma sprite “quicante”...

Como Encontrar Insetos no Programa

Funções

Function nome(var1 As Tipo, var2 As tipo) As tipo

// Corpo da Função

Return [alguma coisa]

End Function

Funções – Exemplo

Function soma (n1 As Integer, n2 As Integer) As Integer

Var result As Integer

result = n1 + n2

Return result

End Function

Funções – Exercicio

A série de Taylor que calcula o seno de um número é dada por:

Escreva uma função que calcula o seno de um número permitindo que o usuário defina a precisão desejada (parâmetro n_total)

Variável Local x Variável GlobalProgram MyNewProgram

Function soma (n1 As Integer, n2 As Integer) As Integer

Var result As Integerresult = n1 + n2Return result

End Function

Method Main()

Var v1 As IntegerVar v2 As Integer

v1 = ConsoleReadInt("numero 1: ", True)v2 = ConsoleReadInt ("numero 2: ", True)

Console.Write(soma(v1, v2))

End Method

End Program

Discussão – Quando usar Funções?

Flags...

Exemplo de Flags

Ler um vetor de números até encontrar o numero 0

Exemplo: MouseLeftPressedRightPressedMouseXMouseY

Fazer um curso de mouse

Fazer uma nave que atira...A tecla -> e <- movem horizontalmente a nave e os clicks do mouse atiram. Atencao: o tiro e da nave devem ter movimentos independentes…

O tipo String...

Var nome As StringVar nome2 As StringVar nome3 As String

nome = "esteban"

nome2 = "clua"

nome3 = nome + nome2

Pergunta

Var nome As StringVar nome2 As StringVar nome3 As String

Var numero As integer

nome = “3"

nome2 = “4"

nome3 = nome + nome2 // o que dá?

Numero = nome + nome2 // O que dá?

Operações com stringsResultado = Insert (string1, “texto a ser enxertado”, posicao)

Numero = Length (string1)

Posicao = IndexOf (string1, “padrão”, posicao_inicial)

Resultado = SubString (string1, posicao_inicial, tamanho)

Resultado = ToLowerCase (string1)

Booleano = StartWith(string1, string_teste)

Booleano = EndsWith (string1, string_teste)

Resposta_inteira = Compare (string1, string2, true/false)// 0 se forem iguais, - 1 se string1 < string2, 1 se string1 > string2. True/False para considerar ou não maiusculas/minusculas

Exercicio – Agenda TelefonicaEscreva um programa que pergunta quantos amigos você tem. Depois le este numero de nomes e o telefone de cada um. Finalmente o programa pergunta o nome de alguem e irá procurar o numero de telefone que o usuário deseja.

Exercicio (dificil)Escreva uma função que conta quantos espaços em branco tem num texto

top related