ajuda trabalho campo minado pascal utilizando matriz 10x10

1. ajuda trabalho campo minado pascal utilizando matriz 10x10

Gustavo Garcia
gustavorog8

(usa Outra)

Enviado em 29/07/2014 - 23:31h

Program campo_minado;

uses crt;

var mat_a:array[1..20,1..20] of integer;
jogador,literal:string;
mat_b:array[1..20,1..20] of integer;
x,y:integer;
linha,coluna,linha_v,coluna_v:integer;
cont_bomba,pos_mat,total_bomba,total_sem_bomba:integer;
sn_camp:integer;
jogada:string;

Begin
total_bomba:=0;
pos_mat:=0;
for linha:=1 to 20 do
for coluna:=1 to 20 do
repeat
writeln('informe o elemento (*) para local com bomba e (-) para local sem bomba');
read(mat_a[linha,coluna]);
until (mat_a[linha,coluna]= '*' or mat_a[linha,coluna]= '-');
pos_matpos_mat([+1]);
end;
end;

for linha:=1 to 20 do
for coluna:=1 to 20 do
cont_bomba:=0;
for linha_v:= linha-1 to linha+1 do
for coluna_v:=coluna-1 to coluna+1 do
if (linha_v > 0) and (linha_v < 21) and (coluna_v > 0) and (coluna_v < 21) and (linha_v <> linha) and (coluna_v <> coluna) and (mat_a[linha_v,coluna_v]= '*') then
total_bombatotal_bomba([+1]);
mat_b[linha,coluna]:=cont_bomba;
total_sem_bombapos_mat_total_bomba;
jogada:='começar';
while (jogada <> 'terminar') do
repeat
writeln('informe a posiçao x,y para sua jogada');
repeat
writeln('informe a posiçao para x(linha)');
read(x);
until (x>1) and (x<21);
repeat
writeln('informe a posiçao para y(coluna)');
read(y);
until (y>1) and (y<21);
for linha:=1 to 20 do
for coluna:=1 to 20 do
if(x=linha) and (y=coluna) then
if mat_a[linha,coluna]= '*' then
begin
jogada:='terminar';
end;
writeln('bomba voce perdeu o jogo');

mat_a[linha,coluna]:='O';
jogada:='começar';
writeln('jogada ja feita antes,por favor escolha outra posiçao');
mat_a[linha,coluna]:='-';
writeln('jogado feita');
writeln('esta posicao possui',mat_b[linha,coluna],'bomba(s) vizinha(s)');
mat_a[linha,coluna]:='O';
sn_camptotal_sem_bomba([-1]);
jogada:='comecar';
if sn_camp = 0 then
jogada:='terminar';
writeln('parabens,voce foi o campeao do jogo');
End.




  


2. Re: ajuda trabalho campo minado pascal utilizando matriz 10x10

Igor Morais
igormorais

(usa Gentoo)

Enviado em 30/07/2014 - 08:42h

Qual a sua dúvida ?


3. Re: ajuda trabalho campo minado pascal utilizando matriz 10x10

Ton Melo
IZhaq_melo

(usa FreeBSD)

Enviado em 30/07/2014 - 09:02h

gustavorog8 escreveu:

Program campo_minado;

uses crt;

var mat_a:array[1..20,1..20] of integer;
jogador,literal:string;
mat_b:array[1..20,1..20] of integer;
x,y:integer;
linha,coluna,linha_v,coluna_v:integer;
cont_bomba,pos_mat,total_bomba,total_sem_bomba:integer;
sn_camp:integer;
jogada:string;

Begin
total_bomba:=0;
pos_mat:=0;
for linha:=1 to 20 do
for coluna:=1 to 20 do
repeat
writeln('informe o elemento (*) para local com bomba e (-) para local sem bomba');
read(mat_a[linha,coluna]);
until (mat_a[linha,coluna]= '*' or mat_a[linha,coluna]= '-');
pos_matpos_mat([+1]);
end;
end;

for linha:=1 to 20 do
for coluna:=1 to 20 do
cont_bomba:=0;
for linha_v:= linha-1 to linha+1 do
for coluna_v:=coluna-1 to coluna+1 do
if (linha_v > 0) and (linha_v < 21) and (coluna_v > 0) and (coluna_v < 21) and (linha_v <> linha) and (coluna_v <> coluna) and (mat_a[linha_v,coluna_v]= '*') then
total_bombatotal_bomba([+1]);
mat_b[linha,coluna]:=cont_bomba;
total_sem_bombapos_mat_total_bomba;
jogada:='começar';
while (jogada <> 'terminar') do
repeat
writeln('informe a posiçao x,y para sua jogada');
repeat
writeln('informe a posiçao para x(linha)');
read(x);
until (x>1) and (x<21);
repeat
writeln('informe a posiçao para y(coluna)');
read(y);
until (y>1) and (y<21);
for linha:=1 to 20 do
for coluna:=1 to 20 do
if(x=linha) and (y=coluna) then
if mat_a[linha,coluna]= '*' then
begin
jogada:='terminar';
end;
writeln('bomba voce perdeu o jogo');

mat_a[linha,coluna]:='O';
jogada:='começar';
writeln('jogada ja feita antes,por favor escolha outra posiçao');
mat_a[linha,coluna]:='-';
writeln('jogado feita');
writeln('esta posicao possui',mat_b[linha,coluna],'bomba(s) vizinha(s)');
mat_a[linha,coluna]:='O';
sn_camptotal_sem_bomba([-1]);
jogada:='comecar';
if sn_camp = 0 then
jogada:='terminar';
writeln('parabens,voce foi o campeao do jogo');
End.



faça um artigo para esse post.


4. Re: ajuda trabalho campo minado pascal utilizando matriz 10x10

Thiago Henrique Hüpner
Thihup

(usa Manjaro Linux)

Enviado em 30/07/2014 - 09:34h

IZhaq_melo escreveu:

gustavorog8 escreveu:

Program campo_minado;

uses crt;

var mat_a:array[1..20,1..20] of integer;
jogador,literal:string;
mat_b:array[1..20,1..20] of integer;
x,y:integer;
linha,coluna,linha_v,coluna_v:integer;
cont_bomba,pos_mat,total_bomba,total_sem_bomba:integer;
sn_camp:integer;
jogada:string;

Begin
total_bomba:=0;
pos_mat:=0;
for linha:=1 to 20 do
for coluna:=1 to 20 do
repeat
writeln('informe o elemento (*) para local com bomba e (-) para local sem bomba');
read(mat_a[linha,coluna]);
until (mat_a[linha,coluna]= '*' or mat_a[linha,coluna]= '-');
pos_matpos_mat([+1]);
end;
end;

for linha:=1 to 20 do
for coluna:=1 to 20 do
cont_bomba:=0;
for linha_v:= linha-1 to linha+1 do
for coluna_v:=coluna-1 to coluna+1 do
if (linha_v > 0) and (linha_v < 21) and (coluna_v > 0) and (coluna_v < 21) and (linha_v <> linha) and (coluna_v <> coluna) and (mat_a[linha_v,coluna_v]= '*') then
total_bombatotal_bomba([+1]);
mat_b[linha,coluna]:=cont_bomba;
total_sem_bombapos_mat_total_bomba;
jogada:='começar';
while (jogada <> 'terminar') do
repeat
writeln('informe a posiçao x,y para sua jogada');
repeat
writeln('informe a posiçao para x(linha)');
read(x);
until (x>1) and (x<21);
repeat
writeln('informe a posiçao para y(coluna)');
read(y);
until (y>1) and (y<21);
for linha:=1 to 20 do
for coluna:=1 to 20 do
if(x=linha) and (y=coluna) then
if mat_a[linha,coluna]= '*' then
begin
jogada:='terminar';
end;
writeln('bomba voce perdeu o jogo');

mat_a[linha,coluna]:='O';
jogada:='começar';
writeln('jogada ja feita antes,por favor escolha outra posiçao');
mat_a[linha,coluna]:='-';
writeln('jogado feita');
writeln('esta posicao possui',mat_b[linha,coluna],'bomba(s) vizinha(s)');
mat_a[linha,coluna]:='O';
sn_camptotal_sem_bomba([-1]);
jogada:='comecar';
if sn_camp = 0 then
jogada:='terminar';
writeln('parabens,voce foi o campeao do jogo');
End.



faça um artigo para esse post.



Artigo ? Isso seria um absurdo,teria que ser na categoria scripts ou em ultimos casos colocar como dica

T+



5. Re: ajuda trabalho campo minado pascal utilizando matriz 10x10

Ton Melo
IZhaq_melo

(usa FreeBSD)

Enviado em 30/07/2014 - 09:45h


Artigo ? Isso seria um absurdo,teria que ser na categoria scripts ou em ultimos casos colocar como dica
[quote]

acho ingenua a sua sugestão,

vejo que se o VOL fosse uma empresa voce estaria certo... porém aqui tudo é lerdo os moderadores não vivem só pro site.

por fim.. a possibilidade alguém ver o que esse cara fez é maior com artigo.

ja com que voce disse é quase nulo, afinal quantas pessoas voce conhece que usam 'dicas' ou 'scripts' do VOL??

admiro o seu pensamento virtuoso porém não é assim que funciona.
se voce fizer uma procura adequada aqui no VOL talvez encontre tutoriais de como agilizar o processo de aprovação de artigos,
eu até queria mas não encontrei nada parecido com 'DICAS' OU 'SCRITPS'

[quote]
- Welcome to the earth - Roland Emmerich ( 1996 )








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts