Bonjour à tous
Voici un simple programme, pour débutant, qui calcule le rapport de deux éléments, chacun d'une liste et ayant le même index :
public static List<int> Lst_01 = new List<int> { 14, 11, 32, 15 };
public static List<int> Lst_02 = new List<int> { 36, 17, 2, 3 };
foreach (int i in Lst_01)
{
foreach (int j in Lst_02)
{

if(Lst_01.IndexOf(i) == Lst_02.IndexOf(j) && j!=0)
{
int k = i / j;
Lst_Rp.Add(k);
}
}
}
for (int x = 0; x < Lst_Rp.Count; x++)
{
Console.WriteLine(Lst_Rp[x]);
}
Le résultat est le suivant :
****************************
Liste 01 :
14
11
32
15
****************************
Liste 02 :
36
17
2
3
****************************
0
0
16
5
****************************
Tout se passe bien, mais si j'ai par exemple ce qui suit :
public static List<int> Lst_03 = new List<int> { 1, 1, 1, 1 };
public static List<int> Lst_04 = new List<int> { 1, 1, 1, 1 };
foreach (int i in Lst_03)
{
foreach (int j in Lst_04)
{

if(Lst_03.IndexOf(i) == Lst_04.IndexOf(j) && j!=0)
{
int k = i / j;
Lst_Rp.Add(k);
}
}
}
for (int x = 0; x < Lst_Rp.Count; x++)
{
Console.WriteLine(Lst_Rp[x]);
}
Le résultat est :
****************************
Liste 01 :
1
1
1
1
****************************
Liste 02 :
1
1
1
1
****************************
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Alors que normalement doit me donner :
1
1
1
1
càd 16 éléments au lieu de 4 éléments .
****************************
et je n'arrive pas à cerné mon erreur , de l'aide Svp et merci d'avance