Professional Documents
Culture Documents
Gestion Stagiaires Avec Table 1 D Et Structures
Gestion Stagiaires Avec Table 1 D Et Structures
Module GESTION_NOTES_STRUCTURES_TDI1CDS
Public Structure Stagiaire
Dim num As Integer
Dim nom As String
Dim note1 As Double
Dim note2 As Double
Dim note3 As Double
Dim moyenne As Double
Dim classement As Integer
Dim decision As String
End Structure
Dim st As Stagiaire
Dim tab() As Stagiaire
Sub main()
Dim choix As Integer
Dim rep As String
Do
menu()
choix = Console.ReadLine()
Select Case choix
Case 1
tab = saisie(tab)
Case 2
Affichage(tab)
Case 3
tab = ajouter(tab)
Case 4
Dim numsupp As Integer
Console.WriteLine("saisir le numero de
l'etudiant à supprimer")
numsupp = Console.ReadLine
tab = supprimer(tab, numsupp)
Case 5
Dim nummod As Integer
Console.WriteLine("saisir le numero de
l'etudiant à modifier les donnees")
nummod = Console.ReadLine
tab = modifier(tab, nummod)
Case 6
Dim numRech As Integer
Console.WriteLine("saisir le numero de
l'etudiant à rechercher")
numRech = Console.ReadLine
rechercher(tab, numRech)
Case 7
tab = tri(tab)
Affichage(tab)
Case 8
End
End Select
Console.Out.WriteLine("voulez vous continuez(O/N):")
rep = Console.ReadLine.ToUpper
Loop While rep = "O"
End Sub
Sub menu()
Console.WriteLine("1...SAISIE DES STAGIAIRES.....")
Console.WriteLine("2...LISTE DES STAGIAIRES......")
Console.WriteLine("3...AJOUTER UN STAGIAIRE......")
Console.WriteLine("4...SUPPRIMER UN STAGIAIRE....")
Console.WriteLine("5...MODIFIER UN STAGIAIRE.....")
Console.WriteLine("6...RECHERCHER UN STAGIAIRE...")
Console.WriteLine("7...TRIER ET CLASSER LES
STAGIAIRES......")
Console.WriteLine("8...QUITTER L'APPLICATION.....")
Console.WriteLine(" ...TAPER VOTRE CHOIX.........")
End Sub
Function saisie(ByRef t() As Stagiaire) As Stagiaire()
Dim nb As String
Console.WriteLine("donner le nbre de stagiaiares a
saiair")
nb = Console.ReadLine
ReDim Preserve t(nb - 1)
For i As Integer = 0 To t.GetUpperBound(0)
Console.WriteLine("entrez le numero d'etudiant " &
(i + 1) & ":")
t(i).num = Console.ReadLine
Console.WriteLine("entrez le nom etudiant " & (i +
1) & ":")
t(i).nom = Console.ReadLine
Console.WriteLine("entrez note1 d'etudiant " & (i +
1) & ":")
t(i).note1 = Console.ReadLine
Console.WriteLine("entrez note2 d'etudiant " & (i +
1) & ":")
t(i).note2 = Console.ReadLine
Console.WriteLine("entrez note3 d'etudiant " & (i +
1) & ":")
t(i).note3 = Console.ReadLine
t(i).moyenne = Math.Round((t(i).note1 + t(i).note2 +
t(i).note3) / 3, 2)
If t(i).moyenne >= 10 Then
t(i).decision = "Admis"
Else
t(i).decision = "Elimine"
End If
Next
Return t
End Function
Function tri(ByRef t() As Stagiaire) As Stagiaire()
'TRI
For i As Integer = 0 To t.GetUpperBound(0) - 1
For j As Integer = i + 1 To t.GetUpperBound(0)
If t(i).moyenne < t(j).moyenne Then
st = t(i)
t(i) = t(j)
t(j) = st
End If
Next
Next
'CLASSEMENT
t(0).classement = "1"
For i As Integer = 1 To t.GetUpperBound(0)
If t(i).moyenne = t(i - 1).moyenne Then
t(i).classement = t(i - 1).classement
Else
t(i).classement = i + 1
End If
Next
Return t
End Function
Sub Affichage(ByRef t() As Stagiaire)
For i As Integer = 0 To t.GetUpperBound(0)
Console.WriteLine(t(i).num & vbTab & t(i).nom & vbTab
& t(i).note1 & vbTab & t(i).note2 & vbTab & t(i).note3 _
& vbTab & t(i).moyenne & vbTab & t(i).classement &
vbTab & t(i).decision)
Next
End Sub
Function ajouter(ByRef t() As Stagiaire) As Stagiaire()
ReDim Preserve t(t.GetUpperBound(0) + 1)
Dim i As Integer = t.GetUpperBound(0)
Console.WriteLine("entrez le numero d'etudiant " & (i +
1) & ":")
t(i).num = Console.ReadLine
Console.WriteLine("entrez le nom etudiant " & (i + 1) &
":")
t(i).nom = Console.ReadLine
Console.WriteLine("entrez note1 d'etudiant " & (i + 1) &
":")
t(i).note1 = Console.ReadLine