programme .pdf


Nom original: programme.pdfTitre: new 2Auteur: NMAILLET

Ce document au format PDF 1.4 a été généré par PrimoPDF http://www.primopdf.com / PrimoPDF, et a été envoyé sur fichier-pdf.fr le 06/05/2014 à 14:00, depuis l'adresse IP 213.56.x.x. La présente page de téléchargement du fichier a été vue 482 fois.
Taille du document: 63 Ko (3 pages).
Confidentialité: fichier public


Aperçu du document


new 2

mardi 6 mai 2014 11:19

Module Programme
'
'
'
'
'
'

Le programme est divisé en REGIONS :
REGION " VARIABLES ET CLASSES "
REGION " PROGRAMME PRINCIPAL "
REGION " FONCTIONS "
REGION " EXCEL "
Il lance au démarrage le module "Main" dans la region " PROGRAMME PRINCIPAL "

#Region "VARIABLES ET CLASSES"
'
La classe CChapitre est la coquille vide permettant de construire un chapitre
'
Un chapitre est composé de :
'
1. Un numéro de chapitre qui permets de le localiser
: Identifiant
'
2. Un texte de chapitre
: Texte
'
3. Une liste de choix possibles pour aller a un autre chapitre
: Choix
'
Suite a ceci, pour créer un chapitre on doit créer une routine nommée NEW
Public Class CChapitre
Public Identifiant As Integer
Public Texte As String
Public Choix As New System.Collections.Generic.List(Of Integer)
'
Le New de base, obligatoire c'est comme ca...
Public Sub New()
End Sub
'
Le New qui m'interesse et qui sera utilisé pour ajouter un chapitre
Public Sub New(ByVal NouvelIdentifiant As Integer, ByVal NouveauTexte As String,
ByVal ListeDeChoix() As Integer)
Me.Identifiant = NouvelIdentifiant
Me.Texte = NouveauTexte
For Each Val As Integer In ListeDeChoix
Me.Choix.Add(Val)
Next
End Sub
End Class
'
La classe CHistoire est un ensemble de chapitre dont le nombre est indéterminée ->
une "List Of Chapitre"
'
Donc je créé une liste de chapitre extensible prête a recevoir l'histoire
Private Histoire As New System.Collections.Generic.List(Of CChapitre)
#End Region
#Region " PROGRAMME PRINCIPAL "
'
La sub Main est le premier module lancé par le programme
Sub Main()
' Voici la liste des variables du module MAIN
Dim ToucheClavier As String = Nothing
Dim ChapitreActif As CChapitre = Nothing
'

On charge le fichier Excel contenant l'histoire dans la classe Histoire
-1-

new 2

mardi 6 mai 2014 11:19

Chargement_Fichier("c:\histoire.txt")
'
On charge le premier chapitre !
ChapitreActif = TrouveUnChapitre(0)
'
On rentre dans une boucle d'histoire
'
Et on tourne tant que ce n'est pas terminé !
'
Si le ChapitreActif est a 999 alors on a terminé l'histoire avec succès
Do While Not ChapitreActif.Identifiant = 999
'
1. On affiche le texte du Chapitre Actif
System.Console.Write(ChapitreActif.Texte)
ToucheClavier = Nothing
'
2. On attends le choix du joueur et on controle qu'il n'écrive pas de bétises
Do While ControleClavier(ToucheClavier, ChapitreActif.Choix.Count) = False
System.Console.WriteLine(Microsoft.VisualBasic.vbCrLf & "Votre choix ? ")
ToucheClavier = System.Console.ReadLine()
Loop
'
4. On mets a jour le chapitre actif et on boucle
ChapitreActif = TrouveUnChapitre(ChapitreActif.Choix(CInt(ToucheClavier)))
Loop
'
C'est fini, bye bye !
System.Console.Write(ChapitreActif.Texte)
End
End Sub
#End Region
#Region " FONCTIONS "

'
Voici une fonction qui controle les erreurs au niveau des touches
'
1. Je controle si c'est une valeur numérique
'
2. Ensuite je controle si c'est un numéro possible
Public Function ControleClavier(ByVal Touche As String, ByVal Max As Integer) As Boolean
Dim ret As Boolean = False
If Microsoft.VisualBasic.IsNumeric(Touche) Then
If CInt(Touche) > 0 AndAlso CInt(Touche) < Max Then
ret = True
End If
End If
Return ret
End Function
'
Voici une fonction qui cherche le nouveau chapitre a utiliser
'
Il scanne tous les chapitres et s'arrête quand il trouve le bon
'
Ce n'est pas le code le plus rapide et optimisé mais le plus simple à appréhender
Public Function TrouveUnChapitre(ByVal NumeroDeChapitre As Integer) As CChapitre
-2-

new 2

mardi 6 mai 2014 11:19

Dim ret As CChapitre = Nothing
For Each Chapitre As CChapitre In Histoire
If Chapitre.Identifiant = NumeroDeChapitre Then
ret = Chapitre
Exit For
End If
Next
Return ret
End Function
#End Region
#Region " CHARGEUR FICHIER "
Public Sub Chargement_Fichier(ByVal NomFichierTexte As String)
'
Je charge le fichier texte délimité par des tabulations
Dim FichierTexte As New Microsoft.VisualBasic.FileIO.TextFieldParser (NomFichierTexte)
FichierTexte.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited
FichierTexte.Delimiters = New String() {Microsoft.VisualBasic.vbTab}
'
Je boucle le fichier tant qu'il y a des lignes a lire
While Not FichierTexte.EndOfData
'
Je charge la ligne dans un tableau nommé "LigneEnCours"
Dim LigneEnCours As String() = FichierTexte.ReadFields()
'
Je vérifie juste que je ne suis pas sur la première ligne !
If Not LigneEnCours(0) = "Numero" Then
'
Je récupère les choix dispos
Dim Choix(5) As Integer
For i As Integer = 2 To 6
If Not (LigneEnCours(i)) = "" Then
Choix(i - 1) = CInt(LigneEnCours(i))
Else
ReDim Preserve Choix(i - 2)
Exit For
End If
Next
'
J'ajoute le chapitre a l'histoire !
Histoire.Add(New CChapitre(CInt(LigneEnCours(0)), LigneEnCours(1), Choix))
End If
End While
End Sub
#End Region
End Module
-3-


Aperçu du document programme.pdf - page 1/3

Aperçu du document programme.pdf - page 2/3

Aperçu du document programme.pdf - page 3/3




Télécharger le fichier (PDF)


programme.pdf (PDF, 63 Ko)

Télécharger
Formats alternatifs: ZIP Texte




Documents similaires


programme
array exemple
les bases du langage pascal
fiche4 ex sous programme
ch5
compterenduvisiteurcs

Sur le même sujet..




🚀  Page générée en 0.01s