Exercice 6.13: nombre quelconque, max Terminé

Consigne

Ecrivez un algorithme permettant, toujours sur le même principe, à l’utilisateur de saisir un nombre déterminé de valeurs. Le programme, une fois la saisie terminée, renvoie la plus grande valeur en précisant quelle position elle occupe dans le tableau. On prendra soin d’effectuer la saisie dans un premier temps, et la recherche de la plus grande valeur du tableau dans un second temps.

Pseudo code

length, number, max, maxIndex, i des NUMERIQUES
values un TABLEAU

DEBUT
    ECRIRE "Entrez le nombre de valeur(s) à saisir"
    LIRE "lenght"

    POUR i 0 à length
        ECRIRE "Entrez le nombre n°" + ( i + 1 )
        LIRE number
        
        values[i] = number
    i SUIVANT

    max = values[0]
    maxIndex = 0

    POUR i 0 à length
        SI (values[i] > max)
            max = values[i]
            maxIndex = i
        FIN SI
    i SUIVANT
    
    ECRIRE "La valeur la plus grande est" + max + ". Elle a été saisie en position " + ( maxIndex + 1 ) + " sur " + length
FIN

Conversion

let length = 0;
let loopLap = 0;
let values = [];

function javascript() {
    let output = document.querySelector('.response-displayer > .codeblock > pre#javascript');
        output.classList.add('show');
    let nEntry = document.querySelector('input[name="entry"]');
    let max = 0;
    let maxIndex = 0;

    if (nEntry.value.length > 0 && length === 0) {
        length = +nEntry.value;
    } else {
        values[loopLap - 1] = +nEntry.value;
    }

    if (loopLap < length) {
        nEntry.placeholder = "Entrez le nombre n°" + (loopLap + 1) + " sur " + length;
        output.innerHTML = "Entrez le nombre n°" + (loopLap + 1) + " sur " + length;
        nEntry.value = "";
    }
    else {
        nEntry.disabled = true;
        nEntry.value = "Travail terminé !";

        max = values[0];
        for (let index = 0; index < values.length; index++) {
            if (values[index] > max) {
                max = values[index];
                maxIndex = index;
            }
        }

        output.innerHTML = "[JS]: La valeur saisie la plus grand est: " + max + ". Elle a été saisie en position " + ( maxIndex + 1) + " sur " + length;
    }

    loopLap++;
}
// Already defined inside javascript.js
// let length = 0;
// let loopLap = 0;
// let values = [];

function jquery() {
    $('.response-displayer > .codeblock > pre').removeClass('show')
    let $output = $('.response-displayer > .codeblock > pre#jquery').addClass('show')
    let $nEntry = $('input[name="entry"]');
    let max = 0;
    let maxIndex = 0;

    console.log($nEntry.val())

    if ($nEntry.val().length > 0 && length === 0) {
        length = +$nEntry.val();
    } else {        
        values[loopLap - 1] = +$nEntry.val();
    }

    if (loopLap < length) {
        $nEntry.attr("placeholder", "Entrez le nombre n°" + (loopLap + 1) + " sur " + length);
        $output.html("Entrez le nombre n°" + (loopLap + 1) + " sur " + length);
        $nEntry.val("");
    }
    else {
        $nEntry.prop('disabled', true);
        $nEntry.val("Travail terminé !");

        max = values[0];
        for (let index = 0; index < values.length; index++) {
            if (values[index] > max) {
                max = values[index];
                maxIndex = index;
            }
        }

        $output.html("[jQuery]: La valeur saisie la plus grand est: " + max + ". Elle a été saisie en position " + ( maxIndex + 1) + " sur " + length);
    }
    
    loopLap++;
}
<?php

if (empty($_SESSION['length'])) {
    $_SESSION['length'] = 0;
    $_SESSION['values'] = [];
    $_SESSION['loopLap'] = 0;
}

if ($_POST['entry'] > 0 && $_SESSION['length'] === 0) {
    $_SESSION['length'] = $_POST['entry'];
} else {
    $_SESSION['values'][( $_SESSION['loopLap'] - 1 )] = intval($_POST['entry']);
}


if ($_SESSION['loopLap'] < $_SESSION['length']) {
    echo "Entrez le nombre n°" . ( $_SESSION['loopLap'] + 1 ) . " sur " . $_SESSION['length'];
    $_POST['entry'] = "Entrez le nombre n°" . ( $_SESSION['loopLap'] + 1 ) . " sur " . $_SESSION['length'];
} else {
    $_POST['entry'] = "Travail terminé !";
    
    $max = $_SESSION['values'][0];
    $maxIndex = 0;
    foreach ($_SESSION['values'] as $index => $value) {
        if ($value > $max) {
            $max = $value;
            $maxIndex = $index;
        }
    }
    echo "[PHP]: La valeur saisie la plus grand est: " . $max . ". Elle a été saisie en position " . ( $maxIndex + 1) . " sur " . $_SESSION['length'];

    $_SESSION['length'] = 0;
    $_SESSION['posCount'] = 0;
    $_SESSION['negCount'] = 0;
    $_SESSION['loopLap'] = 0;
}

$_SESSION['loopLap']++;

Choisissez un language:

Entrez les valeurs nécessaires:

Résultat du code

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