diff --git a/TP1/ADN.ts b/TP1/ADN.ts
new file mode 100644
index 0000000000000000000000000000000000000000..02204f4247cacadb023a52f4ba6973555504c402
--- /dev/null
+++ b/TP1/ADN.ts
@@ -0,0 +1,7 @@
+function estADN( aDN:string):boolean {
+    for(let c of aDN)
+        if (c !== 'A' && c !== 'C' &&c !== 'T' && c !== 'G'){
+        return false
+    }
+    return true
+}
diff --git a/TP1/ADN2.ts b/TP1/ADN2.ts
new file mode 100644
index 0000000000000000000000000000000000000000..a90ca6572a2b8604887a2b5b3c975d2fe919e31d
--- /dev/null
+++ b/TP1/ADN2.ts
@@ -0,0 +1,12 @@
+function transcrit( aDN:string):string {
+    let result = '';
+    for(let i = 0; i < aDN.length; i++){
+        if (aDN[i] === 'T'){
+            result += 'U';
+        }
+        else{
+        result += aDN[i];
+        }
+    }
+    return result
+}
diff --git a/TP1/ADN3.ts b/TP1/ADN3.ts
new file mode 100644
index 0000000000000000000000000000000000000000..a5f92877d712ac4b0890d1f4d2061145a4f1a8a9
--- /dev/null
+++ b/TP1/ADN3.ts
@@ -0,0 +1,7 @@
+function baseComplentaire( b:string):string {
+    if (b === 'A') return 'T';
+    if (b === 'T') return 'A';
+    if (b === 'G') return 'C';
+    if (b === 'C') return 'G';
+    return '';
+}
\ No newline at end of file
diff --git a/TP1/ADN4.ts b/TP1/ADN4.ts
new file mode 100644
index 0000000000000000000000000000000000000000..78395d5ce58bc1fd8624d32764947bd974d64d38
--- /dev/null
+++ b/TP1/ADN4.ts
@@ -0,0 +1,7 @@
+function sequenceComplInver( aDN:string):string {
+    let result = "";
+    for(let i = aDN.length-1; i > 0; i--){
+        result += baseComplementaire(aDN[i]);
+        return result;
+    }
+}
\ No newline at end of file
diff --git a/ex1tab.ts b/ex1tab.ts
new file mode 100644
index 0000000000000000000000000000000000000000..fb2e2f1a6b3601a4394da1463404f677476029e4
--- /dev/null
+++ b/ex1tab.ts
@@ -0,0 +1,7 @@
+function ecri_nombre(n:number): void {
+    for(let i=0; i<n; i++){
+        let valeur = prompt(`Donner le nombre num ${i+1}`);
+            valeur=Number(valeur);
+            if(!isNaN(valeur)) console.log(valeur);
+    }
+}
\ No newline at end of file
diff --git a/ex2tab.ts b/ex2tab.ts
new file mode 100644
index 0000000000000000000000000000000000000000..b68070a8df7afe58136f857d346ffbeab92d78d4
--- /dev/null
+++ b/ex2tab.ts
@@ -0,0 +1,12 @@
+function ajouterUn(tab: Array<number>): void {
+    for (let i in tab) tab[i] = 1 + tab[i];
+    }
+    let tab = [1, 2, 3, 4, 5];
+    ajouterUn(tab);
+
+function plusUn(tab:Array<number>): Array<number>{
+    let result : Array<number>;
+    for(let i=0; i<tab.length, i++)
+        result[i] = tab[i] + 1; 
+    return result;
+}
\ No newline at end of file
diff --git a/ex3tab.ts b/ex3tab.ts
new file mode 100644
index 0000000000000000000000000000000000000000..abddaa3906d8bbd025344ebb0e0751c6def1bf24
--- /dev/null
+++ b/ex3tab.ts
@@ -0,0 +1,5 @@
+function rotation(tab: Array<number>): void {
+    let temp = tab[tab.length - 1];
+    for (let i = tab.length; i>0; i++)
+        tab[i] = tab[i-1];
+}
\ No newline at end of file
diff --git a/src/main.ts b/src/main.ts
new file mode 100644
index 0000000000000000000000000000000000000000..b8c57fe7a3113af710b53c591cc842c834ff716c
--- /dev/null
+++ b/src/main.ts
@@ -0,0 +1 @@
+console.log("Hello World")
\ No newline at end of file