## atoibaseprog
##**AVERTISSEMENT! TRÈS IMPORTANT!**
Pour cet exercice une fonction sera testée **avec le main de l'examen** . Cependant l'étudiant **doit quand même** rendre un programme structuré:
Cela signifie que:
- Le package doit être nommé `package main` .
- Le code rendu doit avoir une fonction main déclarée(`func main()`) même si elle est vide.
- La fonction main déclarée doit **aussi passer** le `Restrictions Checker` (le testeur de fonctions illégales). Il est conseillé à l'étudiant de rendre une fonction main vide après ses tests finis.
- Toutes les autres régles sont les mêmes que pour un `programme` .
### Instructions
Écrire une fonction qui prend un nombre `string` et sa base `string` en paramètres et retourne sa conversion en `int` .
Si la base n'est pas valide elle retourne `0` :
Règles de validité d'une base :
- Une base doit contenir au moins 2 caractères.
- Chaque caractère d'une base doit être unique.
- Une base ne doit pas contenir les caractères `+` ou `-` .
Seuls des nombres en `string` valides seront testés.
La fonction **ne doit pas** gérer les nombres négatifs.
### Fonction attendue
```go
func AtoiBase(s string, base string) int {
}
```
### Utilisation
Voici un éventuel programme pour tester votre fonction :
```go
package main
import (
"fmt"
)
func main() {
fmt.Println(AtoiBase("125", "0123456789"))
fmt.Println(AtoiBase("1111101", "01"))
fmt.Println(AtoiBase("7D", "0123456789ABCDEF"))
fmt.Println(AtoiBase("uoi", "choumi"))
fmt.Println(AtoiBase("bbbbbab", "-ab"))
}
```
Et son résultat :
```console
student@ubuntu:~/test$ go build
student@ubuntu:~/test$ ./test
125
125
125
125
0
student@ubuntu:~/test$
```