Exercice 7.4: Supprimer une valeur d'un tableau Terminé

Consigne

Ecrivez un algorithme qui permette à l’utilisateur de supprimer une valeur d’un tableau préalablement saisi.
L’utilisateur donnera l’indice de la valeur qu’il souhaite supprimer. Attention, il ne s’agit pas de remettre une valeur
à zéro, mais bel et bien de la supprimer du tableau lui-même ! Si le tableau de départ était :

12    8    4    45    64    9    2

Et que l’utilisateur souhaite supprimer la valeur d’indice 4, le nouveau tableau sera :

12    8    4    45     9    2

Pseudo code

indexToDelete, index, spliceIndex des NUMERIQUES
arrToSplice, temp, values des TABLEAUX

DEBUT
    ECRIRE "Entrez l'index de l'élément à supprimer dans le tableau"
    LIRE indexToDelete
    
    FONCTION mySplice(arrToSplice, spliceIndex)
        temp = []
        
        POUR index 0 à 8
            temp[index] = arrToSplice[index]
            
            SI (index >= spliceIndex) ALORS
                temp[index] = arrToSplice[index + 1]
            FIN SI
        FIN POUR

        RETOURNE temp
    FIN DE FONCTION

    ECRIRE mySplice(values, indexToDelete)
FIN

Conversion

function javascript() {
    let output = document.querySelector('.response-displayer > .codeblock > pre#javascript');
        output.classList.add('show');
    let nIndiceToDelete = document.querySelector('input[name="indiceToDelete"]');
    let values = [1, 2, 3, 4, 5, 6, "a", "b", "c"];

    /**
     * My Splice
     * Delete an element inside an array.
     * @param {Array} arrToSplice Array to splice.
     * @param {Number} spliceIndex Element index to delete.
     * @return {Array} New array without selected index.
     */
    function mySplice(arrToSplice, spliceIndex) {
        let temp = [];

        for (let index = 0; index < arrToSplice.length-1; index++) {
            temp[index] = arrToSplice[index];
    
            if (index >= spliceIndex) {
                temp[index] = arrToSplice[index + 1];
            }
        }

        return temp;
    }

    // Replace old, by new array content.
    values = mySplice(values, nIndiceToDelete.value);

    output.innerHTML = "[JS]: " + values;
}
function jquery() {
    $('.response-displayer > .codeblock > pre').removeClass('show')
    let $output = $('.response-displayer > .codeblock > pre#jquery').addClass('show')
    let $nIndiceToDelete = $('input[name="indiceToDelete"]');

    let values = [1, 2, 3, 4, 5, 6, "a", "b", "c"];

    /**
     * My Splice
     * Delete an element inside an array.
     * @param {Array} arrToSplice Array to splice.
     * @param {Number} spliceIndex Element index to delete.
     * @return {Array} New array without selected index.
     */
    function mySplice(arrToSplice, spliceIndex) {
        let temp = [];

        for (let index = 0; index < arrToSplice.length-1; index++) {
            temp[index] = arrToSplice[index];
    
            if (index >= spliceIndex) {
                temp[index] = arrToSplice[index + 1];
            }
        }

        return temp;
    }

    // Replace old, by new array content.
    values = mySplice(values, $nIndiceToDelete.val());

    $output.html("[jQuery]: " + values);
}
<?php

$values = [1, 2, 3, 4, 5, 6, "a", "b", "c"];

/**
 * My Splice
 * Delete an element inside an array.
 * @param Array $arrToSplice Array to splice.
 * @param Int $spliceIndex Element index to delete.
 * @return Array New array without selected index.
 */
function mySplice(Array $arrToSplice, Int $spliceIndex):Array {
    $temp = [];
    $length = count($arrToSplice);

    for ($index = 0; $index < $length-1; $index++) {
        $temp[$index] = $arrToSplice[$index];

        if ($index >= $spliceIndex) {
            $temp[$index] = $arrToSplice[$index + 1];
        }
    }

    return $temp;
}

print_r(mySplice($values, $_POST['indiceToDelete']));

Choisissez un language:

Entrez les valeurs nécessaires:

Résultat du code

Le résultat s'affichera après l'exécution du code.