aboutsummaryrefslogtreecommitdiff
path: root/semestre 2/informatique/tme/semaine5/28_participation_frais.c
blob: 96da9b74b2429170715d0c37b557ae979044f503 (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
50
51
52
53
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define NB_AMIS 4
#define NB_JOURS 7

void init_tab(float tab[NB_AMIS][NB_JOURS]){
	for (int i = 0; i < NB_AMIS; i++) {
		for (int j = 0; j < NB_JOURS; j++) tab[i][j] = 0;
	}
}

void random_tab(float tab[NB_AMIS][NB_JOURS], int j) {
	int a = rand()%NB_AMIS;
	int v = rand()%21+30;
	float to_pay = (float) v/(-NB_AMIS);
	tab[a][j] = v + to_pay;
	for (int i = 0; i < NB_AMIS; i++) {
		if (i != a) tab[i][j] = to_pay;
	}
}

void show_tab(float tab[NB_AMIS][NB_JOURS]){
	printf("Jour/Ami||\t");
	for (int i = 0; i < NB_AMIS; i++) printf("%d\t|\t", i+1);
	printf("\n");
	for (int i = 0; i < NB_AMIS*18; i++) printf("-");
	printf("\n");
	for (int j = 0; j < NB_JOURS;j++){
		for (int i = 0; i < NB_AMIS; i++) {
			if (i == 0) printf("%d\t||\t", j+1);
			printf("%.2f\t|\t", tab[i][j]);
			if (i == NB_AMIS-1) printf("\n");
		}	
	}
}

void show_solde(float tab[NB_AMIS][NB_JOURS], int a){
	float s = 0;
	for (int j = 0; j < NB_JOURS; j++) s += tab[a][j];
	printf("Ami %d a pour solde %.02f\n", a, s);
}

int main() {
	float tab[NB_AMIS][NB_JOURS] = {};
	srand(time(NULL));
	init_tab(tab);
	for (int d = 0; d < NB_JOURS; d++)	random_tab(tab, d);
	show_tab(tab);
	for (int i = 0; i < NB_AMIS; i++) show_solde(tab, i);
	return 0;
}