ATPS ETAPA 4
Item 1 . não precisa
Item 2.
Descrição da sugestão de solução sugerida pelo grupo.
Solução sugerida pelo grupo e a utilização de matrizes na estrutura de dados e utilizar o enlace se então para construção do algoritmo, pois teremos que alternar de função matemática ao fim do termino de uma situação com isso devemos ter uma pilha de vetores ou operações matemáticas para cada momento.
Item 3.
Estrutura de dados recomendada
Estrutura escolhida foi matriz que nada mais é que uma pilha de vetores
Passo 2(equipe)
Item 1
Identificar as variáveis. variáveis utilizadas .
N sendo numero de pessoas.
M sendo passo entre cada pessoa.
Item 2
Item 2 descrever o algoritimo em pseudo linguagem
algoritmo Atps etapa 4
// Função :
// Autor :
// Data : 17/11/2014
// Seção de Declarações funcao josephus(numeropessoas,tamanhopasso:inteiro): inteiro var vet: vetor [n1..n100] de inteiro ocorrência,tamanhodopasso : real inicio retorne(josephus(numero pesseoas -1,tamanhopasso)+tamanho passo -1 mod numero pessoas +1 fimse fimfunçao var ocorrencias,numeropessoas,tamanhopasso,indice:inteiro inicio // Seção de Comandos escreval("informe a quantidade de casos desejada") leia(ocorrencia) enquanto (ocorrencia < 1) ou (ocorrencia > 30) faca limpatela escreval("numero de casos invalido") escreval("informe a quantidade de casos desejados entre 1 e 30") leia (ocorrencia) fimenquanto para indice de 1 ate ocorrencia faca escreval("") escreva("digite o numero de pessoas :") leia(numeropessoas) escreva("digite o tamanho do passo entre duas pessoas:") leia(tamanhopasso) escreval("a pessoua que sobrou no circulo foi a de numero:",josephus(numeropessoas,tamanhopasso))
imagens do programa funcionando