Bonjour à tous,
J'essaye d'écrire un programme qui convertisse l'heure d'un pays en celle d'un autre pays (avec le décalage horaire)
Je dispose d'un tableau avec les indicatifs téléphoniques de chaque pays et je demande à un utilisateur de rentrer deux indicatifs téléphoniques (celui du pays d'origine et celui du pays de destination), j'aimerai que si l'utilisateur rentre des indicatifs qui ne sont pas dans mon tableau, le programme renvoie ("Invalid code Number")
Ma professeur à mis ce code en correction, et je ne le comprends pas du tout à partir de la boucle for, je connais l'opérateur && mais je ne vois pas du tout comment il agit sur la boucle ici. Supposons que l'utilisateur me donne 55 (dans le tableau) et 97 (pas dans le tableau) comment le programme parcourt-il la boucle ?
J'espère que j'ai été suffisamment claire, je vous remercie par avance pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 const int country_codes[N] = {44, 34, 86, 55, 1, 358, 351, 98, 91, 381, 7}; int ccode_orig, ccode_dest; printf("Enter country codes: "); scanf("%d", &ccode_orig); scanf("%d", &ccode_dest); int found_orig = 0, found_dest = 0; int index_orig = -1, index_dest = -1; for (int i = 0; ((i < N) && !(found_orig && found_dest)); i++) { if (country_codes[i] == ccode_orig) { found_orig = 1; index_orig = i; } else if (country_codes[i] == ccode_dest) { found_dest = 1; index_dest = i; } } if (!found_orig || !found_dest) { printf("Invalid country code.\n"); return 0; }
Partager