- Exécuteurs
-
Apprendre
Apprendre Python Exemples exécutables, NumPy, pandas et plus Apprendre l'IARéseaux de neurones, ML et LLM de zéro Apprendre le C et le C++ Pointeurs, mémoire, STL et C++ moderne Apprendre le C#Bases, POO, LINQ, async et exercices .NET Apprendre MatplotlibCourbes, barres, nuages de points et camemberts avec visualiseurs Algorithmes Python Recherche, tri, récursivité et visualisations O(n) Algorithmes C et C++ Comparer les implémentations en C et C++ Programmation pour enfants Apprends à coder en jouant !
- DéfisNouveau
- EnseignantsNouveau
- Mises à Jour
- Offrez-moi un café
Le perceptron (1958) est le premier algorithme d'apprentissage pour un neurone artificiel. Il prédit avec une fonction en escalier et apprend de ses erreurs.
Partez de poids et d'un biais tous à 0. À chaque époque, parcourez les exemples dans l'ordre, et pour chaque exemple x d'étiquette y (0 ou 1) :
- prédiction = 1 si x · weights + bias > 0, sinon 0
- error = y - prédiction (donc -1, 0 ou 1)
- Si error ≠ 0 : weights[i] ← weights[i] + learning_rate × error × x[i] pour chaque i, et bias ← bias + learning_rate × error
Implémentez train_perceptron(samples, labels, learning_rate, epochs).
Entrée
samples : m exemples de n variables chacun.
labels : les m étiquettes, chacune 0 ou 1.
learning_rate, epochs : le pas et le nombre de passages sur les données.
Sortie
Renvoyez les poids finaux suivis du biais (n + 1 nombres).
Contraintes
1 ≤ m ≤ 100, 1 ≤ n ≤ 10, 1 ≤ epochs ≤ 100
0 < learning_rate ≤ 1
-10 ≤ chaque variable ≤ 10
Exemples
Exemple 1
Entrée :
samples = [
[0.0, 0.0],
[0.0, 1.0],
[1.0, 0.0],
[1.0, 1.0]
]
labels = [0, 0, 0, 1]
learning_rate = 1.0
epochs = 1
Sortie attendue :
[1.0, 1.0, 1.0]
Explication
[0, 0] : z = 0, prédit 0, correct. [0, 1] et [1, 0] : prédisent aussi 0, correct. [1, 1] : prédit 0 mais l'étiquette vaut 1, donc error = 1 : les poids deviennent [1, 1] et le biais 1. Résultat : [1, 1, 1].
Exemple 2
Entrée :
samples = [
[0.0, 0.0],
[0.0, 1.0],
[1.0, 0.0],
[1.0, 1.0]
]
labels = [0, 0, 0, 1]
learning_rate = 1.0
epochs = 10
Sortie attendue :
[2.0, 1.0, -2.0]
Explication
Après 10 époques, le perceptron a appris la porte ET : avec les poids [2, 1] et le biais -2, seul [1, 1] donne z > 0.
Références
-
Exemple 1 Non exécutéEntrée :
samples = [ [0.0, 0.0], [0.0, 1.0], [1.0, 0.0], [1.0, 1.0] ] labels = [0, 0, 0, 1] learning_rate = 1.0 epochs = 1Sortie attendue :[1.0, 1.0, 1.0]Votre sortie -
Exemple 2 Non exécutéEntrée :
samples = [ [0.0, 0.0], [0.0, 1.0], [1.0, 0.0], [1.0, 1.0] ] labels = [0, 0, 0, 1] learning_rate = 1.0 epochs = 10Sortie attendue :[2.0, 1.0, -2.0]Votre sortie
4 tests cachés seront aussi exécutés lors de la soumission. Si votre code en échoue un, vous verrez ce test. Résolvez le défi pour tous les voir.
Online Kotlin Compiler
Write, compile, run, and debug Kotlin code online in a full-featured browser IDE. Work with multiple files, save your workspace, and collaborate in real time.
🚀 71,457 exécutions totales (576 ce mois-ci)
Pratiquez Kotlin avec des défis de code
Résolvez des problèmes concrets dans cet éditeur : lancez les tests, soumettez et recevez une relecture IA.
🧩 À propos de cet exécuteur Kotlin en ligne
Le CodeUtility Kotlin Executor vous permet d’écrire, de compiler et d’exécuter du code Kotlin directement dans votre navigateur - aucune installation, aucun IDE ni configuration de SDK requis. Il utilise de vrais compilateurs Kotlin s’exécutant dans des bacs à sable isolés pour une expérience d’exécution sûre et fidèle.
Cet outil prend en charge plusieurs versions de Kotlin - 1.6, 1.9 et 2.1 - afin que vous puissiez explorer les nouveautés de syntaxe, tester la compatibilité de votre code et expérimenter des fonctionnalités modernes comme les coroutines, les classes de données et les interfaces scellées.
Idéal pour les étudiants qui apprennent les bases de Kotlin, les développeurs Android qui expérimentent des extraits, ou les développeurs backend qui testent de la logique dans un environnement JVM sans quitter le navigateur.
L’environnement exécute chaque extrait dans un runtime conteneurisé sécurisé, garantissant des performances cohérentes et une exécution sûre du code.
Bien plus qu’un exécuteur de code
Utilisez depuis le même exécuteur un éditeur multifichier, un terminal d’exécution isolé, des bibliothèques propres à chaque environnement, des espaces de travail persistants, le partage et la collaboration en temps réel.
Comment utiliser cet exécuteur ?
Choisissez un environnement d’exécution, ouvrez ou créez un fichier, écrivez votre code, puis sélectionnez Exécuter. La sortie s’affiche dans le terminal ; les utilisateurs connectés peuvent conserver leurs fichiers dans un espace de travail, installer des bibliothèques et collaborer grâce aux partages.
- Sélectionnez une version et modifiez le fichier actuel, ou ouvrez un autre fichier de l’espace de travail.
- Exécutez le code, saisissez les données demandées dans le terminal et consultez l’historique des exécutions enregistrées.
- Utilisez les bibliothèques, les outils de l’espace de travail, le partage et le chat lorsque votre tâche nécessite plusieurs extraits de code.
💡 Guide des bases de Kotlin pour débutants
1. Déclarer des variables et des constantes
Kotlin utilise val pour les variables immuables et var pour les variables muables.
val name: String = "Alice"
var age: Int = 30
val pi = 3.14 // type inféré
// Constantes
const val MAX_USERS = 100
2. Conditions (if / when)
Utilisez les expressions if ou when pour plusieurs branches.
val x = 2
if (x == 1) {
println("Un")
} else if (x == 2) {
println("Deux")
} else {
println("Autre")
}
when (x) {
1 -> println("Un")
2 -> println("Deux")
else -> println("Autre")
}
3. Boucles
Utilisez for, while et do-while pour itérer.
for (i in 0..2) {
println(i)
}
var n = 3
while (n > 0) {
println(n)
n--
}
4. Tableaux
Kotlin prend en charge les tableaux via la fonction arrayOf().
val numbers = arrayOf(10, 20, 30)
println(numbers[1])
5. Manipulation de listes
Utilisez mutableListOf pour des listes dynamiques.
val nums = mutableListOf(1, 2, 3)
nums.add(4)
nums.removeAt(0)
for (n in nums) {
print("$n ")
}
6. Entrée/Sortie console
Utilisez readLine() pour l’entrée et println() pour la sortie.
print("Entrez votre nom : ")
val name = readLine()
println("Bonjour, $name")
7. Fonctions
Les fonctions utilisent le mot-clé fun avec un type de retour optionnel.
fun add(a: Int, b: Int): Int {
return a + b
}
println(add(3, 4))
8. Maps
mutableMapOf stocke des paires clé-valeur.
val ages = mutableMapOf("Alice" to 30)
println(ages["Alice"])
9. Gestion des exceptions
Utilisez try, catch et finally pour gérer les erreurs.
try {
val result = 10 / 0
} catch (e: ArithmeticException) {
println("Erreur : ${e.message}")
}
10. E/S de fichiers
Utilisez File de java.io pour les opérations sur les fichiers.
import java.io.File
File("file.txt").writeText("Bonjour fichier")
val text = File("file.txt").readText()
println(text)
11. Manipulation de chaînes
Les chaînes Kotlin prennent en charge de nombreuses méthodes et l’interpolation.
val text = "Bonjour le monde"
println(text.length)
println(text.substring(0, 5))
println(text.contains("le monde"))
12. Classes et objets
Les classes Kotlin sont concises et prennent en charge les constructeurs par défaut.
class Person(val name: String) {
fun greet() = println("Salut, je suis $name")
}
val p = Person("Alice")
p.greet()
13. Sécurité face aux valeurs nulles
Kotlin distingue les types annulables et non annulables. Utilisez ? et ?: pour plus de sécurité.
val name: String? = null
println(name?.length ?: 0)