Pplware

Vamos Programar? – Introdução à Programação #24

Desafio 2

O mundo está constantemente a evoluir: desde o mais pequeno inseto à espécie Humana. Dentro das palavras que mais ouvimos atualmente, incluímos “evolução”, “mudança”, “futuro”.

A tecnologia tem revolucionado o mundo das mais diversas formas: do mais simples aparelho para medir o tempo ao mais complexo acelerador de partículas. Se quer entrar no mundo da tecnologia e deixar a sua marca, pode começar aqui.

Este é o penúltimo artigo da saga “Introdução à Programação”, onde encontra o último desafio final desta série: a criação de um jogo de batalha naval.

No jogo de Batalha Naval a construir são pedidas algumas metas diferentes relativamente às regras reais do jogo. Ora vejamos.

Regras Base

Objetivo 1

Construir um tabuleiro de 5 linhas por 9 colunas utilizando o sistema de arrays. Todas as posições do array devem ser do tipo inteiro. Por padrão, o valor de cada posição deve ser -1. Temos os seguintes valores:

Objetivo 2

Devem existir dois modos: jogar contra o computador e jogar contra um amigo.

As diferenças entre os dois modos é que no primeiro, jogar contra um computador, este deve colocar os seus navios em locais aleatórios e fazer jogadas aleatórias.

Quando se joga com um amigo, deve-se ter em atenção o conteúdo que aparece na linha de comandos de forma a que o jogador A não veja as posições colocadas pelo jogador B.

Dicas

Para limpar o ecrã, não utilize as funções do sistema. Ao invés imprima uma boa quantidade de linhas novas no ecrã.

Se está a pensar em criar uma função que crie os tabuleiros, lembre-se que estas não podem retornar arrays, mas podem retornar apontadores. Pesquise sobre a função malloc.

A criação de apontadores para apontadores também poderá ser útil e é feita através do operador ** (duplo asterisco).

Atualização: A proposta de resolução pode ser encontrada aqui.


Mais uma vez, gostávamos de saber a sua opinião. Caso tenha alguma dúvida, pode sempre utilizar os comentários para colocar a questão. Caso o faça,  pedimos que utilize a keyword [DUVIDA] no início do seu comentários.

Resoluções de exercícios.

Esta saga

Henrique Dias

Mais episódios:  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13][12] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23][24]

Exit mobile version