Diferència entre revisions de la pàgina «ASIX-M3-UF1-A2.5-Exercicis estructura iterativa: recorregut»

De wikiserver
Dreceres ràpides: navegació, cerca
 
(Hi ha 13 revisions intermèdies del mateix usuari que no es mostren)
Línia 13: Línia 13:
  
 
# Inicialitzar tractament
 
# Inicialitzar tractament
max = num;
+
max = num
 
min = num
 
min = num
  
Línia 33: Línia 33:
 
</source>
 
</source>
 
-->
 
-->
 +
 
2. Donat un número llegit per teclat, calcula el número de dígits que té.
 
2. Donat un número llegit per teclat, calcula el número de dígits que té.
 
<!--
 
<!--
Línia 65: Línia 66:
 
   
 
   
 
Per exemple si introdueixen el valor 1238, s'imprimirà el valor : 1+2+3+8 --> 14
 
Per exemple si introdueixen el valor 1238, s'imprimirà el valor : 1+2+3+8 --> 14
 
<source lang="python">
 
package exrecorregut;
 
 
import java.util.Scanner;
 
 
/**
 
* Donat un número llegit per teclat, realitzar la suma de tots els dígits del número.
 
*/
 
public class Ex3 {
 
 
    public static void main(String[] args) {
 
        Scanner teclat = new Scanner(System.in);
 
        //Declaració de variables
 
        int num, suma = 0;
 
        // Accedir al primer element
 
        System.out.print("Introdueix un valor positiu:");
 
        num = teclat.nextInt();
 
        // Mentre no ultim element
 
        while (num > 0) {
 
          // Tractar_element
 
          suma=suma+(num%10);
 
          // Obtenir següent element
 
          num=num/10;                                   
 
        }
 
        // Tractament_final
 
        System.out.println("La suma dels dígits és: "+suma);
 
 
    }
 
}
 
</source>
 
<!---->
 
  
 
4. Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.
 
4. Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.
 
<source lang="python">
 
package exrecorregut;
 
 
import java.util.Scanner;
 
 
/**
 
* Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.
 
*/
 
public class Ex4 {
 
 
    public static void main(String[] args) {
 
        Scanner teclat = new Scanner(System.in);
 
        int num, mod, suma = 0;
 
        System.out.print("Introdueix un valor positiu:");
 
        num = teclat.nextInt();
 
        while (num > 0) {
 
            mod = (num % 10);
 
            //Si és parell, sumo
 
            if (mod % 2 == 0) {
 
                suma = suma + mod;
 
            }
 
            num = num / 10;
 
        }
 
        System.out.println("La suma dels dígits parells és: " + suma);
 
 
    }
 
 
}
 
</source>
 
<!---->
 
  
 
5. Donat un número llegit per teclat, determina el número de dígits més grans que 5.
 
5. Donat un número llegit per teclat, determina el número de dígits més grans que 5.
 
<source lang="java">
 
package exrecorregut;
 
 
import java.util.Scanner;
 
 
/**
 
* Donat un número llegit per teclat, determina el número de dígits més grans que 5.
 
*/
 
public class Ex5 {
 
 
    public static void main(String[] args) {
 
        Scanner teclat = new Scanner(System.in);
 
        int num, mod, quants = 0;
 
        System.out.print("Introdueix un valor positiu:");
 
        num = teclat.nextInt();
 
        while (num > 0) {
 
            if (num%10>5){
 
                quants++;
 
            }
 
            num=num/10;                       
 
        }
 
        System.out.println("Hi ha "+quants+" dígits més grans que 5");
 
 
    }
 
}
 
</source>
 
<!---->
 
  
 
6. Escriu un programa que llegeixi números enters positius (finalitzarà amb la introducció de -1) i mostri totes les parelles de números  consecutius que apareixen a la seqüència.  
 
6. Escriu un programa que llegeixi números enters positius (finalitzarà amb la introducció de -1) i mostri totes les parelles de números  consecutius que apareixen a la seqüència.  
Línia 165: Línia 75:
 
Per exemple si la seqüència de números és: 7 10 11 23 4 5 8 10 11 12 -1, mostrarà: 10 11, 4 5, 10 11, 11 12
 
Per exemple si la seqüència de números és: 7 10 11 23 4 5 8 10 11 12 -1, mostrarà: 10 11, 4 5, 10 11, 11 12
  
<source lang="python">
+
7. Escriu un programa que llegeixi números enters positius (finalitzarà amb la introducció de -1) i mostri quants números parells han sortit, quants números imparells han sortit, la suma del números parells, la suma del números imparells i la resta de la suma dels parells menys la suma dels imparells.
package exrecorregut;
 
 
 
import java.util.Scanner;
 
  
/**
+
Per exemple si la seqüència de números és: 7 6 11 10 4 5 8 10 3 8 -1, mostrarà:
* Escriu un programa que llegeixi números enters positius (finalitzarà amb la introducció de -1)
 
* i mostri totes les parelles de números  consecutius que apareixen a la seqüència.
 
*/
 
public class Ex6 {
 
  
    public static void main(String[] args) {
+
<pre>
        Scanner teclat = new Scanner(System.in);
+
Parells: 6
        int anterior, actual;
+
Imparells: 4
        System.out.println("Introdueix un valor positiu + "
+
Suma parells: 46
                + "(per acabar -1");
+
Suma imparells: 26
        actual = teclat.nextInt();
+
Resta de sumes: 20
        anterior = actual;
+
</pre>
  
        while (actual != -1) {
+
8. Escriu un programa que llegeixi dos números enters positius i mostri i sumi tots els nombres parells que van des del primer número fins el segon (ambdós inclosos). Cal controlar que el segon número introduït és més gran que el primer.
            if (actual == anterior + 1) {
 
                System.out.println(anterior + "-" + actual);
 
  
            }
+
Exemple: num1 = 14 i num2 = 5 mostrarà un missatge d'error.
            anterior = actual;
 
            System.out.println("Introdueix un valor positiu + "
 
                    + "(per acabar -1");
 
            actual = teclat.nextInt();
 
  
        }
+
Exemple: num1 = 5 i num2 = 14 mostrarà:
    }
+
<pre>
}
+
Números parells: 6 8 10 12 14
</source>
+
Suma: 50
<!---->
+
</pre>

Revisió de 15:41, 30 nov 2021

1. Escriu un programa que llegeixi números enters positius i mostri el més petit i el més gran. El programa finalitzarà quan ens introdueixin un número negatiu.

2. Donat un número llegit per teclat, calcula el número de dígits que té.

3. Donat un número llegit per teclat, realitzar la suma de tots els dígits del número.

Per exemple si introdueixen el valor 1238, s'imprimirà el valor : 1+2+3+8 --> 14

4. Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.

5. Donat un número llegit per teclat, determina el número de dígits més grans que 5.

6. Escriu un programa que llegeixi números enters positius (finalitzarà amb la introducció de -1) i mostri totes les parelles de números consecutius que apareixen a la seqüència.

Per exemple si la seqüència de números és: 7 10 11 23 4 5 8 10 11 12 -1, mostrarà: 10 11, 4 5, 10 11, 11 12

7. Escriu un programa que llegeixi números enters positius (finalitzarà amb la introducció de -1) i mostri quants números parells han sortit, quants números imparells han sortit, la suma del números parells, la suma del números imparells i la resta de la suma dels parells menys la suma dels imparells.

Per exemple si la seqüència de números és: 7 6 11 10 4 5 8 10 3 8 -1, mostrarà:

Parells: 6
Imparells: 4
Suma parells: 46
Suma imparells: 26
Resta de sumes: 20

8. Escriu un programa que llegeixi dos números enters positius i mostri i sumi tots els nombres parells que van des del primer número fins el segon (ambdós inclosos). Cal controlar que el segon número introduït és més gran que el primer.

Exemple: num1 = 14 i num2 = 5 mostrarà un missatge d'error.

Exemple: num1 = 5 i num2 = 14 mostrarà:

Números parells: 6 8 10 12 14
Suma: 50