1 #include <iostream> 2 #include <iomanip> 3 #include <vector> 4 5 void vector_print(std::vector<int> v) { 6 std::cout << "["; 7 for(size_t i = 0; i < v.size(); ++i) { 8 std::cout << v[i] << ((v.size() == i+1) ? "" : ", "); 9 } 10 std::cout << "]\n"; 11 } 12 13 int vector_mean(std::vector<int> v) { 14 int res = 0; 15 for(size_t i = 0; i < v.size(); ++i) 16 res += v[i]; 17 18 return ((float)res)/v.size(); 19 } 20 21 int main (void) { 22 int n, mean, total_mean; 23 unsigned int len; 24 25 std::cout << "Cantidad de lotes> "; 26 std::cin >> len; 27 if (std::cin.fail()) { 28 std::cerr << "Solo se permite ingresar nĂºmeros\n"; 29 return -1; 30 } 31 32 std::vector<std::vector<int>> lista(len); 33 for(size_t i = 0; i < len; ++i) { 34 std::cout << "Ingrese numeros de lote `" << i 35 << "`\nAl finalizar el lote ingrese `0`\n"; 36 while(std::cin >> n) { 37 std::cout << "\033[1A\033[2K"; 38 if(n == 0) 39 break; 40 41 lista[i].push_back(n); 42 vector_print(lista[i]); 43 } 44 } 45 46 std::cout << std::endl; 47 mean = total_mean = 0; 48 for(size_t i = 0; i < len; ++i) { 49 std::cout << std::setw(2) << i+1 << ": "; 50 vector_print(lista[i]); 51 std::cout << "-> mean: " 52 << (mean = vector_mean(lista[i])) << "\n\n"; 53 total_mean += mean; 54 } 55 56 std::cout << "=> total mean: " << total_mean << std::endl; 57 return 0; 58 }
