Facebook
From Nicolas Costa, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 130
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main(){
  5. int grupo, n;
  6. int cont = 0; /// A B Y C
  7.  
  8. /// PUNTO A
  9. int grupo_mayor_porc = 0;
  10. int cip; /// cantidad de impares positivos del grupo
  11. float pip; /// porcentaje de impares positivos del grupo
  12. float max_pi = 0; /// maximo porcentaje de impares del total
  13.  
  14. /// PUNTO B
  15. int i;
  16. int ult_primo;
  17. int div;
  18. int pos_primo;
  19.  
  20. /// PUNTO C
  21. int ant;
  22. bool ordenado;
  23. int grupos_ordenados = 0;
  24.  
  25. for (grupo = 1; grupo <= 4; grupo++){
  26.  
  27.     cout << "grupo: " << grupo << endl;
  28.     cin >> n;
  29.     ordenado = true; /// asumo que la lista va estar ordenada decrecientemente
  30.     ult_primo = pos_primo = -1;
  31.     cip = 0;
  32.  
  33.     while (n != 0){
  34.  
  35.         /// PUNTO A
  36.         if (n > 0 && n % 2 != 0)
  37.             cip++;
  38.  
  39.         /// PUNTO B
  40.         cont++;
  41.         div = 0;
  42.         for (i=1; i<=n; i++){
  43.             if (n % i == 0){
  44.                 div++;
  45.             }
  46.         }
  47.         if (div == 2){
  48.             ult_primo = n;
  49.             pos_primo = cont;
  50.         }
  51.         /// PUNTO C
  52.         if (cont > 1){
  53.                 if (n > ant){
  54.                     ordenado = false; /// se desordeno
  55.                 }
  56.         }
  57.         ant = n;
  58.         cin >> n;
  59.     }
  60.     /// A
  61.     pip = (float) cip / cont; /// lo casteo para que me de con coma ya que los ingresados son con INT
  62.     if (pip > max_pi){
  63.         max_pi = pip;
  64.         grupo_mayor_porc = grupo;
  65.     }
  66.  
  67.     /// B
  68.     if (ult_primo != -1){
  69.         cout << "ULTIMO PRIMO: " << ult_primo << endl;
  70.         cout << "POSICION: " << pos_primo << endl;
  71.     }
  72.     else{
  73.         cout << "NO HUBO PRIMOS EN ESTE GRUPO." << endl;
  74.     }
  75.     /// C
  76.     if (ordenado == true){
  77.         grupos_ordenados++;
  78.     }
  79.     cout << endl;
  80. }
  81. cout << "PUNTO A:" << endl;
  82.     if (grupo_mayor_porc != 0){
  83.         cout << "GRUPO CO MAYOR PORCENTAJE DE IMPARES POSITIVOS: " << grupo_mayor_porc << endl;
  84.     }
  85. cout << "PUNTO C: " << endl;
  86. cout << "CANTIDAD DE GRUPOS ORDENADOS DECRECIENTEMENTE: " << grupos_ordenados << endl;
  87.  
  88. return 0;
  89. }
  90.