Fundamentos de rede
Algoritmo e Programação em
Arrays Multidimensionais
Prof. Márcio Garcia Martins ensinoonline.info@gmail.com ramal: 1659
Apresentação Geral Contato: e-mail: ensinoonline.info@gmail.com
Site da disciplina www.ensinoonline.info Curso: Algoritmos e Programação em C++ Usuário: número de matrícula ex:1234567 Senha: AlgPro2141!
Trocar a senha é o primeiro passo ao acessar o site.
Márcio Martins
2
1
31/03/2013
Como sortear um número?
Problema complexo em computação
Geração de números pseudo-aleatórios Por que pseudo? Aleatório de verdade não obedece a nenhum padrão ou função pré-estabelecida Como codificar isso num algoritmo?
Márcio Martins
3
Como sortear um número?
C/C++
Inicialização por uma semente Função vai gerando números, iniciando pela semente, no intervalo de 0 e RAND_MAX No Visual Studio, o tamanho de RAND_MAX é 32.767 (máximo de positivos inteiros em 16 bits) Essa função sempre vai gerar a mesma seqüência de números de acordo com a semente
Márcio Martins
4
2
31/03/2013
Como sortear um número?
Uma maneira comum de gerar números aleatórios, sem precisar pensar uma semente cada vez, é pegando o tempo do sistema Para produzir inteiros no invervalo de 0 a n, utilizamos o operador módulo (%) com o rand() rand() % n
Para determinar um intervalo de valores, usamos fatores de escalonamento e adicionamos o valor x que desejamos ser o início do intervalo rand() % n + x
Márcio Martins
5
Como sortear um número?
Exemplo: jogar um dado (1 a 6)
Márcio Martins
6
3
31/03/2013
EXERCÍCIO
Faça um programa que simule um “dado virtual”. O programa pede ao usuário digitar o número de vezes que o dado será jogado e deve imprimir, para cada vez, a mensagem “O valor sorteado foi” seguido do número sorteado.
Márcio Martins
7
Uso de flags
São valores que determinamos para indicar um “final de entrada de dados”
Por exemplo, um programa que deve ler notas de alunos até que o usuário