Visual illustration of the code challenge: Comment noter une classe d’étudiants ?

Comment noter une classe d’étudiants ?

Aide un jeune professeur à noter rapidement une classe d’étudiants.

Coding in the sandbox You must be logged in to access the sandbox.

Mission

Ce jeune professeur a remarqué que les notes finales des examens sont très liées à la participation des étudiants durant le cours. Un(e) élève qui participe va avoir une bonne note. Celui ou celle qui participe peu aura une mauvaise note.

Il décide donc de ne plus corriger les copies et souhaite créer un algorithme pour noter automatiquement les élèves !

Règles

Dès le début de son cours, il met la note de 12/20 à tout le monde.

1 fois par heure de cours, il va jeter un oeil à la classe et noter l’état de chaque élève :

  • E = l’élève Ecoute
  • T = l’élève Travaille
  • P = l’élève Parle
  • D = l’élève Dort

Et voici les règles qu’il définit :

  • Quand un élève écoute ou travaille, il gagne 1 point à sa note.
  • S’il parle, il perd 1 point
  • S’il dort, il perd 2 points

Mais ce n’est pas tout… un élève démarre donc avec une note maximale de 20, mais :

  • S’il parle, sa note maximale diminue de 1
  • S’il dort, sa note maximale diminue de 2
  • Mais comme chaque élève peut se racheter une conduite, la note maximale de l’élève ne peut être inférieure à 10.
  • La note de l’élève ne devient jamais négative et ne dépasse jamais 20

La variable « cours » contient donc tous les cours. 1 élève est toujours à la même place dans le cours. La première lettre d’un cours correspond donc toujours au même élève.

Tu dois retourner la moyenne de la classe, arrondie à un chiffre après la virgule.

Solve the challenge

To code this challenge, several possibilities:
- Want to start coding right away? Use the online Sandbox.
- Want to work in your favorite editor? Organize your code well, test, check out our API documentation.
- You can also copy/paste a dataset below.

challenge code for resolution via API: PROF_1

Some resources to help you:
Data and algorithmic logic Methodologies Corrections

Support for resolution

Progress through challenges using our resolution aids: tools, techniques and advice to help you overcome the most complex programming challenges with methodology, confidence and creativity.

Dataset and algorithmic logic

Based on the data and the expected response, use the process to determine the logic to implement.

Show data and progress

Methodologies

Develop a structured approach with our solving guides. Work on specific concepts such as object-oriented programming or unit testing to improve your coding style and progress.

No methodology yet for this challenge, but we are working on it! Follow us to be informed of the release!


Corrections

The corrections allow you to discover certain technical concepts but will also give you a solution to the challenge. Code the challenge yourself before consulting the corrections ;)

No answer yet for this challenge, but we&'re working on it! Follow us to be informed of the release!

Programming concept(s) that can be used to solve this challenge: Conditions, Programmation Orientée Objet, Booléens, Parsing

Keep coding

Other challenges to complete

Intermediate
WALL-E #4 : un peu de rangement

WALL-E #4 : un peu de rangement

Wall-E s’ennuie un peu et décide de ranger tous les blocs de déchets qu’il a construit.

Behavioral
Intermediate
Die Hard

Die Hard

Profite d’un challenge exaltant et rejoins John McClane dans son combat pour sauver le réveillon au Nakatomi Plaza !

Behavioral
Advance
L’araignée sur sa toile

L’araignée sur sa toile

Une araignée sur une toile, des mouches attrapées, guide cette gentille petite créature dans la préparation de son repas.

Behavioral

Your newsletter every month

Corrections, challenges, news, technical monitoring... no spam.