Home Informatique CV Projets Famille J'aime Mmm Coup de gueule Web Radio Belge B&M Jeux Art-NFT C+ 17

C'est une pub! Ce thême est basé sur w3 css.

Oui vous êtes capable de modifier ce thême

Cool? Oui, avec plein d'exemples faciles à comprendre et à modifier.

Aller sur W3.CSS Tutorial c'est en anglais mais google peux traduire les pages.

Dés virtuels

La curiosité n’est pas un vilain défaut mais une qualité fondamentale.

Petit programme qui simule des dés.

En TCL/TK

Version brute

#!/usr/bin/tclsh

package require Tk

# Define dices list
set dices [ list 4 6 8 10 12 20 100 ]
set maxdices 5

proc dice { number dice } {
    global myFont
    # number : Destination for output
    # dice : max posibility for random (see dices list)
    set out 0
    set dis ""
    for { set i 1 } { $i <= $number } { incr i } {
        set val [ expr int(rand() * $dice)+1 ]
        set out [ expr $out + $val ]
        if { $i == 1 } {
            set dis $val
        } else {
            set dis "$dis, $val"
        }
    }
    set dis "$dis -> $out"
    .result  configure -font myFont -text "$dis"

    return $out
}

font create myFont -family Helvetica -size 18 -weight bold 

set count 0 
foreach dc $dices {
    label .l$count -font myFont -text "D$dc" 
    grid .l$count -row $count -column 0 
    for { set i 1 } { $i <= $maxdices } { incr i } {
        button .b$count$i -font myFont -text "$i" -command "dice  $i $dc" 
        grid .b$count$i -row $count -column $i
    }
    incr count
}
label .result -font myFont -text " "
grid .result -row $count -column 0 -columnspan [ expr $maxdices + 1 ] 

En Python

Version brute

#!/usr/bin/env python3

import random
import tkinter as tk
from tkinter import font

# liste des dés
dices = [4, 6, 8, 10, 12, 20, 100]
maxdices = 5

def dice(number, dice):
    out = 0
    values = []

    for _ in range(number):
        val = random.randint(1, dice)
        out += val
        values.append(str(val))

    display = ", ".join(values) + f" -> {out}"
    result_label.config(text=display)

    return out


root = tk.Tk()
root.title("Dice")

myFont = font.Font(family="Helvetica", size=18, weight="bold")

count = 0
for dc in dices:
    label = tk.Label(root, text=f"D{dc}", font=myFont)
    label.grid(row=count, column=0)

    for i in range(1, maxdices + 1):
        btn = tk.Button(
            root,
            text=str(i),
            font=myFont,
            command=lambda i=i, dc=dc: dice(i, dc)
        )
        btn.grid(row=count, column=i)

    count += 1

result_label = tk.Label(root, text=" ", font=myFont)
result_label.grid(row=count, column=0, columnspan=maxdices + 1)

root.mainloop()