perez 1 Denunciar mensagem Publicado 28 de Maio de 2010 Boas, na ultima aula de LP, começamos a fazer uns quadrados com o gotoxy e chr e isso, e eu dei a ideia (má ideia ) de fazermos uma batalha naval, e o stor achou engraçado... até agora já escrevi a maior parte do "grafismo" do jogo, mas estou com uma duvida em relação à parte lógica, como posso fazer para o "pc" inserir os seus barcos automaticamente e como posso fazer o "pc" tentar acertar nos meus barcos. Até agora tenho isto: Program batalhanaval; uses crt; var x,y,a,cordx,cordy,opx:Integer; opy:String[1]; Begin ClrScr; {Desenhar} {1º quadrado} {Linhas horizontais} For x:= 6 to 34 do Begin Gotoxy(x,2); WriteLn(chr(196)); Gotoxy(x,4); WriteLn(chr(196)); Gotoxy(x,6); WriteLn(chr(196)); Gotoxy(x,8); WriteLn(chr(196)); Gotoxy(x,10); WriteLn(chr(196)); Gotoxy(x,12); WriteLn(chr(196)); Gotoxy(x,14); WriteLn(chr(196)); Gotoxy(x,16); WriteLn(chr(196)); Gotoxy(x,18); WriteLn(chr(196)); Gotoxy(x,20); WriteLn(chr(196)); Gotoxy(x,22); WriteLn(chr(196)); End; {Linhas verticais} For x:= 3 to 21 do Begin Gotoxy(5,x); WriteLn(chr(179)); Gotoxy(8,x); WriteLn(chr(179)); Gotoxy(11,x); WriteLn(chr(179)); Gotoxy(14,x); WriteLn(chr(179)); Gotoxy(17,x); WriteLn(chr(179)); Gotoxy(20,x); WriteLn(chr(179)); Gotoxy(23,x); WriteLn(chr(179)); Gotoxy(26,x); WriteLn(chr(179)); Gotoxy(29,x); WriteLn(chr(179)); Gotoxy(32,x); WriteLn(chr(179)); Gotoxy(35,x); WriteLn(chr(179)); End; {cruzes} y:=8; For x:= 1 to 9 do Begin Gotoxy(y,4); WriteLn(chr(197)); Gotoxy(y,6); WriteLn(chr(197)); Gotoxy(y,8); WriteLn(chr(197)); Gotoxy(y,10); WriteLn(chr(197)); Gotoxy(y,12); WriteLn(chr(197)); Gotoxy(y,14); WriteLn(chr(197)); Gotoxy(y,16); WriteLn(chr(197)); Gotoxy(y,18); WriteLn(chr(197)); Gotoxy(y,20); WriteLn(chr(197)); y:=y+3; End; {Cantos} Gotoxy(5,2); Write(chr(218)); Gotoxy(5,22); Write(chr(192)); Gotoxy(35,2); Write(chr(191)); Gotoxy(35,22); Write(chr(217)); {T canto} y:=8; For x:= 1 to 9 do Begin Gotoxy(y,2); WriteLn(chr(194)); Gotoxy(y,22); WriteLn(chr(193)); y:=y+3; End; y:=4; For x:= 1 to 9 do Begin Gotoxy(5,y); WriteLn(chr(195)); Gotoxy(35,y); WriteLn(chr(180)); y:=y+2; End; {Coordenadas numeros} y:=6; a:=49; For x:= 1 to 9 do Begin Gotoxy(y,1); WriteLn(chr(a)); Gotoxy(33,1); WriteLn('10'); y:=y+3; a:=a+1; End; {Coordenadas letras} y:=3; a:=65; For x:= 1 to 9 do Begin Gotoxy(3,y); WriteLn(chr(a)); Gotoxy(3,21); WriteLn('J'); y:=y+2; a:=a+1; End; {2º quadrado} {Linhas horizontais} For x:= 46 to 74 do Begin Gotoxy(x,2); WriteLn(chr(196)); Gotoxy(x,4); WriteLn(chr(196)); Gotoxy(x,6); WriteLn(chr(196)); Gotoxy(x,8); WriteLn(chr(196)); Gotoxy(x,10); WriteLn(chr(196)); Gotoxy(x,12); WriteLn(chr(196)); Gotoxy(x,14); WriteLn(chr(196)); Gotoxy(x,16); WriteLn(chr(196)); Gotoxy(x,18); WriteLn(chr(196)); Gotoxy(x,20); WriteLn(chr(196)); Gotoxy(x,22); WriteLn(chr(196)); End; {Linhas verticais} For x:= 3 to 21 do Begin Gotoxy(45,x); WriteLn(chr(179)); Gotoxy(48,x); WriteLn(chr(179)); Gotoxy(51,x); WriteLn(chr(179)); Gotoxy(54,x); WriteLn(chr(179)); Gotoxy(57,x); WriteLn(chr(179)); Gotoxy(60,x); WriteLn(chr(179)); Gotoxy(63,x); WriteLn(chr(179)); Gotoxy(66,x); WriteLn(chr(179)); Gotoxy(69,x); WriteLn(chr(179)); Gotoxy(72,x); WriteLn(chr(179)); Gotoxy(75,x); WriteLn(chr(179)); End; {cruzes} y:=8; For x:= 1 to 9 do Begin Gotoxy(y+40,4); WriteLn(chr(197)); Gotoxy(y+40,6); WriteLn(chr(197)); Gotoxy(y+40,8); WriteLn(chr(197)); Gotoxy(y+40,10); WriteLn(chr(197)); Gotoxy(y+40,12); WriteLn(chr(197)); Gotoxy(y+40,14); WriteLn(chr(197)); Gotoxy(y+40,16); WriteLn(chr(197)); Gotoxy(y+40,18); WriteLn(chr(197)); Gotoxy(y+40,20); WriteLn(chr(197)); y:=y+3; End; {Cantos} Gotoxy(45,2); Write(chr(218)); Gotoxy(45,22); Write(chr(192)); Gotoxy(75,2); Write(chr(191)); Gotoxy(75,22); Write(chr(217)); {T canto} y:=8; For x:= 1 to 9 do Begin Gotoxy(y+40,2); WriteLn(chr(194)); Gotoxy(y+40,22); WriteLn(chr(193)); y:=y+3; End; y:=4; For x:= 1 to 9 do Begin Gotoxy(45,y); WriteLn(chr(195)); Gotoxy(75,y); WriteLn(chr(180)); y:=y+2; End; {Coordenadas numeros} y:=6; a:=49; For x:= 1 to 9 do Begin Gotoxy(y+40,1); WriteLn(chr(a)); Gotoxy(33+40,1); WriteLn('10'); y:=y+3; a:=a+1; End; {Coordenadas letras} y:=3; a:=65; For x:= 1 to 9 do Begin Gotoxy(43,y); WriteLn(chr(a)); Gotoxy(43,21); WriteLn('J'); y:=y+2; a:=a+1; End; {Pedir coordenadas} Gotoxy(1,23); Write('Insira as coordenadas para o porta avioes: '); Gotoxy(1,24); Write('Letras: Numeros: '); Gotoxy(9,24); Readln(opy); Gotoxy(21,24); Readln(opx); opy:=upcase(opy); {Posiçoes} {Posiçao letras} If opy = 'A' then cordy:=2 Else If opy = 'B' then cordy:=4 Else If opy = 'C' then cordy:=6 Else If opy = 'D' then cordy:=8 Else If opy = 'E' then cordy:=10 Else If opy = 'F' then cordy:=12 Else If opy = 'G' then cordy:=14 Else If opy = 'H' then cordy:=16 Else If opy = 'I' then cordy:=18 Else If opy = 'J' then cordy:=20; {Posiçao numeros} If opx = 1 then cordx:=2 Else If opx = 2 then cordx:=5 Else If opx = 3 then cordx:=8 Else If opx = 4 then cordx:=11 Else If opx = 5 then cordx:=14 Else If opx = 6 then cordx:=17 Else If opx = 7 then cordx:=20 Else If opx = 8 then cordx:=23 Else If opx = 9 then cordx:=26 Else If opx = 10 then cordx:=29; Window(5,2,35,22); {insere porta avioes para testar} Gotoxy(cordx,cordy); TextBackground(red); Write('X'); TextBackground(Black); Gotoxy(cordx+3,cordy); TextBackground(red); Write('X'); TextBackground(Black); Gotoxy(cordx+6,cordy); TextBackground(red); Write('X'); TextBackground(Black); Gotoxy(cordx+3,cordy+2); TextBackground(red); Write('X'); TextBackground(Black); Gotoxy(cordx+3,cordy+4); TextBackground(red); Write('X'); TextBackground(Black); Window(5,2,35,22); Window(1,1,80,25); ReadKey; End. (vou postando à medida que escrevo) Agradeço qualquer ajuda ou critica ( construtiva ) em relação à ideia e ao algoritmo escrito até agora. Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
M6 129 Denunciar mensagem Publicado 31 de Maio de 2010 Para o PC fazer os tiros dele usas um mapa que mantém o estado, podes usar uma matriz. Se em cada posição/casa tiveres X para um tiro, A para água, B para barco, e espaço para desconhecido, podes usar as funções de randomize para sortear uma linha e uma coluna da matriz, com essas coordenadas vês qual o estado da posição/casa, se for espaço passa a A de água, se for um B passa a X de tiro, se for outra coisa tens de repetir o sorteio porque essa posição já foi usada. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
perez 1 Denunciar mensagem Publicado 31 de Maio de 2010 Boas, eu lembrei-me que usei variáveis (aquelas que se fazem assim: x:[1..2] of integer (não me lembro do nome disto xD)) no jogo do galo para marcar as posições das casas usadas, se cada casa corresponder a uma coordenada. eu vou escrever alguma coisa, depois posto para veres. Obrigado pela ajuda. Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
M6 129 Denunciar mensagem Publicado 31 de Maio de 2010 Sim, é isso mesmo. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
perez 1 Denunciar mensagem Publicado 31 de Maio de 2010 Boas, esta tarde estive para aqui a aquecer os miolos e avancei um pouco: Program batalhanaval; uses crt; var x,y,z,a,cordx,cordy:Integer; opy,opx:Char; casa:array [1..100] of Char; Procedure desenha; Begin {Desenhar} {1º quadrado} {Linhas horizontais} For x:= 6 to 34 do Begin Gotoxy(x,2); WriteLn(chr(196)); Gotoxy(x,4); WriteLn(chr(196)); Gotoxy(x,6); WriteLn(chr(196)); Gotoxy(x,8); WriteLn(chr(196)); Gotoxy(x,10); WriteLn(chr(196)); Gotoxy(x,12); WriteLn(chr(196)); Gotoxy(x,14); WriteLn(chr(196)); Gotoxy(x,16); WriteLn(chr(196)); Gotoxy(x,18); WriteLn(chr(196)); Gotoxy(x,20); WriteLn(chr(196)); Gotoxy(x,22); WriteLn(chr(196)); End; {Linhas verticais} For x:= 3 to 21 do Begin Gotoxy(5,x); WriteLn(chr(179)); Gotoxy(8,x); WriteLn(chr(179)); Gotoxy(11,x); WriteLn(chr(179)); Gotoxy(14,x); WriteLn(chr(179)); Gotoxy(17,x); WriteLn(chr(179)); Gotoxy(20,x); WriteLn(chr(179)); Gotoxy(23,x); WriteLn(chr(179)); Gotoxy(26,x); WriteLn(chr(179)); Gotoxy(29,x); WriteLn(chr(179)); Gotoxy(32,x); WriteLn(chr(179)); Gotoxy(35,x); WriteLn(chr(179)); End; {cruzes} y:=8; For x:= 1 to 9 do Begin Gotoxy(y,4); WriteLn(chr(197)); Gotoxy(y,6); WriteLn(chr(197)); Gotoxy(y,8); WriteLn(chr(197)); Gotoxy(y,10); WriteLn(chr(197)); Gotoxy(y,12); WriteLn(chr(197)); Gotoxy(y,14); WriteLn(chr(197)); Gotoxy(y,16); WriteLn(chr(197)); Gotoxy(y,18); WriteLn(chr(197)); Gotoxy(y,20); WriteLn(chr(197)); y:=y+3; End; {Cantos} Gotoxy(5,2); Write(chr(218)); Gotoxy(5,22); Write(chr(192)); Gotoxy(35,2); Write(chr(191)); Gotoxy(35,22); Write(chr(217)); {T canto} y:=8; For x:= 1 to 9 do Begin Gotoxy(y,2); WriteLn(chr(194)); Gotoxy(y,22); WriteLn(chr(193)); y:=y+3; End; y:=4; For x:= 1 to 9 do Begin Gotoxy(5,y); WriteLn(chr(195)); Gotoxy(35,y); WriteLn(chr(180)); y:=y+2; End; {Coordenadas numeros} y:=6; a:=49; For x:= 1 to 9 do Begin Gotoxy(y,1); WriteLn(chr(a)); Gotoxy(33,1); WriteLn('0'); y:=y+3; a:=a+1; End; {Coordenadas letras} y:=3; a:=65; For x:= 1 to 9 do Begin Gotoxy(3,y); WriteLn(chr(a)); Gotoxy(3,21); WriteLn('J'); y:=y+2; a:=a+1; End; {2º quadrado} {Linhas horizontais} For x:= 46 to 74 do Begin Gotoxy(x,2); WriteLn(chr(196)); Gotoxy(x,4); WriteLn(chr(196)); Gotoxy(x,6); WriteLn(chr(196)); Gotoxy(x,8); WriteLn(chr(196)); Gotoxy(x,10); WriteLn(chr(196)); Gotoxy(x,12); WriteLn(chr(196)); Gotoxy(x,14); WriteLn(chr(196)); Gotoxy(x,16); WriteLn(chr(196)); Gotoxy(x,18); WriteLn(chr(196)); Gotoxy(x,20); WriteLn(chr(196)); Gotoxy(x,22); WriteLn(chr(196)); End; {Linhas verticais} For x:= 3 to 21 do Begin Gotoxy(45,x); WriteLn(chr(179)); Gotoxy(48,x); WriteLn(chr(179)); Gotoxy(51,x); WriteLn(chr(179)); Gotoxy(54,x); WriteLn(chr(179)); Gotoxy(57,x); WriteLn(chr(179)); Gotoxy(60,x); WriteLn(chr(179)); Gotoxy(63,x); WriteLn(chr(179)); Gotoxy(66,x); WriteLn(chr(179)); Gotoxy(69,x); WriteLn(chr(179)); Gotoxy(72,x); WriteLn(chr(179)); Gotoxy(75,x); WriteLn(chr(179)); End; {cruzes} y:=8; For x:= 1 to 9 do Begin Gotoxy(y+40,4); WriteLn(chr(197)); Gotoxy(y+40,6); WriteLn(chr(197)); Gotoxy(y+40,8); WriteLn(chr(197)); Gotoxy(y+40,10); WriteLn(chr(197)); Gotoxy(y+40,12); WriteLn(chr(197)); Gotoxy(y+40,14); WriteLn(chr(197)); Gotoxy(y+40,16); WriteLn(chr(197)); Gotoxy(y+40,18); WriteLn(chr(197)); Gotoxy(y+40,20); WriteLn(chr(197)); y:=y+3; End; {Cantos} Gotoxy(45,2); Write(chr(218)); Gotoxy(45,22); Write(chr(192)); Gotoxy(75,2); Write(chr(191)); Gotoxy(75,22); Write(chr(217)); {T canto} y:=8; For x:= 1 to 9 do Begin Gotoxy(y+40,2); WriteLn(chr(194)); Gotoxy(y+40,22); WriteLn(chr(193)); y:=y+3; End; y:=4; For x:= 1 to 9 do Begin Gotoxy(45,y); WriteLn(chr(195)); Gotoxy(75,y); WriteLn(chr(180)); y:=y+2; End; {Coordenadas numeros} y:=6; a:=49; For x:= 1 to 9 do Begin Gotoxy(y+40,1); WriteLn(chr(a)); Gotoxy(33+40,1); WriteLn('0'); y:=y+3; a:=a+1; End; {Coordenadas letras} y:=3; a:=65; For x:= 1 to 9 do Begin Gotoxy(43,y); WriteLn(chr(a)); Gotoxy(43,21); WriteLn('J'); y:=y+2; a:=a+1; End; End; Procedure coord; Begin {Posiçoes} {Posiçao letras} Case opy of 'A' : Begin cordy:=2; End; 'B' : Begin cordy:=4; End; 'C' : Begin cordy:=6; End; 'D' : Begin cordy:=8; End; 'E' : Begin cordy:=10; End; 'F' : Begin cordy:=12; End; 'G' : Begin cordy:=14; End; 'H' : Begin cordy:=16; End; 'I' : Begin cordy:=18; End; 'J' : Begin cordy:=20; End; End; {Posiçao numeros} Case opx of '1' : Begin cordx:=5; End; '2' : Begin cordx:=8; End; '3' : Begin cordx:=11; End; '4' : Begin cordx:=14; End; '5' : Begin cordx:=17; End; '6' : Begin cordx:=20; End; '7' : Begin cordx:=24; End; '8' : Begin cordx:=26; End; '9' : Begin cordx:=29; End; '0' : Begin cordx:=32; End; End; End; Procedure inserebarcos; Begin For z := 1 to 11 do Begin {Porta avioes} If z = 1 then Begin {Pedir coordenadas} Gotoxy(1,23); Write('Insira as coordenadas para o porta aviões: '); Gotoxy(1,24); Write('Letras: Numeros: '); Repeat Gotoxy(9,24); Write(' '); Gotoxy(9,24); Readln(opy); opy:=upcase(opy); Until ((opy = 'A') or (opy = 'B') or (opy = 'C') or (opy = 'D') or (opy = 'E') or (opy = 'F') or (opy = 'G') or (opy = 'H')); Repeat Gotoxy(21,24); Readln(opx); Gotoxy(21,24); Write(' '); Until ((opx = '1') or (opx = '2') or (opx = '3') or (opx = '4') or (opx = '5') or (opx = '6') or (opx = '7') or (opx = '8')); coord; Window(cordx,cordy,cordx+8,cordy+2); TextBackground(red); clrscr; Write(' '); TextBackground(Black); Window(1,1,80,25); Window(cordx+3,cordy,cordx+5,cordy+6); TextBackground(red); clrscr; Write(' '); TextBackground(Black); Window(1,1,80,25); desenha; End {Submarinos} Else If ((z = 2) or (z = 3) or (z = 4) or (z = 5)) then Begin {Pedir coordenadas} Gotoxy(1,23); Write('Insira as coordenadas para o submarino: '); Gotoxy(1,24); Write('Letras: Numeros: '); Repeat Gotoxy(9,24); Write(' '); Gotoxy(9,24); Readln(opy); opy:=upcase(opy); Until ((opy = 'A') or (opy = 'B') or (opy = 'C') or (opy = 'D') or (opy = 'E') or (opy = 'F') or (opy = 'G') or (opy = 'H') or (opy = 'I') or (opy = 'J')); Repeat Gotoxy(21,24); Readln(opx); Gotoxy(21,24); Write(' '); Until ((opx = '1') or (opx = '2') or (opx = '3') or (opx = '4') or (opx = '5') or (opx = '6') or (opx = '7') or (opx = '8') or (opx = '9') or (opx = '0')); coord; Window(cordx,cordy,cordx+2,cordy+2); TextBackground(red); clrscr; Write(' '); TextBackground(Black); Window(1,1,80,25); desenha; End {Barcos 2} Else If ((z = 6) or (z = 7) or (z = 8)) then Begin {Pedir coordenadas} Gotoxy(1,23); Write('Insira as coordenadas para o barco de 2 canos: '); Gotoxy(1,24); Write('Letras: Numeros: '); Repeat Gotoxy(9,24); Write(' '); Gotoxy(9,24); Readln(opy); opy:=upcase(opy); Until ((opy = 'A') or (opy = 'B') or (opy = 'C') or (opy = 'D') or (opy = 'E') or (opy = 'F') or (opy = 'G') or (opy = 'H') or (opy = 'I') or (opy = 'J')); Repeat Gotoxy(21,24); Readln(opx); Gotoxy(21,24); Write(' '); Until ((opx = '1') or (opx = '2') or (opx = '3') or (opx = '4') or (opx = '5') or (opx = '6') or (opx = '7') or (opx = '8') or (opx = '9') or (opx = '0')); coord; Window(cordx,cordy,cordx+6,cordy+2); TextBackground(red); clrscr; Write(' '); TextBackground(Black); Window(1,1,80,25); desenha; End {barco 3} Else If ((z = 9) or (z = 10)) then Begin {Pedir coordenadas} Gotoxy(1,23); Write('Insira as coordenadas para o barco de 3 canos: '); Gotoxy(1,24); Write('Letras: Numeros: '); Repeat Gotoxy(9,24); Write(' '); Gotoxy(9,24); Readln(opy); opy:=upcase(opy); Until ((opy = 'A') or (opy = 'B') or (opy = 'C') or (opy = 'D') or (opy = 'E') or (opy = 'F') or (opy = 'G') or (opy = 'H') or (opy = 'I') or (opy = 'J')); Repeat Gotoxy(21,24); Readln(opx); Gotoxy(21,24); Write(' '); Until ((opx = '1') or (opx = '2') or (opx = '3') or (opx = '4') or (opx = '5') or (opx = '6') or (opx = '7') or (opx = '8') or (opx = '9') or (opx = '0')); coord; Window(cordx,cordy,cordx+8,cordy+2); TextBackground(red); clrscr; Write(' '); TextBackground(Black); Window(1,1,80,25); desenha; End {barco 4} Else If (z = 11) then Begin {Pedir coordenadas} Gotoxy(1,23); Write('Insira as coordenadas para o barco de 4 canos: '); Gotoxy(1,24); Write('Letras: Numeros: '); Repeat Gotoxy(9,24); Write(' '); Gotoxy(9,24); Readln(opy); opy:=upcase(opy); Until ((opy = 'A') or (opy = 'B') or (opy = 'C') or (opy = 'D') or (opy = 'E') or (opy = 'F') or (opy = 'G') or (opy = 'H')); Repeat Gotoxy(21,24); Write(' '); Gotoxy(21,24); Readln(opx); Until ((opx = '1') or (opx = '2') or (opx = '3') or (opx = '4') or (opx = '5') or (opx = '6') or (opx = '7') or (opx = '8')); coord; Window(cordx,cordy,cordx+11,cordy+2); TextBackground(red); clrscr; Write(' '); TextBackground(Black); Window(1,1,80,25); desenha; End; End; End; Begin ClrScr; desenha; inserebarcos; ReadKey; End. {1 porta avioes -> 5 quadrados em T} {4 submarinos -> 1 quadrado } {3 barcos 2 -> 2 quadrados } {2 barcos 3 -> 3 quadrados } {1 barco 4 -> 4 quadrados } Basicamente o que fiz foi "desgin", amanha acabo esta parte e passo para a parte "lógica". Agradeço qualquer critica construtiva. Cumprimentos, Perez Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
perez 1 Denunciar mensagem Publicado 31 de Maio de 2010 Lembrei-me agora de um contra :/ com a função randomize, vai ser completamente random, mesmo que acerte, o pc não vai procurar a casa ao lado, vai ser random. Se eu fizer alguma coisa do tipo: If jogada = 1 then Begin If pos [jogada]= 'b' then Begin pos[jogada]:='h'; jogada:=jogada+1; End; Else {volta ao jogador}; isto poderá funcionar, ou tens alguma maneira melhor? Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
M6 129 Denunciar mensagem Publicado 1 de Junho de 2010 Podes seleccionar uma casa e depois rodar pelos quadrados à volta, tens é de ter em atenção que se estiverem todos usados tens de seleccionar outro de forma aleatória. Podes também ter uma variante, que é algo do tipo quando faltarem menos de X tiros, seleccionas uma casa aleatoriamente e começas a varrer por linha e coluna até encontrares uma casa livre. Isto permite-te ficar tempos infinitos à espera quando o jogo já vai avançado e o PC está "sempre" a sortear casas já usadas. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites