diff options
Diffstat (limited to 'sem_2/HLIN202/TP/TP11-12/exo5.cpp')
| -rw-r--r-- | sem_2/HLIN202/TP/TP11-12/exo5.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/sem_2/HLIN202/TP/TP11-12/exo5.cpp b/sem_2/HLIN202/TP/TP11-12/exo5.cpp new file mode 100644 index 0000000..24b70b7 --- /dev/null +++ b/sem_2/HLIN202/TP/TP11-12/exo5.cpp @@ -0,0 +1,49 @@ +#include<iostream>
+
+struct CD {
+ int pistes;
+ int duree[100];
+};
+
+CD cree (){
+ CD disque;
+ return disque;
+}
+
+void init ( CD *disque) {
+ std::cout<<"Entrez le nombre de pistes"<<std::endl;
+ std::cin>>disque->pistes;
+ for (int i = 0; i < disque->pistes; i++) {
+ std::cout<<"Entrez la duree (en secondes) de la piste numero : "<< i+1<< std::endl;
+ std::cin>> disque->duree[i];
+ }
+}
+void afficheCD ( CD * disque){
+ std::cout<< " Le CD est compose de " << disque->pistes << " pistes."<<std::endl;
+ std::cout<<"Numero de piste | Duree"<<std::endl;
+ for ( int i = 0 ; i < disque->pistes; i ++) {
+ std::cout<< " "<< i + 1 << " "<<disque->duree[i]<<std::endl;
+ }
+}
+int dureetotale(CD disque){
+ int ret=0;
+ for (int i =0; i < disque.pistes; i ++) {
+ ret+=disque.duree[i];
+ }
+ return ret;
+}
+int nbPistesSup ( CD disque, int duree) {
+ int ret = 0;
+ for (int i=0; i < disque.pistes; i ++){
+ ret+= disque.duree[i]>duree ? 1 : 0;
+ }
+ return ret;
+}
+
+int main () {
+ CD disque;
+ init(&disque);
+ std::cout<<"Duree totale : "<< dureetotale(disque)<<std::endl;
+ afficheCD(&disque);
+ return 0;
+}
|
