M3 - Programació estructurada / Exercicis UF1: Cerca
1. Escriu un programa que indiqui si existeix o no algun múltiple de 5 en una seqüència de números naturals finalitzada en -1 (seria interessant que una vegada trobat un múltiple, el programa no continués executant-se).
package ex_cerca;
import java.util.Scanner;
public class Ex1 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
int num;
// accedir al primer element
System.out.println("Introdueix un valor positiu + "
+ "(per acabar -1");
num = teclat.nextInt();
// Mentre no últim element i no element trobat fer
while (num!=-1 && num%5!=0) {
// obtenir següent element
System.out.println("Introdueix un valor positiu + "
+ "(per acabar -1");
num = teclat.nextInt();
}
// tractament final
if (num%5==0){
System.out.println(num+ " és múltiple de 5");
}
else{
System.out.println("No hi ha cap múltiple");
}
}
}
2. Escriu un programa que determini si un número enter es primer o no (recorda que un número primer només és divisible per 1 i per ell mateix).
package ex_cerca;
import java.util.Scanner;
public class Ex2 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
// accedir al primer element
int num,divisor=2;
//inicialitzar tractament
System.out.println("Introdueix un valor positiu: ");
num = teclat.nextInt();
// Mentre no últim element i no element trobat fer
while((divisor<num)&&(num%divisor!=0)){
// Següent element
divisor++;
}
// tractament final
if(divisor==num){
System.out.println("Primer");
}
else{
System.out.println("No es primer");
}
}
}
3. Escriu un programa que vagi llegint notes (per finalitzar -1) i indiqui si hi ha com a mínim tres suspesos. Només cal dir sí o no.
package ex_cerca;
import java.util.Scanner;
public class Ex3 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
// Inicialitzar tractament
int susp = 0;
// O
System.out.println("Introdueix un valor positiu + "
+ "(per acabar -1");
int nota = teclat.nextInt();
// Mentre no últim element i no element trobat fer
while ((nota != -1) && (susp < 3)) {
if (nota < 5) {
susp++;
}
if (susp < 3) {
// Obtenir següent element
System.out.println("Introdueix un valor positiu + "
+ "(per acabar -1");
nota = teclat.nextInt();
}
}
// Tractament final
if (susp == 3) {
System.out.println("Sí");
} else {
System.out.println("No");
}
}
}
4. Escriu un programa que vagi llegint números positius (per finalitzar -1) i indiqui si tots són parells.
5. Escriu un programa que llegeixi un número i indiqui si tots els dígits són parells.
6. Escriu un programa que vagi llegint números positius (per finalitzar -1) i indiqui si cada valor és més gran que l'anterior.
Exemple 1: 2 3 9 44 345 876 987 1067 -1 Es compleix! Exemple 2: 2 4 7 15 56 87 98 123 156 263 298 290 No es compleix!
7.- Escriu un programa que llegeixi una sèrie de notes entre 0.0 i 10.0 ordenada de forma ascendent i acabada en -1 i ens mostri quans suspesos hi ha i la mitjana de les notes suspeses. Es considera suspès les notes inferiors a 5.0.
Exemple 1: 2.2 3.3 4.5 4.8 5.2 Suspesos = 4 Mitjana = 3.7 Exemple 2: 1.2 2.1 3.0 3.0 4.1 4.2 4.8 -1 Suspesos = 7 Mitjana = 3.2
8- Escriu un programa que demani un número a cercar i llegeixi una seqüència d’enters positius acabada per un -1 i ordenada de forma creixent i indiqui si el número a cercar es troba o no en la seqüència.
Exemple 1: Num = 123 3 34 36 67 89 98 121 -1 No s'ha trobat el número en la seqüència! Exemple 2: Num = 351 3 34 36 67 89 98 121 235 346 411 No s'ha trobat el número en la seqüència! Exemple 3: Num = 715 33 134 236 367 489 625 715 S'ha trobat el número en la seqüència!