Exercice VB: sommation

Objectif :

Travailler avec les Fonctions et les Tableaux ; 

Travail à Faire :

  1. Ecrire une fonction sommation (t() as integer) as integer qui rend la somme de tous les éléments du tableau t.
  2. Ecrire un sous-programme appel-sommation () qui crée et initialise un tableau en demandant à l’utilisateur la taille du tableau à créer et les di?érentes valeurs à y ranger. Cet algorithme fera ensuite appel à la fonction sommation et a?chera son résultat.
2345678910111213141516171819201.Public Function sommation(t() As Integer) As IntegerDim s As Integer, i As Integers = 0For i = LBound(t) To UBound(t)s = s + t(i)Nextsommation = sEnd Function2.Public Sub appel_sommation()Dim t() As Integer, n As Integer, i As Integern = InputBox("Taille du tableau ?")ReDim t(1 To n)For i = 1 To nt(i) = InputBox("Valeur t(" & i & ") ?")NextMsgBox ("Somme des ´el´ements du tableau = " & sommation(t))End Sub

Exercice VB: sommation

Objectif :

Travailler avec les Fonctions et les Tableaux ;

Travail à Faire :

  1. Ecrire une fonction sommation (t() as integer) as integer qui rend la somme de tous les éléments du tableau t.
  2. Ecrire un sous-programme appel-sommation () qui crée et initialise un tableau en demandant à l’utilisateur la taille du tableau à créer et les di?érentes valeurs à y ranger. Cet algorithme fera ensuite appel à la fonction sommation et a?chera son résultat.
12345678910111213141516171819201.Public Function sommation(t() As Integer) As IntegerDim s As Integer, i As Integers = 0For i = LBound(t) To UBound(t)s = s + t(i)Nextsommation = sEnd Function2.Public Sub appel_sommation()Dim t() As Integer, n As Integer, i As Integern = InputBox("Taille du tableau ?")ReDim t(1 To n)For i = 1 To nt(i) = InputBox("Valeur t(" & i & ") ?")NextMsgBox ("Somme des ´el´ements du tableau = " & sommation(t))End Sub

Exercice VB: Calcule dans un tableau à une seule dimension

Objectif:

Travailler avec Les tableaux à une seule dimension

Travail à Faire :

  1. Soit T un tableau de N réels. Ecrire le programme qui permet de calculer le nombre des occurrences d’un nombre X (c'est-à-dire combien de fois ce nombre X figure dans le tableau T).
  2. Ecrire un algorithme qui calcule le nombre d'entiers pairs et le nombre d'entiers impairs d'un tableau d'entiers.
  3. Soit un tableau T(n), écrire un algorithme qui calcule VMEP (valeur moyenne des éléments positifs), VMEN (valeur moyenne des éléments négatifs) et NEM (nombre d'éléments nuls).
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687881.Module Module1Dim i, Cpt, n As IntegerDim X As IntegerSub Main()Cpt = 0Console.Write("Entrez le nombre X : ")X = Console.ReadLineConsole.Write("Entrez la taille du tableau : ")n = Console.ReadLineDim T(n) As DoubleFor i = 1 To nConsole.Write("Entrez l'élément n° " & i & " : ")T(i) = Console.ReadLineIf T(i) = X ThenCpt += 1End IfNextConsole.WriteLine("Le nombre d’occurrences de X est : " & Cpt)Console.ReadLine()End SubEnd Module2.Module Module1Dim n, i, nbP, nbImp As IntegerSub Main()nbImp = 0nbP = 0Console.Write("Entrez la taille du tableau : ")n = Console.ReadLineDim T(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ") = ")t(i) = Console.ReadLineNextFor i = 0 To n - 1If T(i) Mod 2 = 0 ThennbP += 1ElsenbImp += 1End IfNextConsole.WriteLine("Le nombre d'entiers impairs est: " & nbImp)Console.WriteLine("Le nombre d'entiers pairs est: " & nbP)Console.ReadLine()End SubEnd Module3.Module Module1Dim n, i, nbPos, nbNeg, Vmoy_Pos, Vmoy_Neg, nbNull, Som_Pos, Som_NegAs DoubleSub Main()nbPos = 0nbNeg = 0nbNull = 0Som_Pos = 0Som_Neg = 0Console.Write("Entrez la taille du tableau : ")n = Console.ReadLineDim T(n) As DoubleFor i = 0 To n - 1Console.Write("t(" & i + 1 & ") = ")t(i) = Console.ReadLineNextFor i = 0 To n - 1If T(i) = 0 ThennbNull += 1ElseIf T(i) > 0 ThennbPos += 1Som_Pos += T(i)ElsenbNeg += 1Som_Neg += T(i)End IfNextVmoy_Pos = Som_Pos / nbPosVmoy_Neg = Som_Neg / nbNegConsole.WriteLine("Le nombre d'éléments nuls est : " & nbNull)Console.WriteLine("La valeur moyenne des éléments positifs est: "& Vmoy_Pos)Console.WriteLine("La valeur moyenne des éléments négatifs est: "& Vmoy_Neg)Console.ReadLine()End SubEnd Module

Exercice VB: Manipulation de Tableau à une seul dimension

Ecrire le code VB qui permet de faire :

1-      Créer un tableau avec la méthode Randomize

2-      Tri à Bulle

3-      Tri par permutation

4-      Tri par Insertion

5-      Tri par Sélection

6-      Affichage du contenu de tableau

7-      Ajouter un nouveau Elément au tableau

8-      La Recherche dichotomique

9-      Un Menu de Choix

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181Module module1 Dim tab(9) As Integer Dim pos As Integer Dim element As Integer Sub menu() Console.WriteLine("*MENU DE CHOIX ((((Exercice Tableau))))*") Console.WriteLine(" 1. ***RANDOMIZER*** ") Console.WriteLine(" 2.***TRI_PAR_BULLE*** ") Console.WriteLine(" 3.***AFFICHAGE*** ") Console.WriteLine(" 4.***TRI_PAR_PERMUTATION***") Console.WriteLine(" 5.***TRI_PAR_INSERTION***") Console.WriteLine(" 6.***TRI_PAR_SELECTION***") Console.WriteLine(" 7.***AJOUTER NOUVEAU ELEMENT***") Console.WriteLine(" 8.***RECHERCHE_ DICHOTOMIQUE***") End Sub Sub Main() menu() Dim rep As Boolean Do Dim choise As Integer Console.WriteLine(" QUEL EST VOTRE CHOIX ?") choise = Console.ReadLine Select Case choise Case 1 randomize() Case 2 tri_par_bulle() Case 3 affichage() Case 4 tri_par_permutation() Case 5 tri_par_insertion() Case 6 tri_selection() Case 7 ajout(tab, element, pos) Case 8 recherche_dichotomique() Case Else Console.WriteLine(" CE CHOIX N'EST PAS TRAITé ") End Select Loop While (rep = False) Console.ReadLine() End Sub Sub tri_par_bulle() Dim inversion As Boolean Dim tampon As String Do inversion = False For i As Integer = 0 To 8 If tab(i + 1) tab(i) Then tampon = tab(i) tab(i) = tab(i + 1) tab(i + 1) = tampon inversion = True End If Next Loop Until inversion = False affichage() End Sub Sub affichage() For i = 0 To 9 Console.Write(tab(i) & " ") Next Console.WriteLine() End Sub Sub randomize() For i As Integer = 0 To 9 tab(i) = Rnd() * 100 Next For Each cellule In tab Console.Write(cellule & vbTab) Next End Sub Sub tri_par_permutation() Dim j As Integer Dim tampon As Integer Dim K As Integer For i = 0 To 7 If tab(i + 1) tab(i) Then tampon = tab(i + 1) j = 0 While (j ) And (tab(j) tab(i + 1)) j = j + 1 End While For K = (i + j) To (j + 1) tab(K) = tab(K - 1) Next tab(j) = tampon End If Next affichage() End Sub Sub tri_par_insertion() Dim tampon As Integer For i As Integer = 0 To 8 For j As Integer = i + 1 To 9 If tab(i) > tab(j) Then tampon = tab(i) tab(i) = tab(j) tab(j) = tampon End If Next Next affichage() End Sub Sub recherche_dichotomique() Dim val, mil, debut, fin As Integer Dim find As Boolean find = False debut = 0 fin = 9 Console.WriteLine("entrez l'element recherchez") val = Console.ReadLine While debut = fin And find = False mil = debut + ((fin - debut) / 2) If tab(mil) = val Then find = True Console.WriteLine() ElseIf tab(mil) val Then debut = debut + 1 Else fin = mil - 1 End If End While If find = True Then Console.WriteLine("existe") Else Console.WriteLine("n'existe pas") End If End Sub Sub tri_selection() Dim petit As Integer Dim position As Integer Dim j As Integer Dim i As Integer For i = 0 To 8 petit = tab(i) For j = i To 9 If tab(j) Then petit = tab(j) position = j End If Next For j = position To i + 1 Step -1 tab(j) = tab(j - 1) Next tab(i) = petit Next affichage() End Sub Sub ajout(ByRef tab() As Integer, ByVal pos As Integer, ByVal element As Integer) Dim rep As String Dim i As Integer Console.WriteLine("voulez vous ajouter un nombre o/n ") rep = Console.ReadLine() If rep = "n" Then Console.WriteLine(" merci de votre participation") ElseIf rep = "o" Then Console.WriteLine("entrez l'élement que vous voulez") element = Console.ReadLine ReDim Preserve tab(i + 1) Console.WriteLine(" entrez la possiton que vous voulez") pos = Console.ReadLine pos = element End If affichage() End SubEnd Module

Exercice VB: Opérations sur un tableau à 1 seul Dimension

Objectif:

Travailler avec Les tableaux à une seule dimension


Travail à Faire :

1. Ecrire un Programme qui renverse un tableau (Si le tableau est trié en ordre croissant, il devient trié par ordre décroissant).

2. Ecrire un Programme qui insère un élément donné X à la position K d'un tableau.

3. Soit T un tableau rangés dans l'ordre croissant. Ecrire un Programme qui insère un élément donné X dans le tableau T en respectant l'ordre croissant?

4. Donner un Programme pour supprimer un élément donné d'un tableau d'entiers.

6. Donner un Programme qui prend en argument un tableau d'entiers de taille n et qui le modifie de tels sorts que tous les entiers pairs se retrouvent avant les entiers impairs.

Exemple :

Au départ : T = 7 4 7 8 4 6 3 9 4.

Après modification : T = 4 8 4 6 6 7 7 3 9.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361.Module Module1Dim i, n As IntegerSub main()Console.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n), tcopy(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ")=")t(i) = Console.ReadLineNextFor i = 0 To n - 1tcopy(i) = t(n - 1 - i)Console.Write(tcopy(i) & " ")NextConsole.ReadLine()End SubEnd Module2.Module Module1Dim n, i, x, pos, temp As IntegerSub Main()Console.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ") = ")t(i) = Console.ReadLineNextn = n + 1Console.Write("Entre l'élément à ajouter : ")x = Console.ReadLineConsole.WriteLine(" ")Console.Write("Entre sa position : ")pos = Console.ReadLineFor i = pos To n - 1temp = t(i)t(i) = xx = tempNextFor i = 0 To n - 1Console.Write(t(i) & " ")NextConsole.ReadLine()End SubEnd Module3.Module Module1Sub Main()Dim i, n, x, j, temp As IntegerConsole.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ") = ")t(i) = Console.ReadLineNextn += 1Console.Write("Entrez le numero à ajouter : ")x = Console.ReadLinet(i) = xFor i = n - 1 To 1 Step -1For j = 1 To iIf t(j - 1) > t(j) Thentemp = t(j)t(j) = t(j - 1)t(j - 1) = tempEnd IfNextNextFor i = 0 To n - 1Console.Write(t(i) & " ")NextConsole.ReadLine()End SubEnd Module4.Module Module1Sub Main()Dim i, pos, n, x As IntegerConsole.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ")=")t(i) = Console.ReadLineNextConsole.Write("Entrez l'élément à supprimé : ")x = Console.ReadLineFor i = 0 To n - 1If x = t(i) Thenpos = iEnd IfNextFor i = pos To n - 1t(i) = t(i + 1)NextFor i = 0 To n - 2Console.Write(t(i) & " ")NextConsole.ReadLine()End SubEnd Module6.Module Module1Dim n, c, i As IntegerSub Main()Console.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n), taff(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ") = ")t(i) = Console.ReadLineNextc = 0For i = 0 To n - 1If t(i) Mod 2 = 0 Thentaff(c) = t(i)IfNextFor i = 0 To n - 1If t(i) Mod 2 0 Thentaff(c) = t(i)c += 1End IfNextFor i = 0 To n - 1Console.Write(taff(i) & " ")NextConsole.ReadLine()End SubEnd Module

Exercice VB: choix de Pays

Travail à Faire :

Ecrire le code qui permet de réaliser l’interface qui contient les données suivantes :

  • Une  liste de choix de pays (Liste déroulante, Combobox) contenant des pays .
  • Les villes du pays choisi s’affichent dans une zone d’affichage (Listeboxe, Datagride, Listeview…).
  • Une zone de texte permet à l’utilisateur d’ajouter une ville à un pays sélectionné
  • Une Boutton ajouter qui exécute l’instruction précédente
  • Une Boutton supprimer qui permet de supprimer une ville dans un pays
  • Une Boutton quitter qui permet de quitter le programme

L’interface est la suivante :

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172Public Class Form1 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim dedans As Boolean For x = 0 To ListBox1.Items.Count - 1 If TextBox1.Text = ListBox1.Items.Item(x) Then dedans = True End If Next If dedans = False Then ListBox1.Items.Add(TextBox1.Text) End If End Sub Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged If ComboBox1.Text = "Maroc" Then ListBox1.Items.Clear() ListBox1.Items.Add("rabat") ListBox1.Items.Add("Marrakech") ElseIf ComboBox1.Text = "France" Then ListBox1.Items.Clear() ListBox1.Items.Add("Paris") ElseIf ComboBox1.Text = "USA" Then ListBox1.Items.Clear() ListBox1.Items.Add("Washington") End If End Sub Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged End Sub Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click End End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Me.ListBox1.Items.Remove(Me.ListBox1.SelectedItem) End Sub Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click End Sub Private Sub Label3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label3.Click Dim Label3 As New Label() Dim Image1 As Image Image1 = Image.FromFile("D:\tout dossier nazihaphotossCARTE POSTALE\1_505881_1_34") Label3.Image = Image1 End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ComboBox1.Items.Add("Maroc") ComboBox1.Items.Add("France") ComboBox1.Items.Add("USA") ComboBox1.Items.Add("Germany") ComboBox1.Items.Add("Egypt") ComboBox1.Items.Add("Espagne") ComboBox1.Items.Add("Brisil") ComboBox1.Items.Add("Chine") ComboBox1.Items.Add("India") ComboBox1.Items.Add("Tunisi") ComboBox1.Items.Add("Itali") ComboBox1.Items.Add("Canada") End SubEnd Class

Exercice VB: Calculatrice Simplifié

Ecrire le programme qui permet de réaliser l'interface suivante:



123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123Public Class calculatrice Dim stock, result As Integer Dim op Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles sept.Click sept.Text = "7" TextBox1.Text = TextBox1.Text & sept.Text End Sub Private Sub deux_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles deux.Click deux.Text = "2" TextBox1.Text = TextBox1.Text & deux.Text End Sub Private Sub trois_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles trois.Click trois.Text = "3" TextBox1.Text = TextBox1.Text & trois.Text End Sub Private Sub ktr_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ktr.Click ktr.Text = "4" TextBox1.Text = TextBox1.Text & ktr.Text End Sub Private Sub cinq_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cinq.Click cinq.Text = "5" TextBox1.Text = TextBox1.Text & cinq.Text End Sub Private Sub six_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles six.Click six.Text = "6" TextBox1.Text = TextBox1.Text & six.Text End Sub Private Sub huit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles huit.Click huit.Text = "8" TextBox1.Text = TextBox1.Text & huit.Text End Sub Private Sub neuf_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles neuf.Click neuf.Text = "9" TextBox1.Text = TextBox1.Text & neuf.Text End Sub Private Sub un_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles un.Click un.Text = "1" TextBox1.Text = TextBox1.Text & un.Text End Sub Private Sub zero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles zero.Click zero.Text = "0" TextBox1.Text = TextBox1.Text & zero.Text End Sub Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click TextBox1.Text = "" End Sub Private Sub virgul_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles virgul.Click virgul.Text = "," TextBox1.Text = TextBox1.Text & virgul.Text End Sub Private Sub Button17_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button17.Click stock = TextBox1.Text TextBox1.Text = "" op = "+" End Sub Private Sub Button18_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles egal.Click If op = "+" Then TextBox1.Text = Trim(Val(TextBox1.Text)) + stock ElseIf op = "-" Then TextBox1.Text = stock - Trim(Val(TextBox1.Text)) ElseIf op = "*" Then TextBox1.Text = Trim(Val(TextBox1.Text)) * stock ElseIf op = "/" Then TextBox1.Text = stock / Trim(Val(TextBox1.Text)) End If End Sub Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click stock = TextBox1.Text TextBox1.Text = "" op = "-" End Sub Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click stock = TextBox1.Text TextBox1.Text = "" op = "*" End Sub Private Sub Button14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button14.Click stock = TextBox1.Text TextBox1.Text = "" op = "/" End Sub Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles retourne.Click TextBox1.Text = Mid(TextBox1.Text, 1, (Len(TextBox1.Text) - 1)) TextBox1.Text = Val(TextBox1.Text) End Sub Private Sub moinplus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles moinplus.Click If Val(TextBox1.Text) Then TextBox1.Text = Val(TextBox1.Text) * (-1) Else TextBox1.Text = Val(TextBox1.Text) * (-1) End If End Sub Private Sub racine_Click_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles racine.Click TextBox1.Text = Math.Sqrt(Val(TextBox1.Text)) End Sub Private Sub por_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles por.Click TextBox1.Text = Val(TextBox1.Text) * 1 / 100 End Sub Private Sub carré_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles carré.Click TextBox1.Text = Val(TextBox1.Text) * Val(TextBox1.Text) End SubEnd Class

Exercice VB: Séquence

Objectif:

Travailler avec Les tableaux à une seule dimension

Travail à Faire :

1. On considère une séquence d'entiers représentée dans un tableau. Ecrire un Programme qui affiche la valeur du dernier entier de la séquence.

2. On considère une séquence de durées représentée dans un tableau. Ecrire un Programme qui lit une durée D, et qui affiche la petite durée supérieur à D, présente dans la séquence.

L'Programme est décomposé en deux étapes : recherche de la première durée supérieure à D, puis calcul du résultat par un parcours de la fin de séquence.

3. On considère une séquence d'entiers représentée dans un tableau. Ecrire un Programme qui affiche un message indiquant si la séquence comporte que des entiers positifs.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576771.Module Module1Dim i, V, n As IntegerSub Main()Console.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ")=")t(i) = Console.ReadLineNextV = t(n - 1)Console.Write("La valeur du dernier entier de la séquence est : "& V)Console.ReadLine()End SubEnd Module2.Module Module1Sub Main()Dim i, n, x, d, min As IntegerConsole.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n), td(x) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ")=")t(i) = Console.ReadLineNextx = -1Console.Write("D = ")d = Console.ReadLineFor i = 0 To n - 1If t(i) > d Thenx = x + 1ReDim Preserve td(x)td(x) = t(i)End IfNextmin = td(0)For i = 0 To td.Length - 1If td(i) Thenmin = td(i)End IfNextConsole.Write("La petite durée supérieur à D est : " & min)Console.ReadLine()End SubEnd Module3.Module Module1Dim i, n As IntegerDim Test As Boolean = TrueSub Main()Console.Write("Entrez la taille du Tableau : ")n = Console.ReadLineDim t(n) As IntegerFor i = 0 To n - 1Console.Write("t(" & i + 1 & ")=")t(i) = Console.ReadLineNextFor i = 0 To n - 1If t(i) 0 ThenTest = FalseEnd IfNextIf Test = True ThenConsole.WriteLine("La séquence comporte que des entierspositifs.")ElseConsole.WriteLine("La séquence ne comporte pas que desentiers positifs.")End IfConsole.ReadLine()End SubEnd Module

Exercice VB: Tableau à deux dimensions

Ecrire le code VB qui permet de :

1-      Créer un tableau qui conteint les Informations des Etudients

2-      Trier le Tableau

3-      Affichage du contenu de tableau

4-      Ajouter un nouveau Etudiant au tableau

5-      Supprimer un Etudiant existant dans le Tableau

6-      La Recherche d’un Etudiant

7-      Ajouter une Case au Tableau qui contient la décision selon la Moyenne Générale : si la moyenne >= 10 alors l'étudiant est Admis si non il est Eliminé

8-      Un Menu de Choix

Pour vous aider on doit remplire le Tableau comme suit:

La Première case du tableau contient le numéro de l’étudiant

La Deuxième case du tableau contient le nom de l’étudiant

La Troisième case du tableau contient le Prénom de l’étudiant

La Quatrième case du tableau contient la 1er note de l’étudiant

La Cinquième case du tableau contient la 2ème note de l’étudiant

La Sixième case du tableau contient la 3ème note de l’étudiant

La Septième case du tableau contient la Moyenne générale de l’étudiant 

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170Module Module1 Dim tab(,) As String Dim nb As Integer Public Sub Menu() Console.WriteLine(".*..*..*.APPLICATIONS POUR LES TABLEAUX A 2 DIMENSIONS.*..*..*.") Console.WriteLine(".*.1.Créer le Tableau.*.") Console.WriteLine(".*.2.Trier le Tableau.*.") Console.WriteLine(".*.3.Afficher le Tableau.*.") Console.WriteLine(".*.4.Ajouter dans le Tableau.*.") Console.WriteLine(".*.5.Supprimer du Tableau.*.") Console.WriteLine(".*.6.Rechercher dans le Tableau.*.") Console.WriteLine(".*.7.Classement et Décisions.*.") End Sub Sub Main() Dim rep As String Do Menu() Dim choix As Integer Console.WriteLine("Taper votre choix") choix = Console.ReadLine Select Case choix Case 1 Console.WriteLine("saisir la dimension de votre tableau") nb = Console.ReadLine() ReDim tab(nb, 8) tab = Saisie() Case 2 tab = Tri(tab) Case 3 Affichage(tab) Case 4 tab = Ajout(tab) Case 5 Dim numsupp As Integer Console.WriteLine("saisir le numero de l'etudiant à supprimer") numsupp = Console.ReadLine tab = Suppression(tab, numsupp) Case 6 Dim numRech As Integer Console.WriteLine("saisir le numero de l'etudiant à rechercher") numRech = Console.ReadLine AfficheRecherche(tab, numRech) Case 7 tab = Classement(tab) Case Else Console.WriteLine("ce choix n'est pas traité") End Select Console.WriteLine("Voulez vous continuez O/N ") rep = Console.ReadLine().ToUpper Loop While (rep.Equals("O")) End Sub Public Function Saisie() As String(,) For i As Integer = 0 To tab.GetUpperBound(0) - 1 'on arrête la saisie avant la derniere ligne Console.WriteLine("saisir le numero de l'etudiant " & i + 1) tab(i, 0) = Console.ReadLine Console.WriteLine("saisir le nom de l'etudiant " & i + 1) tab(i, 1) = Console.ReadLine() Console.WriteLine("saisir le prenom de l'etudiant " & i + 1) tab(i, 2) = Console.ReadLine() Console.WriteLine("saisir la note 1 de l'etudiant " & i + 1) tab(i, 3) = Console.ReadLine() Console.WriteLine("saisir la note 2 de l'etudiant " & i + 1) tab(i, 4) = Console.ReadLine() Console.WriteLine("saisir la note 3 de l'etudiant " & i + 1) tab(i, 5) = Console.ReadLine() tab(i, 6) = ((Double.Parse(tab(i, 3)) + Double.Parse(tab(i, 4)) + Double.Parse(tab(i, 5))) / 3).ToString Next Return tab End Function Public Sub Affichage(ByRef t(,) As String) For i As Integer = 0 To t.GetUpperBound(0) - 1 'on n'affiche pas la derniere ligne For j As Integer = 0 To t.GetUpperBound(1) Console.Write(t(i, j) & " ") Next Console.WriteLine("") Console.WriteLine("") Next End Sub Public Function Tri(ByRef t(,) As String) As String(,) For i As Integer = 0 To t.GetUpperBound(0) - 1 For j As Integer = i + 1 To t.GetUpperBound(0) If CType(t(i, 6), Double) CType(t(j, 6), Double) Then For k As Integer = 0 To t.GetUpperBound(1) t(t.GetUpperBound(0), k) = t(i, k) t(i, k) = t(j, k) t(j, k) = t(t.GetUpperBound(0), k) Next End If Next Next Return t End Function Public Function Ajout(ByRef t(,) As String) As String(,) Dim t1(t.GetUpperBound(0) + 1, 8) As String For i As Integer = 0 To t.GetUpperBound(0) - 1 For j As Integer = 0 To t.GetUpperBound(1) t1(i, j) = t(i, j) Next Next Console.WriteLine("saisir le numero de l'etudiant à ajouter ") t1(t1.GetUpperBound(0) - 1, 0) = Console.ReadLine Console.WriteLine("saisir le nom de l'etudiant à ajouter ") t1(t1.GetUpperBound(0) - 1, 1) = Console.ReadLine() Console.WriteLine("saisir le prenom de l'etudiant à ajouter ") t1(t1.GetUpperBound(0) - 1, 2) = Console.ReadLine() Console.WriteLine("saisir la note 1 de l'etudiant à ajouter ") t1(t1.GetUpperBound(0) - 1, 3) = Console.ReadLine() Console.WriteLine("saisir la note 2 de l'etudiant à ajouter ") t1(t1.GetUpperBound(0) - 1, 4) = Console.ReadLine() Console.WriteLine("saisir la note 3 de l'etudiant à ajouter ") t1(t1.GetUpperBound(0) - 1, 5) = Console.ReadLine() t1(t1.GetUpperBound(0) - 1, 6) = ((Double.Parse(t1(t1.GetUpperBound(0) - 1, 3)) + Double.Parse(t1(t1.GetUpperBound(0) - 1, 4)) + Double.Parse(t1(t1.GetUpperBound(0) - 1, 5))) / 3).ToString Return t1 End Function Public Function Suppression(ByRef t(,) As String, ByVal element As Integer) As String(,) Dim pos As Integer = Recherche(t, element) Dim t1(t.GetUpperBound(0) - 1, 8) As String If pos -1 Then For i As Integer = 0 To t.GetUpperBound(0) - 1 For j As Integer = 0 To t.GetUpperBound(1) If t(i, 0) element Then t1(i, j) = t(i, j) Else : t1(i, j) = t(i + 1, j) End If Next Next End If Return t1 End Function Public Function Recherche(ByRef t(,) As String, ByVal element As Integer) As Integer Dim pos As Integer = -1 For i As Integer = 0 To t.GetUpperBound(0) If t(i, 0) = element Then pos = i End If Next Return pos End Function Public Sub AfficheRecherche(ByRef t(,) As String, ByVal element As Integer) Dim pos As Integer = Recherche(t, element) If pos -1 Then For i As Integer = 0 To t.GetUpperBound(1) Console.Write(t(pos, i) & " ") Next Console.WriteLine() Else Console.WriteLine("l'element recherché n'existe pas") End If End Sub Public Function Classement(ByVal t(,) As String) As String(,) t(0, 7) = CType(1, String) For i As Integer = 1 To t.GetUpperBound(0) - 1 If Double.Parse(t(i - 1, 6)) = Double.Parse(t(i, 6)) Then t(i, 7) = t(i - 1, 7) Else : t(i, 7) = CType(i + 1, String) End If Next For i As Integer = 0 To t.GetUpperBound(0) - 1 If Double.Parse(t(i, 6)) >= 10 Then t(i, 8) = "Admis" Else : t(i, 8) = "Eliminé" End If Next Return t End FunctionEnd Module
Article publié le 04 Janvier 2012 Mise à jour le Jeudi, 15 Décembre 2022 23:08 par Babachekhe Mohamed