samedi 4 octobre 2014

Correction Exercice d'algorithme (Les structures répétitives)

Corrigé :

I.L’instruction Pour :
1.
Module Module1
Dim i, n As Integer
Sub Main()
Console.Write("Entre la valeur de n : ")
n = Console.ReadLine
For i = 1 To 10
Console.WriteLine(n & "x" & i & "=" & n * i)
Next
Console.ReadLine()
End Sub
End Module

2.
Module Module1
Dim i, n, Somme As Integer
Sub Main()
Console.Write("Entre la valeur de n : ")
n = Console.ReadLine
Somme = 0
For i = 1 To n
Somme = Somme + i
Next
Console.Write("La somme est : " & Somme)
Console.ReadLine()
End Sub
End Module

3.
Module Module1
Dim i, n, factoriel As Integer
Sub Main()
Console.Write("Entre la valeur de n : ")
n = Console.ReadLine
factoriel = 1
For i = 1 To n
factoriel = factoriel * i
Next
Console.Write("Le factoriel de " & n & " est : " & factoriel)
Console.ReadLine()
End Sub
End Module

4.
Module Module1
Dim i, n, max, Pmax As Integer
Sub Main()
Console.Write("Entrez le nombre numéro 1 : ")
n = Console.ReadLine
max = n
Pmax = 1
For i = 2 To 20
Console.Write("Entrez le nombre numéro " & i & " : ")
n = Console.ReadLine
If n > max Then
max = n
Pmax = i
End If
Next
Console.WriteLine("Le plus grand nombre est : " & max)
Console.WriteLine("Sa position est : " & Pmax)
Console.ReadLine()
End Sub
End Module

5.
Module Module1
Dim i, a, b, Cpt As Integer
Sub Main()
Console.Write("Entrez un chiffre : ")
a = Console.ReadLine
Cpt = 0
For i = 1 To 20
Console.Write("Entrez un chiffre : ")
b = Console.ReadLine
If a = b Then
Cpt = Cpt + 1
End If
Next
Console.WriteLine("Le nombre de fois de saisie de " & a & " est : " & Cpt)
Console.ReadLine()
End Sub
End Module

6.
Module Module1
Dim i, N As Integer
Dim Y As Double
Sub Main()
Console.Write("Entrez la valeur de N : ")
N = Console.ReadLine
If N >= 20 Then
Y = (N ^ 10)
Else
Y = 1
For i = 1 To N
Y = Y * i
Next
End If
Console.WriteLine("La valeur de Y est : " & Y)
Console.ReadLine()
End Sub
End Module

7.
Module Module1
Dim i, N, S As Integer
Sub Main()
Console.Write("Entrez un nombre : ")
N = Console.ReadLine
For i = 1 To N - 1
If N Mod i = 0 Then
S = S + i
End If
Next
If N = S Then
Console.WriteLine(N & " est parfait")
Else
Console.WriteLine(N & " N'est pas parfait ")
End If
Console.ReadLine()
End Sub
End Module

8.
Module Module1
Dim r, n, i As Integer
Dim test As Boolean = True
Sub Main()
Console.Write("Entrez un nombre : ")
n = Console.ReadLine
If n = 0 Then
Console.WriteLine(" Pas premie")
ElseIf n = 1 Or n = 2 Then
Console.WriteLine(" Premie")
End If
If n >= 3 Then
For i = 2 To n - 1
r = n Mod i
If r = 0 Then
test = False
End If
Next
If test = False Then
Console.WriteLine("Le nombre " & n & " N'est pas Premie")
Else
Console.WriteLine("Le nombre " & n & " Est Premie")
End If
End If
Console.ReadLine()
End Sub
End Module

II.La structure TANT QUE :
1.
Module Module1
Dim a As Integer
Sub Main()
Console.Write("Entrez un nombre compris entre 1 et 3 : ")
a = Console.ReadLine
While a < 1 Or a > 3
Console.Write("SVP,Saisir une valeur comprise entre 1 et 3 :")
a = Console.ReadLine
End While
Console.ReadLine()
End Sub
End Module

2.
Module Module1
Dim a As Integer
Sub Main()
Console.Write("Entrez un nombre compris entre 10 et 20 : ")
a = Console.ReadLine
While a < 10 Or a > 20
If a < 10 Then
Console.WriteLine("Plus grand ! ")
Else
Console.WriteLine("Plus petit ! ")
End If
Console.Write("SVP,Saisir une valeur comprise entre 10 et 20:")
a = Console.ReadLine
End While
Console.ReadLine()
End Sub
End Module


3.
Module Module1
Dim a, i As Integer
Sub Main()
Console.Write("Entrez un nombre : ")
a = Console.ReadLine
i = a + 1
While i <= a + 10
Console.WriteLine(i)
i = i + 1
End While
Console.ReadLine()
End Sub
End Module

4.
Module Module1
Dim i, n, max, Pmax As Integer
Sub Main()
Console.Write("Entrez le nombre numéro 1 : ")
n = Console.ReadLine
max = n
Pmax = 1
i = 1
While n <> 0
i = i + 1
Console.Write("Entrez le nombre numéro " & i & " : ")
n = Console.ReadLine
If n > max Then
max = n
Pmax = i
End If
End While
Console.WriteLine("Le plus grand nombre est : " & max)
Console.WriteLine("Sa position est : " & Pmax)
Console.ReadLine()
End Sub
End Module

5.
Module Module1
Dim prixlu, Somme, mpaye, reste As Integer
Sub Main()
Console.Write("Entrez le prix : ")
prixlu = Console.ReadLine
Somme = Somme + prixlu
While prixlu <> 0
Console.Write("Entrez le prix : ")
prixlu = Console.ReadLine
Somme = Somme + prixlu
End While
Console.Write("Entrez le prix payé : ")
mpaye = Console.ReadLine
reste = mpaye - Somme
Console.WriteLine("Le reste est : " & reste)
Console.ReadLine()
End Sub
End Module

III.La structure REPETER :
1.
Module Module1
Dim a, Compteur As Integer
Dim Reponse As String
Sub Main()
Compteur = 0
Do
Console.Write("Entrez un nombre : ")
a = Console.ReadLine
Compteur = Compteur + 1
Console.Write("Voulez-vous continuez O/N ? : ")
Reponse = Console.ReadLine
Loop Until (Reponse = "n" Or Reponse = "N")
Console.Write("Le nombre de valeurs saisies est : " & Compteur)
Console.ReadLine()
End Sub
End Module

2.
Module Module1
Dim a, Somme, Moyenne, Compteur As Integer
Sub Main()
Compteur = 0
Somme = 0
Do
Console.Write("Entrez un nombre : ")
a = Console.ReadLine
Compteur = Compteur + 1
Somme = Somme + a
Loop Until (a = 0)
Moyenne = Somme / (Compteur - 1)
Console.Write("La moyenne de valeurs saisies est : " & Moyenne)
Console.ReadLine()
End Sub
End Module

3.
Module Module1
Dim a, Npos, Nneg As Integer
Dim Reponse As String
Sub Main()
Npos = 0
Nneg = 0
Do
Console.Write("Entrez un nombre : ")
a = Console.ReadLine
If a > 0 Then
Npos = Npos + 1
ElseIf a < 0 Then
Nneg = Nneg + 1
End If
Console.Write("Voulez-vous continuez O/N ? : ")
Reponse = Console.ReadLine
Loop Until (Reponse = "n" Or Reponse = "N")
Console.WriteLine("Le nombre de valeurs positives saisies est : " & Npos)
Console.WriteLine("Le nombre de valeurs positives saisies est : " & Nneg)
Console.ReadLine()
End Sub
End Module

4.
Module Module1
Dim Caractere, Phrase As String
Sub Main()
Phrase = ""
Do
Console.Write("Entrez une caractère : ")
Caractere = Console.ReadLine
If Caractere = "0" Then
Caractere = " "
End If
Phrase = Phrase + Caractere
Loop Until (Caractere = ".")
Console.WriteLine("La phrase résultante est : " & Phrase)
Console.ReadLine()
End Sub
End Module

1 commentaire: