| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | // For more tutorials: https://blog.learngoprogramming.com | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | // Copyright © 2018 Inanc Gumus | 
					
						
							|  |  |  | // Learn Go Programming Course | 
					
						
							|  |  |  | // License: https://creativecommons.org/licenses/by-nc-sa/4.0/ | 
					
						
							|  |  |  | // | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | package main | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import "fmt" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func main() { | 
					
						
							|  |  |  | 	// ------------------------------------ | 
					
						
							|  |  |  | 	// #1 - THE BEST WAY | 
					
						
							|  |  |  | 	// ------------------------------------ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	students := [...][3]float64{ | 
					
						
							|  |  |  | 		{5, 6, 1}, | 
					
						
							|  |  |  | 		{9, 8, 4}, | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	var sum float64 | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	for _, grades := range students { | 
					
						
							|  |  |  | 		for _, grade := range grades { | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 			sum += grade | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 		} | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	const N = float64(len(students) * len(students[0])) | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	fmt.Printf("Avg Grade: %g\n", sum/N) | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	// ------------------------------------ | 
					
						
							|  |  |  | 	// #2 - SO SO WAY | 
					
						
							|  |  |  | 	// ------------------------------------ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	// // You don't need to define the types for the inner arrays | 
					
						
							|  |  |  | 	// students := [2][3]float64{ | 
					
						
							|  |  |  | 	// 	[3]float64{5, 6, 1}, | 
					
						
							|  |  |  | 	// 	[3]float64{9, 8, 4}, | 
					
						
							|  |  |  | 	// } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	// var sum float64 | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	// sum += students[0][0] + students[0][1] + students[0][2] | 
					
						
							|  |  |  | 	// sum += students[1][0] + students[1][1] + students[1][2] | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	// const N = float64(len(students) * len(students[0])) | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	// fmt.Printf("Avg Grade: %g\n", sum/N) | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	// ------------------------------------ | 
					
						
							|  |  |  | 	// #3 - MANUAL WAY | 
					
						
							|  |  |  | 	// ------------------------------------ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	// student1 := [3]float64{5, 6, 1} | 
					
						
							|  |  |  | 	// student2 := [3]float64{9, 8, 4} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	// var sum float64 | 
					
						
							|  |  |  | 	// sum += student1[0] + student1[1] + student1[2] | 
					
						
							|  |  |  | 	// sum += student2[0] + student2[1] + student2[2] | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	// const N = float64(len(student1) * 2) | 
					
						
							| 
									
										
										
										
											2018-11-17 21:56:09 +03:00
										 |  |  | 	// fmt.Printf("Avg Grade: %g\n", sum/N) | 
					
						
							| 
									
										
										
										
											2018-11-15 16:37:09 +03:00
										 |  |  | } |