cav Posted May 14, 2008 at 03:13 PM Report Share #185060 Posted May 14, 2008 at 03:13 PM Boas...foi me pedida na escola para realizar o jogo do mastermind...Se me poderem dar algumas dicas agradecia.....Obrigado!!! 😁 Link to comment Share on other sites More sharing options...
M6 Posted May 15, 2008 at 09:44 PM Report Share #185398 Posted May 15, 2008 at 09:44 PM Que tipo de ajuda necessitas? É que assim a atirar ao ar podes levar repostas do tipo: o tabuleiro pode ser representado por um array... 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." Link to comment Share on other sites More sharing options...
kaloira Posted October 7, 2009 at 08:21 AM Report Share #290392 Posted October 7, 2009 at 08:21 AM deve ser mais do tipo, em modo consola com numeros de 1 a 4 envez de cores... 🙂 se poderem dar umas dicas, tipo eu ja fiz um random para gerar os números automaticamente, depois so há um problema, nao sei como estruturar o programa, tipo i que fazer primeiro para rodar perfeitamente.... Link to comment Share on other sites More sharing options...
M6 Posted October 7, 2009 at 08:56 AM Report Share #290398 Posted October 7, 2009 at 08:56 AM Tens de parar, pensar e desenhar o programa antes de escreveres código. Pensa como o jogo deve funcionar, tipo, o jogo arrancar e... ? Escreve um caso de uso de um jogo, onde descreves como o utilizador interage e como o programa deve responder. Depois divide isso em pequenos módulos e implementa um de cada vez. 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." Link to comment Share on other sites More sharing options...
bruno1234 Posted October 7, 2009 at 07:18 PM Report Share #290522 Posted October 7, 2009 at 07:18 PM Como é uma aplicação em C# e é um jogo simples, podes definir uma classe q representa o teu jogo. Esta classe deve ter: - Variaveis que guardam os valores (isto pode ser feito com campos ou propriedades, lê o q significam estas 2 coisas.) - Acções do jogo. (Isto vão ser os métodos q a interface (gráfica ou consola, seja o q for) vai chamar, devem fazer toda a lógica necessária ao jogo de modo a q a apresentação apenas se limite a mostrar dados). Estes métodos devem ser testados um a um assim q são feitos, para evitar complicações mais tarde. - Construtor q inicia as variaveis do jogo, por exemplo: as cores em q se deve acertar. Antes de fazeres esta classe não faças nd q tenha a ver com a apresentação, isso é o passo seguinte. Matraquilhos para Android. Gratuito na Play Store. https://play.google.com/store/apps/details?id=pt.bca.matraquilhos Link to comment Share on other sites More sharing options...
kaloira Posted October 8, 2009 at 03:41 PM Report Share #290701 Posted October 8, 2009 at 03:41 PM boas.... ja consegui mais ou menos, mas tem um pequeno problema.... private static bool Verificar(int num, int numA) { if (num == numA) { return true; } else { return false; } } static void Main(string[] args) { //Variaveis int[] numAle = new int[4]; char[] numUtilizador = new char[4]; int contL = 0, num = 0, numA = 0, ContPos = 0; bool VerificaFim = true; // declarar os numeros random Random rnd = new Random(); for (int i = 0; i < 4; i++) { numAle = rnd.Next(1, 5); } //Intru.. Console.Write("\n▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒"); Console.SetCursorPosition(28, 10); Console.Write("\t..Master Mind.."); Console.SetCursorPosition(10, 11); Console.Write("Neste Jogo Voce tera de acertar nos 4 numeros aleatorios\n\t\t e suas posições escolhidos pelo programa\n \t\t\ttera 10 tentativas para Vencer!! \n \t\t\t\tBom Jogo!!"); Console.SetCursorPosition(10, 14); Console.Write("\t_______________________________________________"); Console.SetCursorPosition(10, 15); Console.Write("\t Pressione ALGUMA TECLA! para Começar a jogar"); Console.SetCursorPosition(10, 16); Console.Write("\t_______________________________________________"); Console.Write("\n\n\n\n\n▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒"); Console.ReadKey(); Console.Clear(); //fim Intru //2ºparte for (int i = 10; i > 0; i--) { int cont = 0; Console.Write("\n▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒"); Console.SetCursorPosition(15, 4); Console.Write("_______________________________________________"); Console.SetCursorPosition(28, 5); Console.Write("Tem {0} tentativas", i);// Ira mudar conforme vao pondo as tentativas Console.SetCursorPosition(15, 6); Console.Write("_______________________________________________"); Console.SetCursorPosition(15, 7); Console.Write("\t\t????\t -> Os numeros são somente de 1 a 4"); //melhorar for (int J = 0; J < 4; J++) { //escreve os numeros digitalizados, e muda de linha de 4 em 4 digitos Console.SetCursorPosition(15 + cont, 8 + contL); numUtilizador[J] = char.Parse(Console.ReadLine()); cont++; } ContPos = 0; for (int J = 0; J < 4; J++) { num = numAle[J]; numA = numUtilizador[J]; if (Verificar(num, numA)) { ContPos++; } } // escrever as possiões correctas if (ContPos == 4) { Console.Clear(); Console.SetCursorPosition(15, 15); Console.Write("VENCESTE"); Console.SetCursorPosition(15, 16); Console.Write("PARABENS!! preciona ALGUMA TECLA para sair!"); i = 0; VerificaFim = false; } else { Console.SetCursorPosition(50, 22); Console.Write("Posiçoes correctas:|||| {0} |||", ContPos); contL++; } } if (VerificaFim) { Console.Clear(); Console.SetCursorPosition(15, 15); Console.Write("PERDESTE!!!"); Console.SetCursorPosition(15, 16); Console.Write("Talvez para a proxima!! preciona ALGUMA TECLA para sair!"); } Console.ReadKey(); o programa roda, so que enves de poder-mos introduzir os quatro numeros seguidos e carregar enter depois para confirmar, temos que introduzir um numero de cada ves e enter em cada um.... será que me podem dizer u que esta mal, ou que parte do codigo tenho que alterar??? 😁 esta feito em modo consola Link to comment Share on other sites More sharing options...
M6 Posted October 8, 2009 at 03:43 PM Report Share #290702 Posted October 8, 2009 at 03:43 PM E isso é um problema? 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." Link to comment Share on other sites More sharing options...
kaloira Posted October 8, 2009 at 03:51 PM Report Share #290707 Posted October 8, 2009 at 03:51 PM nao está a rodar correctamente, serve mais para o jogo ficar melhorado, se alguem souber onde esta o erro digam sff. tou farto de ver em varios foruns e nada. Link to comment Share on other sites More sharing options...
Triton Posted October 8, 2009 at 04:31 PM Report Share #290714 Posted October 8, 2009 at 04:31 PM nao está a rodar correctamente, serve mais para o jogo ficar melhorado, se alguem souber onde esta o erro digam sff. tou farto de ver em varios foruns e nada. Em vez de pedires para ler 4 números, faz a leitura de uma linha inteira, e depois fazes o parse dos 4 números tu própria, usando Regex (Regular Expressions), ou os métodos Int.TryParse e string.Substring. <3 life Link to comment Share on other sites More sharing options...
kaloira Posted October 8, 2009 at 07:24 PM Report Share #290752 Posted October 8, 2009 at 07:24 PM :dontgetit:, nao percebi mt bem.... Link to comment Share on other sites More sharing options...
Triton Posted October 8, 2009 at 08:01 PM Report Share #290767 Posted October 8, 2009 at 08:01 PM Em vez de leres um número, lês uma string, ou seja, se o utilizador inserir 1 2 3 4, recebes algo como "1 2 3 4" no programa. Depois o método Substring vai devolver-te "1", "2", "3", e "4". Usas o Int.TryParse em cada um desses ("1", "2", "3", e "4") e ele vai devolver-te os números 1, 2, 3, 4. Tens é de ter cuidado quando o utilizador introduz coisas inválidas, como "a b c d". Ou só insere 1, 2, ou 3 números. <3 life Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now