Parse error at " end "
Show older comments
I have an parse error at ''end'' at the end of the code and I don't know why. Please help. I know I have other errors, I still haven't finish the program. I'm just trying to solve this one first.
classdef Plateforme < handle
% Caractéristiques ou données encapsulées
properties (Access = private)
nbBanques = 0;
banques = [];
end
% Comportements
methods
% Methode qui charge la base de donnees
function ChargerBaseDeDonnees(obj)
% Importer les constantes
ImporterConstantes
% Fixer la semence aleatoire
rng(0)
% Lire la base de donnees
FID = fopen(CHEMIN_BD, 'r');
texte = {};
while ~feof(FID)
texte{end + 1} = fgetl(FID);
end
fclose(FID);
% Reconstruire la base de donnees
% Le nombre de banques
temp = strsplit(texte{1}, ':');
nombreBanques = str2double(temp{end});
% La ligne qui contient le nom de la banque
ligneNomBanque = 2;
for i = 1 : nombreBanques
% Nom de la banque
temp = strsplit(texte{ligneNomBanque}, ':');
nomBanque = strtrim(temp{end});
% Numero d'institution de la banque
temp = strsplit(texte{ligneNomBanque + 1}, ':');
numeroInstitution = strtrim(temp{end});
% Initialiser la banque
listeBanques(i) = Banque(nomBanque, numeroInstitution);
% Le nombre de client de la banque
temp = strsplit(texte{ligneNomBanque + 2}, ':');
nbClients = str2double(temp{end});
% La ligne qui contient le prénom du client
lignePrenomClient = ligneNomBanque + 5;
for j = 1 : nbClients
% Prenom du client
temp = strtrim(strsplit(texte{lignePrenomClient}, ':'));
prenom = temp{end};
% Nom de famille du client
temp = strtrim(strsplit(texte{lignePrenomClient + 1}, ':'));
nom = temp{end};
% Numero d'assurance sociale du client
temp = strtrim(strsplit(texte{lignePrenomClient + 2}, ':'));
numeroAssuranceSociale = temp{end};
% Creer le client
unClient = Client(prenom, nom, numeroAssuranceSociale);
% Nombre de comptes du client
temp = strsplit(texte{lignePrenomClient + 3}, ':');
nbComptes = str2double(temp{end});
% La ligne qui contient le solde du comptes de cheques du client
ligneSoldeCheque = lignePrenomClient + 5;
% Charger tous les comptes
for k = ligneSoldeCheque : 3 : ligneSoldeCheque + 3 * (nbComptes - 1)
% Lire le solde du compte cheques
temp = strsplit(texte{k}, ':');
soldeCheque = str2double(temp{end});
% Lire le solde du compte epargne
temp = strsplit(texte{k + 1}, ':');
soldeEpargne = str2double(temp{end});
% Instancier le compte
unCompte = Compte(soldeCheque, soldeEpargne);
% Le client est desormais le proprietaire du compte
unCompte.proprietaire = unClient;
% Ajouter le compte a la banque
listeBanques(i).AjouterCompte(unCompte, unClient);
end
% Ajouter le client a la banque
listeBanques(i).AjouterClient(unClient);
% Ligne du prochain client
lignePrenomClient = k + 3;
end
% Ligne de la prochaine banque
ligneNomBanque = lignePrenomClient - 1;
end
% Enregistrer les parametres dans la plateforme
obj.nbBanques = nombreBanques;
obj.banques = listeBanques;
end
% Accesseurs (get.) pour la position du nombre de banque
function positionNbBanques = getNbBanques(obj)
positionNbBanques = obj.nbBanques;
end
%Méthode 3
function AnalyserJournalTransactions(obj,nomTexte)
validateattributes(nomTexte,{'char'},{'scalartext'})
FID = fopen(nomTexte,'r');
assert(FID ~= -1,'Erreur d"ouverture de fichier.');
data = textscan(FID,'%f %s %f %s %f','Delimiter',',');
fclose(FID);
obj.noInstitution = data(1);
obj.typeTransaction = data(2);
obj.idCompte = data(3);
obj.typeCompte = data(4);
obj.montant = data(5);
end
%methode 4
function GenererRapport(obj,nomRapport)
ImporterConstantes
finTexte = endsWith(nomRapport,'.txt');
if finTexte == 0
nomRapport = [nomRapport,'.txt'];
end
cheminDossier = [CHEMIN_RAPPORTS,'/',nomRapport];
FID = fopen(cheminDossier,'w');
assert(FID ~= -1,'Erreur d"ouverture de fichier.');
for i = 1 : obj.nbBanques
fprintf(FID,'Banque No. %d \n\n',i);
fprintf(FID,'\tNom : \n');
fprintf(FID,'\tNo. institution : \n');
fprintf(FID,'\tNombre de clients : \n');
fprintf(FID,'\tNombre de comptes : \n\n');
fprintf(FID,'\tDétails des comptes clients : \n\n');
for j = 1:
fprintf(FID,'\t\tClient No.%d\n\n',j);
fprintf(FID,'\t\t\tPrénom :\n');
fprintf(FID,'\t\t\tNom :\n\n');
for k = 1:
fprintf(FID,'\t\t\t\tCompte No. %d\n\n',k);
fprintf(FID,'\t\t\t\t\tIdentifiant :\n');
fprintf(FID,'\t\t\t\t\tSolde cheques :\n');
fprintf(FID,'\t\t\t\t\tSolde epargnes :\n\n');
end
fprintf(FID,'\t\t\tTotal cheques :\n');
fprintf(FID,'\t\t\tTotal epargne :\n\n');
end
end
end
end
end
1 Comment
Guido Gonzalez
on 15 Apr 2022
Accepted Answer
More Answers (0)
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!