summaryrefslogtreecommitdiff
path: root/sem_2/HLIN202/TP/TP11-12/exo5.cpp
blob: 24b70b777f17e154dadfdd27ee85b78704cd3795 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
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;
}