Le plagiat – Bac pratique 2019 [ Algorithme + Python ]

Algo et Python 09-10-24
109 0

Sujet bac informatique pratique 2019 (Bac scientifique)

Le plagiat est une mauvaise pratique qui consiste à copier ou s'inspirer fortement d'une œuvre sans citer son auteur et en faisant passer cette œuvre pour la sienne.

On suppose qu’un texte est plagié lorsque le nombre de mots communs dépasse la moitié du nombre de mots du texte d’origine.

Exemple :

Texte d’origine :

"CE PROGRAMME PERMET DE TROUVER LE NOMBRE DE MOTS IDENTIQUES DANS DEUX VERSIONS DU MEME TEXTE."

Texte à tester :

"ENTRE DEUX VERSIONS DU MEME DOCUMENT CE LOGICIEL PERMET DE CHERCHER LE NOMBRE DE MOTS IDENTIQUES."

Les mots communs aux deux textes sont :

DEUX – VERSIONS – DU – MEME – CE – PERMET – DE – LE – NOMBRE – DE – MOTS – IDENTIQUES

Le texte testé est plagié. En effet, le nombre de mots communs aux deux textes est égal à 12, dépassant ainsi la moitié du nombre de mots du texte d’origine qui est 16.

On se propose d’écrire un programme Python qui permet de saisir deux textes T1 et T2 ayant un même nombre de mots, de vérifier si T2 est plagiat de T1 selon le principe décrit précédemment et d’afficher un message correspondant.

Remarques :

1- T1 et T2 sont deux chaînes commençant obligatoirement par une lettre, composée au maximum de 200 caractères, se terminant par un point et ne pouvant contenir que des lettres majuscules et des espaces.

2- Le programme doit enlever les espaces superflus (garder un seul espace entre deux mots consécutifs et ne garder aucun espace avant le point de fin de texte).

Solution Algorithmique

Dans cet algorithme, On va utiliser 5 fonctions :

Algorithme du programme Principal

Déclaration des objets

Objet Type / Nature
t1 chaîne des caractères
t2 chaîne des caractères

 

La fonction supprimer_espaces 

Cette fonction enlève les espaces superflus  pour garder un seul espace entre deux mots consécutifs.

La fonction verif_nom

Cette fonction vérifie que le nom saisi est forme uniquement des lettres majuscules et/ou espaces, se termine par un point et ne dépasse pas 200 caractères.

Déclaration des objets

Objet Type / Nature
i entier

 

La fonction nbr_mots

Cette fonction retourne le nombre des mots qui forment un texte.

Déclaration des objets

Objet Type / Nature
i entier
cp entier

 

La fonction saisie_texte

Cette fonction saisit une chaîne des caractères formée au maximum 200 lettres majuscules et se termine par un point.

Déclaration des objets

Objet Type / Nature
ch chaîne des caractères

 

La fonction test_plagiat

Cette fonction vérifie si le texte t2 est plagiat du texte original t1.

Déclaration des objets

Objet Type / Nature
i entier
cp entier
ch2 chaîne des caractères

 

Solution en Python

Exécution du programme

1- Cas du texte t2 est une copie du texte t1

2- Cas du texte t2 n'est pas une copie du texte t2

Solution en Python et Designer QT

Pour créer une application en Python et Designer QT qui va saisir deux textes et vérifier l'originalité du deuxième texte par rapport au premier texte, on va suivre ces étapes:

1- Créer l'interface graphique avec Qt Designer

a- Ouvrez Qt Designer et créez un nouveau fichier de type Main Window.

b- Ajoutez ces widgets:

QLineEdit nommé 't1' pour entrer le texte original.

QLineEdit nommé 't2' pour entrer le texte à vérifier son originalité.

QPushButton nommé 'test_bt' pour tester si le texte t2 est plagiat de t1

QLabel nommé 'msg' pour afficher des messages d'erreur et résultât du test d'originalité du texte t2.

Enregistrez le fichier avec l'extension .ui, par exemple plagiat-interface.ui.

2- Créer le script Python pour l'application

Voici un exemple de script Python qui utilise l'interface graphique générée par Qt Designer.

Exécution du programme

1) Cas du texte t2 est une copie du texte t1

2) Cas du texte t2 n'est pas une copie du texte t2

 

Vous pouvez voir aussi :

1) des exercices sur les chaînes des caractères

2) des exercices sur les tableaux

3) des sujets Bac pratique

4) des sujets Bac théorique

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

+216 92 886 231

medaliprof@gmail.com

Photos des articles

Site robotique réalisé par Mohamed Ali-Prof Info