• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

jorijo

Movimento aleatorio

3 mensagens neste tópico

to a tentar criar um movimento aleatorio na horizontal dum caracter usando a funcao rand(), so q n consigo controlar a velocidade do movimento.

to a fzer uma recriacao do velhinho jogo frogger e isto seria pa fzer o movimento dos carros... ate agr so consigo fzer o movimento horizontal mas n eh aleatorio. se alguem puder ajudar agradecia :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O exmplo que se segue vai imprimir aleatoriamente valores entre 0-24 de um em um segundo.

Espero que o exemplo te seja util.

#include <stdio.h>
#include <stdlib.h> // rand
#include <time.h> //para o sleep(unsigned int) // numero de milisegundo que queres esperar

int main(int argc, char *argv[])
{
  while(1){
    printf("Valor aleatorio: %d\n", rand()%25 );          // imprime e calcula o valor rand()%25 devolve um valor inteiro entre 0 e 24
    sleep(1000); // adormece por 1 segundo (=1000milis)
    if( kbhit() ) break;           // caso uma tecla seja pressionada aborta
  }
  system("PAUSE");	
  return 0;
}

Usei o Dev-C++ para escrever o codigo, espero que te seja util.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

exprimenta utilizar os valores "aleatórios" que obtens não para defenir a posição do caracter, mas a direcção do movimento. P exemplo, utilizando a ideia unsignedint, podias associar os valores de 0-11 a um deslocamento para a direita, os valores de 13-24 deslocamento para a direita, e o restante, o 12, para se manter no mesmo lugar.

Espero ter ajudado  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora