Instituto de Computação da UNICAMP

Disciplina MC102: Primeiro Semestre de 2010

Laboratório Nº 07

Docente: Mariana Piquet Dias
Monitor: Douglas Oliveira Santos

Prazo de entrega: 10/05/2010

Campo Minado é um jogo de computador onde o objetivo é limpar um campo minado de tamanho MxN sem detonar as minas. Para ajudar, o jogo mostra um número em um quadrado que diz para o jogador a quantidade de minas adjacente aquele quadrado. Por exemplo, suponha o seguinte campo 4x4 com 2 minas (que são representadas pelo caracter ' * '):

*...
....
.*..
....
Para representar o mesmo campo com o número de minas adjacentes, seria da seguinte forma:
*100
2210
1*10
1110

Faça um programa que receba um campo minado com suas respectivas minas e devolva, na saída padrão, a quatidade de minas adjacentes. Seu programa deve conter, obrigatoriamente, uma função para calcular quantas bombas existem ao redor de uma posição i x j qualquer.


Entrada:

A primeira linha consiste em 2 inteiros m (0 < m ≤ 100) e n (0 < n ≤ 100) que representa o número de linhas e colunas do campo, respectivamente, ou seja as dimensões do campo. As próximas m linhas contém exatamente n caracteres representando o campo. Cada quadrado sem mina é representado pelo caracter ' . ' (ponto) e cada mina é representada pelo caracter ' * ' (asterisco).
4 4
*...
....
.*..
....

Saída:

A saída deve conter o campo com os caracteres ' . ' substituído pelo número de minas adjacentes aquele quadrado.
*100
2210
1*10
1110

Exemplo:
3 5
**...
.....
.*...
**100
33200
1*100

Observações:


28/abril/2010