390 likes | 567 Views
While. While Condição // comandos End While. Exemplos While. Var contador As Integer contador = 0 While (contador < 10) contador + = 1 console.ConsoleWrite(contador) End While. O que faz este programa?. Var contador As Integer contador = 0 While true contador + = 1
E N D
While While Condição // comandos End While
Exemplos While Var contador AsInteger contador = 0 While (contador < 10) contador += 1 console.ConsoleWrite(contador) End While
O que faz este programa? Var contador AsInteger contador = 0 While true contador += 1 console.ConsoleWrite(contador) End While
Exercicio Disco Voador que anda de um lado para outro...
Exercicio Define disco AsSprite Var posX AsInteger Var direcao AsInteger disco.Load("ufo.gif") disco.MoveTo(0,200) disco.Show() posX = 0 direcao = 1 While (True) posX += 5*direcao If (posX > 500) Or (posX < 0) Then direcao = direcao *-1 End If disco.MoveTo(posX, 200) delay(50) End While
Exercicio E se quisessemos fazer que o disco acelerasse cada vez mais?
Exercicio E se agora houvessem dois discos voadores?
Função Random Muitas 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 Random Com a função acima, como poderiamos gerar números aleatórios reais?
Exercício Implementar 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") Then posX += 5 disco.MoveTo(posX, 200) delay (100) End If End While
For For (Caso inicial) To (Caso Final) [Step k] // Comandos Next
Exemplo For i = 1 To 200 Disco.MoveTo (i, 200) Next For i = 1 To 200 Step 3 Disco.MoveTo (i, 200) Next
Vetores e Matrizes Conceito Matemático
Exemplo Define Meu_Vetor AsInteger [4] Meu_Vetor[1] = 0 Meu_Vetor[4] = 40 Meu_Vetor[2] = 20
Exercício Escreva 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 AsDecimal [ 2, 3 ] Matriz2D [1,1] = 0 Matriz2D [1,2] = 3.1 Matriz2D [1,3] = 2.5 Matriz2D [2,1] = 0.2 Matriz2D [2,2] = 2.1 Matriz2D [2,3] = 7.5
Exercício • Escreva um programa que lê duas matrizes de 13 x 22 e calcula a soma das duas... • (imprima a matriz assim: • 2 21 24 20 • 23 12 11 22 • 4 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.Width Sprite.Height Sprite.X Sprite.Y
Exericio Pré-Pong Fazer uma sprite “quicante”...
Funções Function nome(var1 AsTipo, var2 Astipo) Astipo // Corpo da Função Return [alguma coisa] End Function
Funções – Exemplo Function soma (n1 AsInteger, n2 AsInteger) AsInteger Var result AsInteger 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 Global Program MyNewProgram Function soma (n1 AsInteger, n2 AsInteger) AsInteger Var result AsInteger result = n1 + n2 Return result End Function Method Main() Var v1 AsInteger Var v2 AsInteger v1 = ConsoleReadInt("numero 1: ", True) v2 = ConsoleReadInt ("numero 2: ", True) Console.Write(soma(v1, v2)) End Method End Program
Exemplo de Flags Ler um vetor de números até encontrar o numero 0
Exemplo: Mouse LeftPressed RightPressed MouseX MouseY
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 AsString Var nome2 AsString Var nome3 AsString nome = "esteban" nome2 = "clua" nome3 = nome + nome2
Pergunta Var nome AsString Var nome2 AsString Var nome3 AsString Var numero Asinteger nome = “3" nome2 = “4" nome3 = nome + nome2 // o que dá? Numero = nome + nome2 // O que dá?
Operações com strings Resultado = 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 Telefonica Escreva 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