Mission 2: QCM

Mission 2. Les bases de Java

Cette mission a pour objectif de renforcer vos connaissances des concepts de base de la programmation en Java.

Ces questions supposent que vous avez lu les sections suivantes du livre de référence JavaNotes :


Question 1: Types de données primitifs

Java supporte différents types de données primitifs : byte, int, short, long, float, double, char et boolean. Dans le cadre du cours, nous n'utiliserons pas les types byte et short. Dans un programme Java, vous devez stocker les informations suivantes :

  • le nombre d'étudiants en première année (variable etudiants)
  • le budget de l'état américain en dollars (variable budget)
  • le nombre \(\pi\) (variable pi)
  • une mesure de température (variable temp)
  • la présence d'un étudiant dans un local (variable present)
  • un caractère tapé sur un clavier (variable caractere)

Parmi les déclarations de variables suivantes, quelle est celle qu'il est préférable d'utiliser pour ces données ?

Question 2: Boucles for et while

Java supporte à la fois les boucles for et les boucles while. Souvent, on peut utiliser une boucle for à la place d'une boucle while et inversement. Considérons la boucle for ci-dessous :

for(int i=0; i<n; i=i+2) {
   //faire quelque chose
}

A laquelle des boucles while ci-dessous cette boucle est-elle équivalente ?

Question 3: Boucles imbriquées

Laquelle des boucles ci-dessous permet d'afficher à l'écran un rectangle composé de l lignes contenant chacune c caractères ? Par exemple, le rectangle ci-dessous est un rectangle de 3x7

XXXXXXX
XXXXXXX
XXXXXXX

On supposera pour répondre à cette question que les variables l et c ont été correctement initialisées.

Question 4: Calcul de la somme des diviseurs premiers d'un nombre

En arithmétique, certaines propriétés sur les nombres entiers dépendent de la somme des diviseurs entiers de ce nombre. Ainsi, un nombre \(n\) est dit parfait si \(\sigma(n)=2n\)\(\sigma(n)\) est la somme des diviseurs de ce nombre. Lequel des fragments de programmes ci-dessous place dans la variable sum la somme des diviseurs de n ?

Question 5: Vocabulaire

Considérons le fragment de programme ci-dessous.

int i;  // ligne 1
int j;  // ligne 2
i=12;   // ligne 3
j=i;    // ligne 4
double k=0.0; // ligne 5
if( i==j ) {  // ligne 6
   k=k+1.0;   // ligne 7
}             // ligne 8
else {        // ligne 9
   k=k-2.0;   // ligne 10
}             // ligne 11

Lesquelles des affirmations ci-dessous utilisent une terminologie correcte ?

Question 6: Instructions conditionnelles

Les instructions conditionnelles peuvent parfois comporter des conditions plus compliquées dans lesquelles des conditions simples sont combinées en utilisant la négation (!), la conjonction (&&) ou la disjonction logique (||). Parmi les instructions conditionnelles suivantes, quelle est celle dont la condition est vérifiée lorsque la valeur de la variable x se trouve dans l'intervalle \([min,max[\) ? On supposera que \(min<max\).

Question 7: Instructions conditionnelles imbriquées

Dans un programme Java, il est parfois nécessaire d'avoir une instruction conditionnelle qui contient elle-même une ou plusieurs autres instructions conditionnelles. Laquelle des instructions conditionnelles suivantes affiche-t-elle le message ok à l'écran lorsque la valeur de la variable de type double x est comprise entre 2.0 et 5.0 ?

Question 8: Boucles for

Les boucles for sont très fréquemment utilisées dans des programmes Java. Vous devez pouvoir utiliser facilement de telles boucles dans vos programmes. Parmi les boucles for ci-dessous, quelle est celle qui affiche cinq fois le caractère * à l'écran ?

Question 9: Boucles for

Laquelle des boucles for ci-dessous affiche correctement tous les diviseurs entiers du nombre n (supposé strictement positif) ?

Question 10: Boucles for

Laquelle des boucles for ci-dessous affiche correctement les carrés des n premiers entiers positifs ?

Question 11: Boucles for imbriquées

Sachant que System.out.print("X"); affiche le caractère X à l'écran et que System.out.println() force un retour à la ligne à l'écran, laquelle des boucles ci-dessous affiche-t-elle le carré de 4x4 ci-dessous

XXXX
XXXX
XXXX
XXXX
Question 12: Boucles for imbriquées

Il est souvent nécessaire dans des programmes informatiques de construire des boucles imbriquées, c'est-à-dire des boucles qui contiennent elles-même d'autres boucles. Laquelle des boucles ci-dessous affiche-t-elle à l'écran le texte suivant

X
XX
XXX
XXXX
XXXXX

Information

Author(s) Olivier BONAVENTURE
Deadline No deadline
Submission limit No limitation

Sign in