Trova dove le zone con più cibo

This commit is contained in:
Davide999 2017-05-27 01:33:36 +02:00
parent c86942007d
commit ad75e267a8

67
main.go
View file

@ -23,6 +23,8 @@ var Clock uint
var NumClock uint var NumClock uint
var ValoreNutrizionale int =10 var ValoreNutrizionale int =10
var ValoreNutrizionaleCarcassa int =5 var ValoreNutrizionaleCarcassa int =5
var ZonaCiboX int
var ZonaCiboY int
func main() { //FUNZIONE MAIN func main() { //FUNZIONE MAIN
Clock = 1 Clock = 1
@ -97,6 +99,7 @@ func main() { //FUNZIONE MAIN
aggiorna() aggiorna()
} }
func aggiorna() { //FUNZIONE AGGIORNA: chiama la funzione muovi func aggiorna() { //FUNZIONE AGGIORNA: chiama la funzione muovi
@ -110,6 +113,7 @@ func aggiorna() { //FUNZIONE AGGIORNA: chiama la funzione muovi
} }
fmt.Printf("\nSituazione dopo %d movimenti:\n", NumClock) fmt.Printf("\nSituazione dopo %d movimenti:\n", NumClock)
stampaMatrice() stampaMatrice()
giraMatrice()
} }
} }
@ -241,6 +245,69 @@ func muovi(h int, w int) { //FUNZIONE MUOVI: aggiorna la posizione di tutti gli
} }
func giraMatrice(){
var conta int=0
var contaMax int=0
var i int
var j int
for i=1;i<Altezza-1; i++{
for j=1; j<Larghezza-1;j++{
if Matrix[i][j]!=nil{
if Matrix[i][j].IsFood{
conta++;
}
}
if Matrix[i-1][j]!=nil{
if Matrix[i-1][j].IsFood{
conta++;
}
}
if Matrix[i-1][j-1]!=nil{
if Matrix[i-1][j-1].IsFood{
conta++;
}
}
if Matrix[i-1][j+1]!=nil{
if Matrix[i-1][j+1].IsFood{
conta++;
}
}
if Matrix[i][j+1]!=nil{
if Matrix[i][j+1].IsFood{
conta++;
}
}
if Matrix[i][j-1]!=nil{
if Matrix[i][j-1].IsFood{
conta++;
}
}
if Matrix[i+1][j-1]!=nil{
if Matrix[i+1][j-1].IsFood{
conta++;
}
}
if Matrix[i+1][j]!=nil{
if Matrix[i+1][j].IsFood{
conta++;
}
}
if Matrix[i+1][j+1]!=nil{
if Matrix[i+1][j+1].IsFood{
conta++;
}
}
if conta>contaMax{
ZonaCiboX=j
ZonaCiboY=i
contaMax=conta
}
conta=0;
}
}
fmt.Printf("%d %d %d",contaMax,ZonaCiboX,ZonaCiboY)
}
func stampaMatrice() { func stampaMatrice() {