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

De wikiserver
Dreceres ràpides: navegació, cerca
Línia 96: Línia 96:
  
 
<source lang="python">
 
<source lang="python">
package exrecorregut;
+
'''
 +
Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.
 +
'''
 +
print("Suma de tots els digits d'un número")
  
import java.util.Scanner;
+
# Accedir al primer element
 +
num = int(input("Introdueix un valor positiu: "))
  
/**
+
# Inicialitzar tractament
* Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.
+
suma = 0
*/
 
public class Ex4 {
 
  
    public static void main(String[] args) {
+
# Mentre no ultim element
        Scanner teclat = new Scanner(System.in);
+
while num > 0:  
        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);
 
  
     }
+
  # Tractar_element
 +
  mod = num % 10
 +
  if mod % 2 == 0:
 +
     suma = suma + mod
 +
   
 +
  # Obtenir següent element
 +
  num=num//10
  
}
+
# Tractament_final 
</source>
+
print("La suma dels dígits parells és: ", suma)
 
<!---->
 
<!---->
  

Revisió del 13:18, 30 oct 2020

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

'''
Donat un número llegit per teclat, realitzar la suma de tots els dígits del número.
'''
print("Suma de tots els digits d'un número")

# Accedir al primer element
num = int(input("Introdueix un valor positiu: "))

# Inicialitzar tractament
suma = 0

# Mentre no ultim element 
while num > 0: 

  # Tractar_element
  suma=suma+(num%10)
  
  # Obtenir següent element 
  num=num//10

# Tractament_final   
print("La suma dels dígits és: ", suma)

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

'''
Donat un número llegit per teclat, realitzar la suma de tots els dígits parells del número.
'''
print("Suma de tots els digits d'un número")

# Accedir al primer element
num = int(input("Introdueix un valor positiu: "))

# Inicialitzar tractament
suma = 0

# Mentre no ultim element 
while num > 0: 

  # Tractar_element
  mod = num % 10
  if mod % 2 == 0:
    suma = suma + mod
     
  # Obtenir següent element 
  num=num//10

# Tractament_final   
print("La suma dels dígits parells és: ", suma)
<!---->

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");

    }
}

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

package exrecorregut;

import java.util.Scanner;

/**
 * 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) {
        Scanner teclat = new Scanner(System.in);
        int anterior, actual;
        System.out.println("Introdueix un valor positiu + "
                + "(per acabar -1");
        actual = teclat.nextInt();
        anterior = actual;

        while (actual != -1) {
            if (actual == anterior + 1) {
                System.out.println(anterior + "-" + actual);

            }
            anterior = actual;
            System.out.println("Introdueix un valor positiu + "
                    + "(per acabar -1");
            actual = teclat.nextInt();

        }
    }
}