foluke Δημοσ. 8 Ιανουαρίου 2012 Δημοσ. 8 Ιανουαρίου 2012 καλησπερα μας ζητηθηκε να κανουμε ναυμαχία στην visual basic σε console aplication με βάση τον παρακατω κωδικα του ναρκαλιευτη Module Module1 'Ο Πίνακας Game υλοποιεί όλη τη λογική του παιχνιδιού του Ναρκαλιευτή Dim Game(10, 10) As SByte, narkes As Byte Sub Main() Console.Write("Πόσες νάρκες να τοποθετήσω? ") narkes = Console.ReadLine Call putNarkes() 'Τοποθετεί τυχαία τις νάρκες που ζήτησε ο χρήστης στον πίνακα Game Call putNumbers() 'Τοποθετεί τους αριθμούς στα υπόλοιπα τετράγωνα του πίνακα Game Call printTableGame() 'Κάνει μια εκτύπωση του πίνακα Game στο παράθυρο Console Console.ReadLine() End Sub Sub putNarkes() 'Τοποθετεί τυχαία τις νάρκες που ζήτησε ο χρήστης στον πίνακα Game Dim i, x, y As Byte, rndObject As New Random() For i = 1 To narkes Do x = rndObject.Next(0, 11) 'παράγει έναν τυχαίο αριθμό στο διάστημα [0,10] για το x y = rndObject.Next(0, 11) 'παράγει έναν τυχαίο αριθμό στο διάστημα [0,10] για το y Loop Until Game(x, y) <> -1 Game(x, y) = -1 Next End Sub Sub putNumbers() 'Τοποθετεί τους αριθμούς στα υπόλοιπα τετράγωνα του πίνακα Game Dim i, j, ii, jj, ia, ib, ja, jb As Byte For i = 0 To 10 For j = 0 To 10 'Αν υπάρχει νάρκη πρόσθεσε μια μονάδα σε όλα τα διπλανά τετράγωνα If Game(i, j) = -1 Then 'Ψάχνουμε την περιοχή-ορθογώνιο από i-1,j-1 έως i+1,j+1 όπου i-1,j-1>=0 & i+1,j+1<=10 ia = IIf(i = 0, 0, i - 1) 'προσέχω μη βγω έξω από τον πίνακα - από πάνω ib = IIf(i = 10, 10, i + 1) 'προσέχω μη βγω έξω από τον πίνακα - από κάτω ja = IIf(j = 0, 0, j - 1) 'προσέχω μη βγω έξω από τον πίνακα - από αριστερά jb = IIf(j = 10, 10, j + 1) 'προσέχω μη βγω έξω από τον πίνακα - από δεξιά For ii = ia To ib For jj = ja To jb If Game(ii, jj) <> -1 Then Game(ii, jj) = Game(ii, jj) + 1 Next Next End If Next Next End Sub Sub printTableGame() 'Κάνει μια εκτύπωση του πίνακα Game στο παράθυρο Console Dim i, j As Byte For i = 0 To 10 For j = 0 To 10 If Game(i, j) < 0 Then ' Το space(2) αφήνει 2 κενά κατά την εκτύπωση Console.Write(Space(2) & "{0}", Game(i, j)) Else ' Το space(3) αφήνει 3 κενά κατά την εκτύπωση Console.Write(Space(3) & "{0}", Game(i, j)) End If Next Console.WriteLine() Next End Sub End Module μπορειτε να μου δωσετε μια βοηθεια γιατι αν και το εψαξα δεν το εχω με τον προγραμματισμο.
virxen75 Δημοσ. 9 Ιανουαρίου 2012 Δημοσ. 9 Ιανουαρίου 2012 αν θες βοήθεια ξεκίνα να γράφεις κώδικα και στείλε εδώ για διορθώσεις.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα