Fichier PDF

Partage, hébergement, conversion et archivage facile de documents au format PDF

Partager un fichier Mes fichiers Convertir un fichier Boite à outils PDF Recherche PDF Aide Contact



2012 V9 .pdf



Nom original: 2012_V9.pdf
Auteur: HP

Ce document au format PDF 1.5 a été généré par Acrobat PDFMaker 10.1 pour Word / Adobe PDF Library 10.0, et a été envoyé sur fichier-pdf.fr le 25/05/2015 à 20:53, depuis l'adresse IP 41.140.x.x. La présente page de téléchargement du fichier a été vue 399 fois.
Taille du document: 256 Ko (15 pages).
Confidentialité: fichier public




Télécharger le fichier (PDF)









Aperçu du document


Correction Examen_2012_V9
Dossier 2 : POO
1) classe Client
using
using
using
using

System;
System.Collections.Generic;
System.Linq;
System.Text;

namespace Examen_2012_V9_D3
{
public class Client
{
//-----------------Propriété-------------int _numCli;
string _nomCli;
string _prenomCli;
string _adrsCli;
//-----------------Accesseur-------------public int NumCli
{
get { return _numCli; }
set { _numCli = value; }
}
public string NomCli
{
get { return _nomCli; }
set { _nomCli = value; }
}
public string PrenomCli
{
get { return _prenomCli; }
set { _prenomCli = value; }
}
public string AdrsCli
{
get { return _adrsCli; }
set { _adrsCli = value; }
}
//-----------------constructeur-------------// par defaut
public Client()
{
}

Squalli .Med

Page 1

// par initialisation tous les champs
public Client(int NumC, string NC, string PnC, string AdrC)
{
_numCli = NumC;
_nomCli = NC;
_prenomCli = PnC;
_adrsCli = AdrC;
}
public Client( string NC, string PnC, string AdrC)
{
_nomCli = NC;
_prenomCli = PnC;
_adrsCli = AdrC;
}
// par initialisation par num
public Client(int NumC)
{
_numCli = NumC;
}
//-----------------ToString-------------public override string ToString()
{
return _numCli + " " + _nomCli + " " + _prenomCli + " " + _adrsCli;
}

}

}

2) classe Compte
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Examen_2012_V9_D3
{
public abstract class Compte
{
//--------propriétét---------protected int _numCompte;
protected DateTime _dateCompte;
protected double _soldeCompte;
protected Client _propCompte = new Client();
public Client PropCompte
{
get { return _propCompte; }
set { _propCompte = value; }
}

Squalli .Med

Page 2

//--------accesseurs---------public int NumCompte
{
get { return _numCompte; }
set { _numCompte = value; }
}
public DateTime DateCompte
{
get { return _dateCompte; }
set { _dateCompte = value; }
}
public double SoldeCompte
{
get { return _soldeCompte; }
set { _soldeCompte = value; }
}

//--------constructeur---------public Compte()
{
}
public Compte(int num, DateTime d, double s, string NC, string PnC, string AdrC)
{
_numCompte = num;
_dateCompte = d;
_soldeCompte = s;
_propCompte.NomCli = NC;
_propCompte.PrenomCli = NC;
_propCompte.AdrsCli = AdrC;
}
public Compte(int num)
{
_numCompte = num;
}
//------------------------------//--------ToString---------public override string ToString()
{
return "N° Compte : " + _numCompte + "\n Client : \n
Solde : " + _soldeCompte;
}

Squalli .Med

" + _propCompte.ToString() + " \n

Page 3

//--------Equal---------public override bool Equals(object obj)
{
return _numCompte == ((Compte)obj)._numCompte;
}
public override int GetHashCode()
{
return base.GetHashCode();
}
//--------Methode depot et retrait---------public void depot(double M)
{
_soldeCompte = _soldeCompte + M;
}
public virtual void retrait(double M)
{
_soldeCompte = _soldeCompte - M;
}
}
}
3) classe CompteCourant
using
using
using
using

System;
System.Collections.Generic;
System.Linq;
System.Text;

namespace Examen_2012_V9_D3
{
public class CompteCourant : Compte
{
//--------propriétét---------double _decouvert;

//--------accesseurs---------public double Decouvert
{
get { return _decouvert; }
set { _decouvert = value; }
}
//--------constructeur---------public CompteCourant()
: base()
{
}

Squalli .Med

Page 4

public CompteCourant(int num, DateTime d, double s,
: base(num, d, s, NC, PnC, AdrC)
{
_decouvert = de;

string NC, string PnC, string AdrC, double de)

}
public CompteCourant(int num)
: base(num)
{
}
//--------ToString---------public override string ToString()
{
return base.ToString() + "\n decouvert: " + _decouvert + "Montant Max du decouver: " ;
}
public override void retrait(double M)
{
if (_soldeCompte >= _decouvert)
_soldeCompte = _soldeCompte - M;
}

}

}

4) classe ComteCarnet
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Examen_2012_V9_D3
{
public class ComteCarnet : Compte
{
//--------propriétét---------double _tauxInteret;
//--------accesseurs---------public double TauxInteret
{
get { return _tauxInteret; }
set { _tauxInteret = value; }
}
//--------constructeur---------public ComteCarnet()
: base()
{
}

Squalli .Med

Page 5

public ComteCarnet(int num, DateTime d, double s, string NC, string PnC, string AdrC, double t)
: base(num, d, s, NC, PnC, AdrC)
{
_tauxInteret = t;
}
public ComteCarnet(int num)
: base(num)
{
}
//--------ToString---------public override string ToString()
{
return base.ToString() + "\n Taux d'Interet: " + _tauxInteret;
}
//---------------Retret--------------------------public override void retrait(double M)
{
if (M <= _soldeCompte)
_soldeCompte = _soldeCompte - M;
}

}

}

Squalli .Med

Page 6

Dossier 3 : Evènementielle
1)

2)
Créer la classe : LesComptes et a l’intérieur on créer une collection static de type générique LC:
class LesComptes
{
public static List<Compte> LC = new List<Compte>();
}
Avant de commancer la question (3), Pour chaque Radiobouton on va créer la
procédure(CheckedChanged) qui permet d’afficher et cacher la différence entre les 2 comptes
private void R1_CheckedChanged(object sender, EventArgs e)
{
panelcourant.Visible = true;
lblcredit.Visible = true;
//--------------------------------------------panelCarnet.Visible = false;
}
private void R2_CheckedChanged(object sender, EventArgs e)
{
panelCarnet.Visible = true;
//--------------------------------------------panelcourant.Visible = false;
lblcredit.Visible = false;
}

Squalli .Med

Page 7

3)
private void cmdAjouter_Click(object sender, EventArgs e)
{
int num;
double S,Dec,t;
DateTime
dateOU;
if (int.TryParse(txtNCompte.Text, out num) && DateTime.TryParse(txtDateOU.Text, out dateOU )
&& double.TryParse(txtSolde.Text,out S) )
{
if (R1.Checked == true)
{
if (double.TryParse(txtDecouv.Text, out Dec))
{

if (LesComptes.LC.Contains(new CompteCourant(num))== false)
{

CompteCourant ccou = new CompteCourant(num, dateOU, S, txtNom.Text, txtPrenom.Text, txtAdr.Text, Dec);

LesComptes.LC.Add(ccou);
MessageBox.Show(" Compte Courant créer..... ");

}
else { MessageBox.Show(" Ce numéro de Compte existe déja..... "); }

}
else { MessageBox.Show(" Decouvert non numérique..... "); }
}
else
{

if (double.TryParse(txtTaux.Text, out t))
{
if (LesComptes.LC.Contains(new ComteCarnet(num)) == false)
{
ComteCarnet ccar = new ComteCarnet(num, dateOU, S, txtNom.Text, txtPrenom.Text, txtAdr.Text, t);
LesComptes.LC.Add(ccar);
MessageBox.Show(" Comte Carnett créer..... ");
}
else { MessageBox.Show(" Ce numéro de Compte existe déja..... "); }

}
else { MessageBox.Show(" taux non numérique..... "); }
}
// BasDePage();
}
else {
MessageBox.Show("N° Compte non Numerique !");
}
}

Squalli .Med

Page 8

4)
private void cmdModifier_Click(object sender, EventArgs e)
{
int num;
double S, Dec, t;
DateTime dateOU;
if (int.TryParse(txtNCompte.Text, out num) && DateTime.TryParse(txtDateOU.Text, out
dateOU) && double.TryParse(txtSolde.Text, out S))
{
if (R1.Checked == true)
{
if (double.TryParse(txtDecouv.Text, out Dec))
{
int i= LesComptes.LC.IndexOf(new CompteCourant(num));
if (i != -1)
{
LesComptes.LC[i].DateCompte = dateOU;
LesComptes.LC[i].PropCompte.NomCli = txtNom.Text;
LesComptes.LC[i].PropCompte.PrenomCli = txtPrenom.Text;
LesComptes.LC[i].PropCompte.AdrsCli = txtAdr.Text;
((CompteCourant)LesComptes.LC[i]).Decouvert = Dec;
MessageBox.Show(" Compte Courant Modifier..... ");
}
else { MessageBox.Show(" Ce numéro de Compte n'existe pas..... "); }

}
else { MessageBox.Show(" Decouvert non numérique..... "); }
}
else
{
if (double.TryParse(txtTaux.Text, out t))
{
int i= LesComptes.LC.IndexOf(new CompteCourant(num));
{

if (i != -1)
LesComptes.LC[i].DateCompte = dateOU;
LesComptes.LC[i].PropCompte.NomCli = txtNom.Text;
LesComptes.LC[i].PropCompte.PrenomCli = txtPrenom.Text;
LesComptes.LC[i].PropCompte.AdrsCli = txtAdr.Text;
((ComteCarnet)LesComptes.LC[i]).TauxInteret = t;
MessageBox.Show(" Comte Carnett Modifier..... ");

}
else { MessageBox.Show(" Ce numéro de Compte n'existe pas..... "); }

}
}
else
{
}

}
else { MessageBox.Show(" taux non numérique..... "); }

MessageBox.Show("N° Compte non Numerique !");

}

Squalli .Med

Page 9

5)
private void cmdSupprimer_Click(object sender, EventArgs e)
{
int num;
if (int.TryParse(txtNCompte.Text, out num))
{
int j;
if (R1.Checked == true)
{
j = LesComptes.LC.IndexOf(new CompteCourant(num));
if (j != -1)
{
LesComptes.LC.RemoveAt(j);
MessageBox.Show("le compte courant supprimer");
}
else
MessageBox.Show("le compte n'exite pas");
}
else {
j = LesComptes.LC.IndexOf(new ComteCarnet(num));
if (j != -1)
{
LesComptes.LC.RemoveAt(j);
MessageBox.Show("le compte sur carnet supprimer");
}
else
MessageBox.Show("le compte n'exite pas");
}
//------------------Affichage après suppression----------------------------// i = 0;
// Affiche(i);
// BasDePage();

}
else { MessageBox.Show("le num de compte n'est pas numérique"); }
}

Squalli .Med

Page 10

7)
//-------------------methode d'Affichage sur la position i ----------------------------------private void Affiche(int i)
{
if (LesComptes.LC.Count > 0)
{
txtNCompte.Text = LesComptes.LC[i].NumCompte.ToString();
txtSolde.Text = LesComptes.LC[i].SoldeCompte.ToString();
txtDateOU.Text = LesComptes.LC[i].DateCompte.ToString();
txtNom.Text = LesComptes.LC[i].PropCompte.NomCli;
txtPrenom.Text = LesComptes.LC[i].PropCompte.PrenomCli;
txtAdr.Text = LesComptes.LC[i].PropCompte.AdrsCli;
if (LesComptes.LC[i] is CompteCourant)
{
R1.Checked = true;
txtDecouv.Text = ((CompteCourant)LesComptes.LC[i]).Decouvert.ToString();
}
if (LesComptes.LC[i] is ComteCarnet)
{
R2.Checked = true;
txtTaux.Text = ((ComteCarnet)LesComptes.LC[i]).TauxInteret.ToString();
}
}
else {
txtNCompte.Clear();
txtSolde.Clear() ;
txtDateOU.Clear() ;
txtNom.Clear();
txtPrenom.Clear();
txtAdr.Clear();
txtDecouv.Clear();
txtTaux.Clear();

}

}
// BasDePage();

//-----------------------------------debut----------------------------------private void cmdpPemier_Click(object sender, EventArgs e)
{
i = 0;
Affiche(i);
}

Squalli .Med

Page 11

//-----------------------------------dernier----------------------------------private void cmdDernier_Click(object sender, EventArgs e)
{
i = LesComptes.LC.Count - 1;
Affiche(i);
BasDePage();
}
//-----------------------------------suivant----------------------------------private void cmdSuivant_Click(object sender, EventArgs e)
{
if (i < LesComptes.LC.Count - 1)
{
i++;
Affiche(i);
BasDePage();
}
else { MessageBox.Show("Fin de la liste"); }
}
//-----------------------------------precedent----------------------------------private void cmdPrecedent_Click(object sender, EventArgs e)
{
if (i >0)
{
i--;
Affiche(i);
}
else { MessageBox.Show("Debut de la liste"); }
}

8)
//-----------------------------------Bas de page du Formulaire---------------------------------private void BasDePage()
{
if (LesComptes.LC.Count > 0)
{
txtNB.Text = "Compte " + (i + 1).ToString() + "/" + LesComptes.LC.Count.ToString();
}
else {
txtNB.Text = "Compte 0 / 0";
}
}

Squalli .Med

Page 12

6)

using
using
using
using
using
using
using
using

System;
System.Collections.Generic;
System.ComponentModel;
System.Data;
System.Drawing;
System.Linq;
System.Text;
System.Windows.Forms;

namespace Examen_2012_V9_D3
{
public partial class frmRRecherche : Form
{
public frmRRecherche()
{
InitializeComponent();
}
//----------------------------------private void Affiche(int i)
{
if (LesComptes.LC.Count > 0)
{
txtNCompte.Text = LesComptes.LC[i].NumCompte.ToString();
txtSolde.Text = LesComptes.LC[i].SoldeCompte.ToString();
txtDateOU.Text = LesComptes.LC[i].DateCompte.ToString();
txtNom.Text = LesComptes.LC[i].PropCompte.NomCli;
txtPrenom.Text = LesComptes.LC[i].PropCompte.PrenomCli;
txtAdr.Text = LesComptes.LC[i].PropCompte.AdrsCli;
if (LesComptes.LC[i] is CompteCourant)
{
R1.Checked = true;

Squalli .Med

Page 13

}
else
{

}

}

txtDecouv.Text = ((CompteCourant)LesComptes.LC[i]).Decouvert.ToString();
}
if (LesComptes.LC[i] is ComteCarnet)
{
R2.Checked = true;
txtTaux.Text = ((ComteCarnet)LesComptes.LC[i]).TauxInteret.ToString();
}

txtNCompte.Clear();
txtSolde.Clear();
txtDateOU.Clear();
txtNom.Clear();
txtPrenom.Clear();
txtAdr.Clear();
txtDecouv.Clear();
txtTaux.Clear();

private void R1_CheckedChanged_1(object sender, EventArgs e)
{
panelcourant.Visible = true;
lblcredit.Visible = true;
//--------------------------------------------panelCarnet.Visible = false;
}

private void R2_CheckedChanged_1(object sender, EventArgs e)
{
panelCarnet.Visible = true;

}

Squalli .Med

//--------------------------------------------panelcourant.Visible = false;
lblcredit.Visible = false;

Page 14

//-----------------valider--------------------private void cmdValider_Click(object sender, EventArgs e)
{
int num;
if (int.TryParse(txtNCompte.Text, out num))
{
int i = LesComptes.LC.IndexOf(new CompteCourant(num));
if (i != -1)
{
Affiche(i);
paneRecherche.Visible = true;
txtNCompte.ReadOnly = true;
}
else
{
MessageBox.Show("n° Compte n'existe pas");
}
}
}

//-----------------Nouvelle Recherche---------------------

}

}

private void cmdNouveau_Click(object sender, EventArgs e)
{
paneRecherche.Visible = false;
txtNCompte.ReadOnly = false;
txtNCompte.Clear();
txtNCompte.Focus();
}

Squalli .Med

Page 15


Documents similaires


Fichier PDF praticiencs
Fichier PDF nfp121 final 2013 corrige
Fichier PDF 2012 v9
Fichier PDF extraits codes reprises donneescs
Fichier PDF visiteurscs
Fichier PDF ajoutmodifsupprcompterenducs


Sur le même sujet..