Skip to content

Instantly share code, notes, and snippets.

View yves-chevallier's full-sized avatar

Yves Chevallier yves-chevallier

View GitHub Profile
@yves-chevallier
yves-chevallier / teapot.cpp
Created December 24, 2023 08:42
Teapot test on WSL2
// g++ test.cpp -lGL -lGLEW -lglfw -lGLU -lsfml-window -lsfml-system -lglut
// Works under WSL2
#include <GL/glew.h>
#include <GL/glut.h>
#include <GLFW/glfw3.h>
#include <iostream>
#define WIDTH 800
#define HEIGHT 600
@yves-chevallier
yves-chevallier / svg2mxgraph.py
Created October 28, 2023 16:47
SVG to mxGraph experiment
"""
MxGraph Primitives
<move x="0" y="0"/>
<line x="0" y="0"/>
<quad x1="0" y1="0" x2="0" y2="0"/>
<curve x1="0" y1="0" x2="0" y2="0" x3="0" y3="0"/>
"""
from xml.dom import minidom
import re
#pragma once
#include <iostream>
#include <cmath>
template <class T>
class Vector2 {
public:
using value_type = T;
@yves-chevallier
yves-chevallier / sudoku.c
Created December 5, 2022 14:23
Generate sudoku grids
/**
* Generate a Sudoku grid.
* Author: Y. Chevallier <yves.chevallier@heig-vd.ch>
*/
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
@yves-chevallier
yves-chevallier / monty-hall.py
Created February 27, 2022 10:11
Monty Hall Problem - The Game
""" Monty Hall Problem - The Game
https://fr.wikipedia.org/wiki/Probl%C3%A8me_de_Monty_Hall
Supposez que vous êtes sur le plateau d'un jeu télévisé, face à trois portes
et que vous devez choisir d'en ouvrir une seule, en sachant que derrière l'une
d'elles se trouve une voiture et derrière les deux autres des chèvres.
Vous choisissez une porte, disons la numéro 1, et le présentateur, qui sait,
lui, ce qu'il y a derrière chaque porte, ouvre une autre porte, disons la numéro 3,
porte qui une fois ouverte découvre une chèvre.
@yves-chevallier
yves-chevallier / particles.cpp
Created December 4, 2021 16:36
Particles in SFML
#include <SFML/Graphics.hpp>
#include <SFML/Graphics/Color.hpp>
#include <algorithm>
#include <cmath>
struct HSL {
double Hue;
double Saturation;
double Luminance;
#define _POSIX_SOURCE
#include <stdlib.h>
#include <curses.h>
#include <signal.h>
#include <sys/time.h>
#include <errno.h>
#include <time.h>
#include <string.h>
#include <stdbool.h>
/**
* Boid (Bird-oid). An artificial life simulation of a single
* boid initially developed by Craig Reynolds in 1986 and based
* on three rules: Separation, Cohesion and Alignment.
*/
#include <cmath>
#include <functional>
#include <random>
@yves-chevallier
yves-chevallier / notes.md
Created November 1, 2020 16:35
Remarques sur les labos

Remarques générales sur les labos

Dans l'ensemble vous faites du bon travail. Le code est minimaliste, propre et souvent fonctionnel.

Rappelez-vous que c'est le résultat qui compte. Donc si vous avez un joli code mais qu'il ne passe pas les tests, vous perdez des points.

Voici quelques points d'amélioration utiles pour les futures labos.

@yves-chevallier
yves-chevallier / score.py
Created October 21, 2020 06:18
Score file
#!/usr/bin/env python3
import yaml
def note(got, total):
return round(got / total * 5. + 1., 1)
def get_points(u):
got = 0
total = 0
for k, v in u.items():