/*! * \fn void afficheIM(std::string& user) * \brief Affiche Le Menu Information de matrice */ void afficheIM(std::string& user) { do { system("clear"); int maxChoix = 0, choix = 0; std::string mat = "", info = ""; Matrice* A = NULL; maxChoix = afficheSM(); getline(std::cin, user); choix = atoi(user.c_str()); // on change string en int if (user != "q" && user != "r" && user[0] != 'x') { if (choix <= maxChoix && choix > 0) { mat = trouveFichier(choix); A = new Matrice("./mat/"+mat); system("clear"); std::cout << std::endl << *A << std::endl << std::endl; std::cout << " Nombre de lignes : " << A->getLigne() << std::endl; std::cout << " Nombre de colonne : " << A->getColonne() << std::endl << std::endl; std::cout << " Matrice nulle? : " << A->Null() << std::endl; std::cout << " Matrice creuse? : " << A->Creuse() << std::endl; std::cout << " Matrice diagonale? : " << A->Diagonale() << std::endl; std::cout << " Matrice carrée? : " << A->Carre() << std::endl << std::endl; do { std::cout << " - Que voulez vous faire ? (c = chercher la valeur d'un case, r = retour ou q = quitter): "; getline(std::cin, user); if (user == "c") {//Cherche la valeur demandé int l = 0, c = 0; std::cout << " - Veuillez inserer la ligne : "; getline(std::cin, user); l = atoi(user.c_str()); std::cout << " - Veuillez inserer la colonne : "; getline(std::cin, user); c = atoi(user.c_str()); std::cout << jaune << "La valeur de la coordonnée " << Coordonnee(l, c) << " est : " << A->Valeur(l, c) << reset << std::endl; } else if (user == "r") system("clear"); //Retourner menu precedent else if (user == "q"){} //Quitter else //Erreur { system("clear"); std::cout << rouge << "Veuillez inserer c, r ou q" << reset << std::endl; } }while (user != "q" && user != "r"); delete A; A = NULL; } else { system("clear"); if (maxChoix > 1) std::cout << rouge << " Veuillez inserer 1 à " << maxChoix << ", r, q ou x[choix] " << reset << std::endl; else if (maxChoix == 1) std::cout << rouge << " Veuillez inserer 1, r, q ou x1 " << reset << std::endl; else std::cout << rouge << " Veuillez inserer r ou q " << reset << std::endl; } } else if (user[0] == 'x') { user.erase(0,1); //supprime le x choix = atoi(user.c_str()); // on change string en int if (choix <= maxChoix && choix > 0) { removeSave(trouveFichier(choix)); system("clear"); } else { system("clear"); if (maxChoix > 1) std::cout << rouge << " Veuillez inserer 1 à " << maxChoix << ", r, q ou x[choix] " << reset << std::endl; else if (maxChoix == 1) std::cout << rouge << " Veuillez inserer 1, r, q ou x1 " << reset << std::endl; else std::cout << rouge << " Veuillez inserer r ou q " << reset << std::endl; } } }while (user != "r" && user != "q"); system("clear"); }