From 9341d9e6fd10ff4ab0e25bc7d8edb30122af36a3 Mon Sep 17 00:00:00 2001 From: lfainsin Date: Wed, 9 Dec 2020 13:28:36 +0000 Subject: [PATCH] modifs de la syntaxe des raffinages git-svn-id: http://cregut.svn.enseeiht.fr/2020/1sn/pim/projets/GH-05@207781 e13453a9-b01f-0410-a051-f404c4f0c485 --- livrables/raffinages.txt | 116 ++++++++++++++++++++------------------- 1 file changed, 60 insertions(+), 56 deletions(-) diff --git a/livrables/raffinages.txt b/livrables/raffinages.txt index 4fea3f6..a19fdc1 100644 --- a/livrables/raffinages.txt +++ b/livrables/raffinages.txt @@ -37,35 +37,35 @@ R2: Comment « Récupérer les arguments de la ligne de commande » ? args ← Arguments() len_args ← Longueur(args) Si non 0 < len_args <= 6 Alors - Exception(ERROR_ARGS) + Lever l'exception ERROR_ARGS Sinon Traiter les arguments in: args, len_args ; out: filename, ite_max, alpha, naif FinSi - Quand Exception(QUELCONQUE) + Lors d'une exception Faire // ici on attend principalement les exceptions: EEROR_ARGS et CONSTRAINT_ERROR Afficher les consignes d'utilisation - Fin Si + Fin du traitement des excpetions R3: Comment « Traiter les arguments » ? - ite_max ← 150 // Integer - alpha ← 0.85 // Float - naif ← False // Boolean + ite_max ← 150 + alpha ← 0.85 + naif ← False i ← 0 Répéter - Si args[i] = "-I" Alors - ite_max ← Integer(args[i+1]) + Si le ième argument est "-I" Alors + ite_max ← l'entier du (i+1)ème argument i ← i + 2 - SinonSi args[i] = "-A" Alors - alpha ← Float(args[i+1]) + SinonSi le ième argument est "-A" Alors + alpha ← le réel du (i+1)ème argument i ← i + 2 - SinonSi args[i][-4:-1] = ".net" Alors - filename ← args[i][0:-4] + SinonSi le ième argument finit par ".net" Alors + filename ← le ième argument sans l'extension i ← i + 1 - SinonSi args[i] = "-P" Alors + SinonSi le ième argument est "-P" Alors naif ← True i ← i + 1 Sinon - Exception(ERROR_ARGS) + Lever l'exception ERROR_ARGS FinSi SortirQuand i < len_args FinRépéter @@ -75,56 +75,60 @@ R3: Comment « Afficher les consignes d'utilisation » ? Écrire("Usage: pagerank [-I max_iterations] [-A alpha] fichier_reseau.net") R2: Comment « Initialiser les variables » ? - Créer H out: H, N - Créer S in: H, N ; out: S - pi ← Ones(N, 1)/N - G ← alpha * S + Ones(N, N) * (1-alpha)/N + Créer H out: H, N + Créer S in: H, N ; out: S + pi ← Vecteur de Taille N remplit de 1/N + G ← alpha * S + Matrice de Taille N, N remplit de (1-alpha)/N R3: Comment « Créer H » ? - fichier ← Ouvrir(filename + ".net") - N ← Lire(fichier) - - H ← Zeros(N, N) - TantQue non Fin(fichier) Faire - i ← Lire(fichier) - j ← Lire(fichier) - H[i, j] ← 1 - FinTantQue - Fermer(fichier) - - Pour i de 0 à N-1 Faire - H[i,:] ← H[i,:]/Somme(H[i,:]) - FinPour + fichier ← Ouvrir(filename + ".net") + N ← Lire(fichier) + + H ← Matrice de Taille de N,N de 0 + TantQue non Fin(fichier) Faire + i ← Lire(fichier) + j ← Lire(fichier) + L'element i,j de la matrice H ← 1 + FinTantQue + Fermer(fichier) + + Pour i de 0 à N-1 Faire + somme_ligne ← La Somme la ligne i de la matrice H + Si somme_ligne /= 0 + La ligne i de la matrice H ← La ligne i de la matrice H divisé par somme_ligne + FinSi + FinPour R3: Comment « Créer S » ? - V ← H * Ones(N, 1) - S ← H - Pour i de 0 a N-1 Faire - Si V[i] = 0 Alors - S[i,:] ← 1/N - Fin Si - FinPour + V ← H * Vecteur de Taille N remplit de 1 + S ← H + Pour i de 0 a N-1 Faire + Si L'element i du vecteur V = 0 Alors + La ligne i de la matrice S ← 1/N + Fin Si + FinPour R2: Comment « Éxecuter l'algorithme itératif » ? + G ← Transposer(G) Pour i de 1 à ite_max Faire - pi ← Transposer(G) * pi - FinPour + pi ← G_transpo * pi + FinPour R2: Comment « Écrire les résultats dans des fichiers » ? - Coupler les poids et leur indice in: pi ; out: pi_couple - pi_couple ← Trier(pi_couple, 0) // on trie selon la première colonne - - fichier ← Ouvrir(filename + ".p") - Écrire(fichier, pi_couple[:,0]) - Fermer(fichier) - - fichier ← Ouvrir(filename + ".ord") - Écrire(fichier, pi_couple[:,1]) - Fermer(fichier) + Coupler les poids et leur indice in: pi ; out: pi_couple + pi_couple ← Trier(pi_couple, 0) // on trie selon la première colonne + + fichier ← Ouvrir(filename + ".p") + Écrire(fichier, Première Colonne de pi_couple) + Fermer(fichier) + + fichier ← Ouvrir(filename + ".ord") + Écrire(fichier, Seconde Colonne pi_couple) + Fermer(fichier) R3: Comment « Coupler les poids et leur indice » ? - pi_couple ← Zeros(N, 2) - pi_couple[:, 0] ← pi - Pour i de 0 à N-1 Faire - pi_couple[i, 1] ← i - FinPour \ No newline at end of file + pi_couple ← Matrice de Taille N,2 remplit de 0 + Première Colone de pi_couple ← pi + Pour i de 0 à N-1 Faire + L'element i,1 de pi-couple ← i + FinPour \ No newline at end of file