Ajout de la question 1 de l'exercice 2

This commit is contained in:
Tom MOGULJAK 2023-05-11 14:12:31 +02:00
parent 44b8120945
commit ffbb029a37
3 changed files with 130 additions and 7 deletions

View File

8
Exo 2/Question1.sce Normal file
View File

@ -0,0 +1,8 @@
data = csvRead("data/data.csv");
//Homme
u = find (data(:,11) >=0);
moyenneHomme = mean(data(u, 11));
//Femme
v = find (data(:,12) >=0);
moyenneFemme = mean(data(u, 12));

127
README.md
View File

@ -27,22 +27,72 @@ Voici les indices (numéro de la ligne dans le fichier) des pays regroupés par
| Europe | 151 - 193 | | Europe | 151 - 193 |
| Océanie | 194 - 207 | | Océanie | 194 - 207 |
# tous les exercices vont se faire en script scilab
## Exercice 1 ## Exercice 1
### Question 1 ### [Question 1](Exo1/Question1.sce)
> Calculer la surface terrestre mondiale, le nombre dhabitants mondial et la densité moyenne dhabitants au km2. > Calculer la surface terrestre mondiale, le nombre dhabitants mondial et la densité moyenne dhabitants au km2.
```scilab
data = csvRead("data/data.csv");
// surface terrestre mondiale
surface = sum(data(:, 2)* 1000);
// nombre d'habitants mondial
population = sum(data(:, 3) * 1000000);
// densité moyenne d'habitants au km2
densite = population / surface;
```
**Résultat :** **Résultat :**
- Surface terrestre mondiale : 133 950 670 km2 - Surface terrestre mondiale : 133 950 670 km2
- Nombre d'habitants mondial : 7 534 720 000 habitants - Nombre d'habitants mondial : 7 534 720 000 habitants
- Densité moyenne d'habitants au km2 : 56.249961 habitants/km2 - Densité moyenne d'habitants au km2 : 56.249961 habitants/km2
### Question 2 ### [Question 2](Exo1/Question2.sce)
> Calculer la surface terrestre, le nombre dhabitants et la densité moyenne au km2 pour chaque continent. > Calculer la surface terrestre, le nombre dhabitants et la densité moyenne au km2 pour chaque continent.
Voici les indices (numéro de la ligne dans le fichier) des pays regroupés par continent : Voici les indices (numéro de la ligne dans le fichier) des pays regroupés par continent :
| Continent | Indice pays |
| :--- | :---- |
| Afrique | 1 - 57 |
| Amérique du nord | 58 - 86 |
| Amérique du sud | 87 - 99 |
| Asie | 100 - 150 |
| Europe | 151 - 193 |
| Océanie | 194 - 207 |
```scilab
data = csvRead("data/data.csv");
//Afrique
surfaceAfrique = sum(data(1:57, 2)* 1000);
populationAfrique = sum(data(1:57, 3)* 1000000);
densiteAfrique = populationAfrique / surfaceAfrique;
//Amérique du nord
surfaceAmeriqueNord = sum(data(58:86, 2)* 1000);
populationAmeriqueNord = sum(data(58:86, 3)* 1000000);
densiteAmeriqueNord = populationAmeriqueNord / surfaceAmeriqueNord;
//Amérique du sud
surfaceAmeriqueSud = sum(data(87:99, 2)* 1000);
populationAmeriqueSud = sum(data(87:99, 3)* 1000000);
densiteAmeriqueSud = populationAmeriqueSud / surfaceAmeriqueSud;
//Asie
surfaceAsie = sum(data(100:150, 2)* 1000);
populationAsie = sum(data(100:150, 3)* 1000000);
densiteAsie = populationAsie / surfaceAsie;
//Europe
surfaceEurope = sum(data(151:193, 2)* 1000);
populationEurope = sum(data(151:193, 3)* 1000000);
densiteEurope = populationEurope / surfaceEurope;
//Océanie
surfaceOceanie = sum(data(194:207, 2)* 1000);
populationOceanie = sum(data(194:207, 3)* 1000000);
densiteOceanie = populationOceanie / surfaceOceanie;
```
**Résultat :** **Résultat :**
- **Afrique** - **Afrique**
- Surface terrestre : 30 312 530 km2 - Surface terrestre : 30 312 530 km2
@ -74,9 +124,13 @@ Voici les indices (numéro de la ligne dans le fichier) des pays regroupés par
- Nombre d'habitants : 40 780 000 habitants - Nombre d'habitants : 40 780 000 habitants
- Densité moyenne d'habitants au km2 : 4.762555 habitants/km2 - Densité moyenne d'habitants au km2 : 4.762555 habitants/km2
### Question 3 ### [Question 3](Exo1/Question3.sce)
> Représenter la densité moyenne dhabitants au km2 pour chaque continent en utilisant un diagramme en bâtons (on mettra en abscisse des entiers de 1 à 6). > Représenter la densité moyenne dhabitants au km2 pour chaque continent en utilisant un diagramme en bâtons (on mettra en abscisse des entiers de 1 à 6).
```scilab
bar([1, 2, 3, 4, 5, 6], [densiteAfrique, densiteAmeriqueNord, densiteAmeriqueSud, densiteAsie, densiteEurope, densiteOceanie]);
```
**Résultat :** **Résultat :**
Voici le diagramme en bâtons représentant la densité moyenne dhabitants au km2 pour chaque continent : Voici le diagramme en bâtons représentant la densité moyenne dhabitants au km2 pour chaque continent :
@ -85,9 +139,19 @@ Voici le diagramme en bâtons représentant la densité moyenne dhabitants au
*Avec le 1 qui représente l'Afrique, le 2 qui représente l'Amérique du nord, le 3 qui représente l'Amérique du sud, le 4 qui représente l'Asie, le 5 qui représente l'Europe et le 6 qui représente l'Océanie.* *Avec le 1 qui représente l'Afrique, le 2 qui représente l'Amérique du nord, le 3 qui représente l'Amérique du sud, le 4 qui représente l'Asie, le 5 qui représente l'Europe et le 6 qui représente l'Océanie.*
### Question 4 ### [Question 4](Exo1/Question4.sce)
> Représenter la répartition de la surface terrestre puis du nombre d'habitants par continent sous la forme de diagramme en camembert à l'aide de l'instruction `pie`. > Représenter la répartition de la surface terrestre puis du nombre d'habitants par continent sous la forme de diagramme en camembert à l'aide de l'instruction `pie`.
```scilab
//Surface
pie([surfaceAfrique, surfaceAmeriqueNord, surfaceAmeriqueSud, surfaceAsie, surfaceEurope, surfaceOceanie]);
legend(["Afrique", "Amérique du nord", "Amérique du sud", "Asie", "Europe", "Océanie"]);
//Population
pie([populationAfrique, populationAmeriqueNord, populationAmeriqueSud, populationAsie, populationEurope, populationOceanie]);
legend(["Afrique", "Amérique du nord", "Amérique du sud", "Asie", "Europe", "Océanie"]);
```
**Résultat :** **Résultat :**
Surface terrestre : Surface terrestre :
@ -97,3 +161,54 @@ Surface terrestre :
Population : Population :
![Diagramme population](image/diagrammepopulation.jpg) ![Diagramme population](image/diagrammepopulation.jpg)
## Exercice 2
**On considère lespérance de vie des hommes et des femmes par pays.**
### [Question 1](Exo2/Question1.sce)
> Calculer la moyenne sur lensemble des pays. Ce résultat représente-t-il à lespérance de vie mondiale des hommes (ou des femmes) ? pourquoi ? Comment l'estimer ?
```scilab
data = csvRead("data/data.csv");
//Homme
u = find (data(:,11) >=0);
moyenneHomme = mean(data(u, 11));
mprintf("Moyenne de l''espérance de vie des hommes : %d ans\n", moyenneHomme);
//Femme
v = find (data(:,12) >=0);
moyenneFemme = mean(data(u, 12));
mprintf("Moyenne de l''espérance de vie des femmes : %d ans\n", moyenneFemme);
```
**Résultat :**
- Moyenne de l'espérance de vie des hommes : 69 ans
- Moyenne de l'espérance de vie des femmes : 74 ans
Ce résultat ne représente pas correctement l'espérance de vie mondiale des hommes et des femmes car nous ne prenons pas en compte les pays qui ne possèdent pas de données sur l'espérance de vie des hommes et des femmes.
Pour estimer la moyenne de l'espérance de vie mondiale des hommes et des femmes il faut prendre en compte les pays qui ne possèdent pas de données sur l'espérance de vie des hommes et des femmes. Pour cela, il faut calculer la moyenne de l'espérance de vie des hommes et des femmes pour chaque pays et ensuite calculer la moyenne de ces moyennes.
### [Question 2](Exo2/Question2.sce)
> Calculer la médiane, la variance et lécart-type.
```scilab
//Homme
medianeHomme = median(data(u, 11));
mprintf("Médiane de l''espérance de vie des hommes : %d ans\n", medianeHomme);
varianceHomme = var(data(u, 11));
mprintf("Variance de l''espérance de vie des hommes : %d ans\n", varianceHomme);
ecartTypeHomme = stdev(data(u, 11));
mprintf("Ecart-type de l''espérance de vie des hommes : %d ans\n", ecartTypeHomme);
//Femme
medianeFemme = median(data(u, 12));
mprintf("Médiane de l''espérance de vie des femmes : %d ans\n", medianeFemme);
varianceFemme = var(data(u, 12));
mprintf("Variance de l''espérance de vie des femmes : %d ans\n", varianceFemme);
ecartTypeFemme = stdev(data(u, 12));
mprintf("Ecart-type de l''espérance de vie des femmes : %d ans\n", ecartTypeFemme);
```