This commit is contained in:
2025-12-10 00:14:53 +01:00
parent df9520821a
commit 41df0a89b9
31 changed files with 579 additions and 0 deletions

BIN
TP4/stub/0Bad/Base.class Normal file

Binary file not shown.

4
TP4/stub/0Bad/Base.java Normal file
View File

@@ -0,0 +1,4 @@
// juste un type énuméré pour nommer les bases
public enum Base {
A,C,G,T
}

BIN
TP4/stub/0Bad/Exemple.class Normal file

Binary file not shown.

View File

@@ -0,0 +1,31 @@
// Fichier Exemple pour le premier exercice sur l'ADN
public class Exemple{
public static void main(String[] args) {
// codon GCT code l'analine https://en.wikipedia.org/wiki/DNA_codon_table
// stop codon TAG, voir https://en.wikipedia.org/wiki/Stop_codon
System.out.println("construction du brin GCTTAG");
MonMaillon l = new MonMaillon(Base.G);
l = new MonMaillon(Base.A,l);
l = new MonMaillon(Base.T,l);
l = new MonMaillon(Base.T,l);
l = new MonMaillon(Base.C,l);
l = new MonMaillon(Base.G,l);
MonBrin b = new MonBrin(l);
System.out.println("l'affichage par défaut du brin ne va pas vous plaire");
System.out.println(b.toString());
System.out.println("On peut afficher en avançant");
System.out.println("Il faut s'en inspirer pour implémenter l'interface iterator de Java.util");
MonMaillon actuel = b.getDebut();//NB: c'est comme l ci-dessus
while (actuel != null){
System.out.println(actuel.getBase());
actuel = actuel.getSuiteMaillon();
}
}
}

BIN
TP4/stub/0Bad/MonBrin.class Normal file

Binary file not shown.

View File

@@ -0,0 +1,28 @@
/**
MonBrin code un brin d'ADN sous forme de liste simplement chaînée.
Plusieurs instances de MonMaillon reliées convenablement forment une structure
simplement chaînée contenant pour chaque maillon le nom de la base.
On n'utilise pas java.util et on recode tout.
Cette version a un problème : la navigation n'est pas raisonnable
*/
public class MonBrin {
// premier maillon du brin
private MonMaillon debut;
// Le constructeur fabrique un brin à partir du premier maillon p;
public MonBrin(MonMaillon p){
this.debut = p;
}
public MonMaillon getDebut(){
return this.debut;
}
/** et pour naviguer?
On pourrait implémenter l'interface iterator de java.util ici
**/
}

Binary file not shown.

View File

@@ -0,0 +1,40 @@
/**
MonMaillon code un maillon d'un brin d'ADN.
plusieurs instances reliées convenablement forment une structure
simplement chaînée contenant pour chaque maillon le nom de la base.
On n'utilise pas java.util et on recode tout.
*/
public class MonMaillon {
// la base portée par ce maillon
private Base base;
// le maillon suivant dans le brin (null si fin de chaîne)
private MonMaillon suite;
// Le constructeur de base retourne un brin à une base;
public MonMaillon(Base b){
this.base = b;
this.suite = null;
}
// Le constructeur évolué ajoute une base à un brin.
public MonMaillon(Base b, MonMaillon l){
this.base = b;
this.suite = l;
}
public Base getBase(){
return this.base;
}
public MonMaillon getSuiteMaillon(){
return this.suite;
}
}