Diferència entre revisions de la pàgina «M3 - Programació estructurada / Exercicis UF1: Cerca»

De wikiserver
Dreceres ràpides: navegació, cerca
 
(Hi ha 10 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
 
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).
 
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).
 
 
<source lang="java">
 
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");
 
        }
 
       
 
       
 
 
    }
 
}
 
</source>
 
<!---->
 
  
 
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).
 
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).
<!--
 
<source lang="java">
 
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)){
 
                divisor++;
 
        }
 
        // tractament final
 
        if(divisor==num){
 
            System.out.println("Primer");
 
        }
 
        else{
 
            System.out.println("No es primer");
 
        }
 
 
    }
 
}
 
</source>
 
-->
 
  
 
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.
 
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.
<!--
 
<source lang="java">
 
package ex_cerca;
 
 
import java.util.Scanner;
 
 
public class Ex3 {
 
 
    public static void main(String[] args) {
 
 
        Scanner teclat = new Scanner(System.in);
 
        int nota, susp = 0;
 
        System.out.println("Introdueix un valor positiu + "
 
                + "(per acabar -1");
 
        nota = teclat.nextInt();
 
        while ((nota != -1) && (susp < 3)) {
 
            if (nota < 5) {
 
                susp++;
 
            }
 
            if (susp < 3) {
 
                System.out.println("Introdueix un valor positiu + "
 
                        + "(per acabar -1");
 
                nota = teclat.nextInt();
 
            }
 
        }
 
        if (susp == 3) {
 
            System.out.println("Sí");
 
        } else {
 
            System.out.println("No");
 
        }
 
 
    }
 
}
 
</source>
 
-->
 
  
 
4. Escriu un programa que vagi llegint números positius (per finalitzar -1) i indiqui si tots són parells.
 
4. Escriu un programa que vagi llegint números positius (per finalitzar -1) i indiqui si tots són parells.
<!--
 
<source lang="java">
 
package ex_cerca;
 
 
import java.util.Scanner;
 
 
public class Ex4 {
 
 
    public static void main(String[] args) {
 
 
        Scanner teclat = new Scanner(System.in);
 
        int num;
 
        System.out.println("Introdueix un valor positiu + "
 
                + "(per acabar -1");
 
        num = teclat.nextInt();
 
        while ((num != -1) && (num % 2 == 0)) {
 
            System.out.println("Introdueix un valor positiu + "
 
                    + "(per acabar -1");
 
            num = teclat.nextInt();
 
 
        }
 
        if(num==-1){
 
            System.out.println("Tots parells");
 
        }
 
        else{
 
            System.out.println("No són tots parells");
 
        }
 
    }
 
}
 
</source>
 
-->
 
  
 
5. Escriu un programa que llegeixi un número i indiqui si tots els dígits són parells.
 
5. Escriu un programa que llegeixi un número i indiqui si tots els dígits són parells.
<!--
 
<source lang="java">
 
package ex_cerca;
 
 
import java.util.Scanner;
 
 
public class Ex5 {
 
 
    public static void main(String[] args) {
 
 
        Scanner teclat = new Scanner(System.in);
 
        int num;
 
        System.out.println("Introdueix un valor positiu ");
 
        num = teclat.nextInt();
 
        while ((num > 0) && (num % 2 == 0)) {
 
            num = num / 10;
 
        }
 
        if (num == 0) {
 
            System.out.println("Tots parells");
 
        } else {
 
            System.out.println("No són tots parells");
 
        }
 
 
    }
 
}
 
</source>
 
-->
 
  
 
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.
 
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.
Línia 185: Línia 21:
 
No es compleix!
 
No es compleix!
 
</pre>
 
</pre>
 
<!--
 
<source lang="java">
 
package ex_cerca;
 
 
import java.util.Scanner;
 
 
public class Ex6 {
 
 
    public static void main(String[] args) {
 
 
        Scanner teclat = new Scanner(System.in);
 
        int num, anterior = -1;
 
        System.out.println("Introdueix un valor positiu + "
 
                + "(per acabar -1");
 
        num = teclat.nextInt();
 
        while ((num != -1) && (anterior < num)) {
 
            anterior = num;
 
            System.out.println("Introdueix un valor positiu + "
 
                    + "(per acabar -1");
 
            num = teclat.nextInt();
 
 
        }
 
        if(num==-1){
 
            System.out.println("Es compleix");
 
        }
 
        else{
 
            System.out.println("No es compleix");
 
        }
 
 
    }
 
}
 
</source>
 
-->
 
  
 
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.  
 
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.  
Línia 235: Línia 37:
 
Mitjana = 3.2
 
Mitjana = 3.2
 
</pre>
 
</pre>
<!--
 
<source lang="java">
 
package ex_cerca;
 
 
import java.util.Scanner;
 
 
public class Ex7 {
 
    public static void main(String[] args) {
 
        Scanner teclat = new Scanner(System.in);
 
        double sumaNotes =0.0 , nota;
 
        int contSusp = 0;
 
        System.out.println("Nota: ");
 
        nota = teclat.nextDouble();
 
      while ((nota!=-1) && (nota<5.0)){
 
            contSusp++;
 
            sumaNotes += nota;
 
            System.out.println("Nota: ");
 
            nota = teclat.nextDouble();
 
        }
 
        System.out.println("Suspesos: "+contSusp);
 
        System.out.println("Mitjana: "+(sumaNotes / contSusp));
 
    }
 
}
 
</source>
 
-->
 
  
 
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.
 
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.
Línia 282: Línia 59:
 
S'ha trobat el número en la seqüència!
 
S'ha trobat el número en la seqüència!
 
</pre>
 
</pre>
<!--
 
<source lang="java">
 
package ex_cerca;
 
 
import java.util.Scanner;
 
 
public class Ex8 {
 
    public static void main(String[] args) {
 
        Scanner teclat = new Scanner(System.in);
 
        // accedir al primer element
 
        System.out.println("Introdueix un valor positiu: ");
 
        int numCercar = teclat.nextInt();
 
        System.out.println("Introdueix el primer valor de la seqüència: ");
 
        int num = teclat.nextInt();
 
        // Mentre no últim element i no element trobat fer
 
        while (num!=-1 && num<numCercar) {
 
            // obtenir següent element
 
            System.out.println("Introdueix el següent valor de la seqüència (per acabar -1): ");
 
            num = teclat.nextInt();
 
        }
 
        // tractament final
 
        if (num==numCercar){
 
            System.out.println("S'ha trobat el número en la seqüència!");
 
        }
 
        else{
 
            System.out.println("No s'ha trobat el número en la seqüència!");
 
        }               
 
    }
 
           
 
}
 
</source>
 
-->
 

Revisió de 18:43, 10 set 2022

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).

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).

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.

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!