mercredi 18 novembre 2015

Exercice2 : PHP5

Donner la valeur booléenne des variables
$a, $b, $c, $d, $e et $f :
 $a="0";
 $b="TRUE";
$c=FALSE;
 $d=($a OR $b);
$e=($a AND $c);
 $f=($a XOR $b);

Solution :
même dans sa dernière version, PHP continue à afficher 1 pour TRUE et rien (une chaîne vide !) pour FALSE. Pour réaliser l’évaluation booléenne des variables et afficher le résultat en clair (avec les mots TRUE ou FALSE) nous pouvons écrire le code suivant :

Exercice PHP5

Donner la valeur de chacune des variables pendant et à la fin du
script suivant et vérifier l’évolution du type de ces variables :
$x="PHP5";
$a[]=&$x;
$y=" 5 eme version de PHP";
$z=$y*10;
$x.=$y;
$y*=$z;
$a[0]="MySQL";

Solution : Script affichant les valeurs et les types

exercice Ajax

Le but de l'exercice est de récupérer les informations sur certaines stations velib, le nombre de vélos et de bornes disponibles.
En entrée, l'utilisateur saisi le numéro de sa station dans un formulaire, puis clique sur "ok" et en AJAX l'interface va interroger le serveur velib pour connaitre :
  • Le nom de la station
  • L'adresse de la station
  • Sa position (long & lat)
  • Le nombre de vélos disponibles
  • Le nombre de bornes disponibles
  • Le nombre de vélo ou bornes en panne
Il faudra utiliser plusieurs outils à votre disposition :

mardi 17 novembre 2015

Exercice Cryptographie 1

Un des plus anciens systèmes de cryptographie (aisément déchiffrable) consiste à décaler les lettres d’un message pour le rendre illisible. Ainsi, les A deviennent des B, les B des C, etc. Ecrivez un algorithme qui demande une phrase à l’utilisateur et qui la code selon ce principe. Comme dans le cas précédent, le codage doit s’effectuer au niveau de la variable stockant la phrase, et pas seulement à l’écran.

Variables Bla, Cod, Alpha en Caractère
Variables i, Pos en Entier
Début
Ecrire "Entrez la phrase à coder : "
Lire Bla
Alpha ← "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Cod ← ""
Pour i ← 1 à Len(Bla)
  Let ← Mid(Bla, i, 1) 
  Si Let <> "Z" Alors
    Pos ← Trouve(Alpha, Let)
    Cod ← Cod & Mid(Alpha, Pos + 1, 1) 
  Sinon
    Cod ← Cod & "A" 
  FinSi
i Suivant
Bla ← Cod
Ecrire "La phrase codée est : ", Bla

Fin

Calculer la racine carrée positive d'un double

Il s'agit d'écrire une classe servant à calculer la racine carrée d'un nombre réel de type double sans utiliser la méthode de la classe java.lang.Math effectuant ce calcul mais par une approche par dichotomie. Ce nombre sera envoyé comme argument sur la ligne de commande après le nom de la classe contenant la méthode main.

On ne traitera pas le cas où on demanderait d'extraire la racine carrée d'un nombre négatif. Un autre exercice, utilisant les exceptions, remédiera à ce défaut.

On récupérera le programme ici présent pour le compléter. La classe Racine proposée contient un attribut privé (déclaré private), l'attribut precision, ce qui entraîne que cet attribut n'est pas directement accessible depuis une autre classe.

Trier un tableau d'entiers

Il s'agit d'écrire une méthode statique d'en-tête :
    public static void trier(int[] tableau)
qui prend en paramètre un tableau tri d'entiers et trie ce tableau, par un algorithme de tri de votre choix. Cette méthode sera mise dans une classe nommée Tri.
Notre corrigé utilise un tri par insertion.
Vous ajouterez aussi à la classe Tri une méthode d'en-tête :

Limiter le nombre de décimales d'un double

 L'exercice qui suit permet de travailler sur les chaînes de caractères.

Il s'agit de définir une méthode permettant de limiter le nombre de décimales d'un double, c'est-à-dire de tronquer la chaîne de caractères représentant le double si le nombre de décimales est supérieure à une valeur donnée.

Pour cela, on définira une classe contenant une méthode statique, la méthode tronque, ayant deux paramètres : un param&eagrave;tre de type String représentant un double x et un entier nbDecimales. La méthode devra retourner une chaîne de caractères donnant le double x éventuellement tronqué de façon à avoir au plus nbDecimales décimales. On ne cherchera pas à "arrondir au plus proche", on enlèvera simplement les décimales excédentaires, que x soit positif ou négatif.

La valeur de x et celle de nbDecimales seront transmis par la ligne de commande.

Voici quelques exemples d'exécution.

java EcritDouble 98.7689 2
98.76

java EcritDouble -0.765 1
-0.7

java EcritDouble -4.765 0
-4

Les méthode suivantes de la classe String pourraient vous servir :