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

De wikiserver
Dreceres ràpides: navegació, cerca
 
(Hi ha una revisió intermèdia del mateix usuari que no es mostren)
Línia 9: Línia 9:
 
   print(i ,end= " ")
 
   print(i ,end= " ")
 
</source>
 
</source>
 +
<!---->
  
 +
2. Imprimir els números parells del 0 al 98.
  
2. Imprimir els números parells del 0 al 98.
 
<!---->
 
 
<source lang="python">
 
<source lang="python">
 
print("Imprimir els números parells del 0 al 98")
 
print("Imprimir els números parells del 0 al 98")
Línia 19: Línia 19:
 
   print(i ,end= " ")
 
   print(i ,end= " ")
 
</source>
 
</source>
 
+
<!---->
  
 
3. Imprimir els números del 100 al 1.
 
3. Imprimir els números del 100 al 1.
<!---->
 
  
 
<source lang="python">
 
<source lang="python">
Línia 30: Línia 29:
 
   print(i ,end= " ")
 
   print(i ,end= " ")
 
</source>
 
</source>
 +
<!---->
  
 
4. Demanar cinc números i mostrar la suma.
 
4. Demanar cinc números i mostrar la suma.
<!---->
+
 
 
<source lang="python">
 
<source lang="python">
 
print("Demanar cinc números i mostrar la suma")
 
print("Demanar cinc números i mostrar la suma")
Línia 42: Línia 42:
 
print("La suma és: %d" %suma)
 
print("La suma és: %d" %suma)
 
</source>
 
</source>
 +
<!---->
  
 +
5. Igual que l'anterior però només sumant els valors més grans de 10.
  
5. Igual que l'anterior però només sumant els valors més grans de 10.
 
<!---->
 
 
<source lang="python">
 
<source lang="python">
 
print("Demanar cinc números i sumar els valors que siguin més grans de 10")
 
print("Demanar cinc números i sumar els valors que siguin més grans de 10")
Línia 56: Línia 56:
 
print("La suma és: %d" %suma)
 
print("La suma és: %d" %suma)
 
</source>
 
</source>
 +
<!---->
  
 +
6. Calcular el producte dels números del 1 al 10.
  
6. Calcular el producte dels números del 1 al 10.
 
<!---->
 
 
<source lang="python">
 
<source lang="python">
 
print("Calcular el producte dels números del 1 al 10")
 
print("Calcular el producte dels números del 1 al 10")
Línia 68: Línia 68:
 
print("EL resultat és: ", mult)
 
print("EL resultat és: ", mult)
 
</source>
 
</source>
 +
<!---->
  
 +
7. Demanar cinc números enters positius i mostrar el valor més gran.
  
7. Demanar cinc números enters positius i mostrar el valor més gran.
 
<!---->
 
 
<source lang="python">
 
<source lang="python">
 
print("Demanar cinc números enters positius i mostrar el valor més gran")
 
print("Demanar cinc números enters positius i mostrar el valor més gran")
Línia 82: Línia 82:
 
print("El màxim és: ", max)
 
print("El màxim és: ", max)
 
</source>
 
</source>
 
+
<!---->
  
 
8. Fer un quadrat d'asteriscos. Per exemple si l'usuari introdueix el valor 5, imprimirà:
 
8. Fer un quadrat d'asteriscos. Per exemple si l'usuari introdueix el valor 5, imprimirà:
Línia 92: Línia 92:
 
     * * * * *
 
     * * * * *
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang="python">
 
<source lang="python">
 
print("Quadrat n x n d'asteriscos")
 
print("Quadrat n x n d'asteriscos")
Línia 100: Línia 100:
 
   print("* "*num)
 
   print("* "*num)
 
</source>
 
</source>
 +
-->
 +
 +
<source lang="python">
 +
print("Quadrat n x n d'asteriscos")
 +
 +
num = int(input("Introdueix número d'asteriscos: "))
 +
for _ in range(num):
 +
  for _ in range(num):
 +
    print("* ")
 +
  print("")
 +
</source>
 +
<!---->
  
  
Línia 110: Línia 122:
 
     * * * * *
 
     * * * * *
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang="python">
 
<source lang="python">
 
print("Quadrat n x n d'asteriscos buit")
 
print("Quadrat n x n d'asteriscos buit")
Línia 123: Línia 135:
 
     print("*")
 
     print("*")
 
</source>
 
</source>
 +
-->
 +
 +
<source lang="python">
 +
print("Quadrat n x n d'asteriscos")
  
 +
num = int(input("Introdueix número d'asteriscos: "))
 +
for i in range(1,num+1):
 +
  for j in range(1,num+1):
 +
    if i==1 or i==num or j==1 or j==num:
 +
      print("*", end=" " )
 +
    else:
 +
      print(" ", end=" " )
 +
  print("")
 +
</source>
 +
<!---->
  
 
10. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
10. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
Línia 133: Línia 159:
 
     * * * * *
 
     * * * * *
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang="python">
 
<source lang="python">
 
print("Dibuix amb asteriscos de num línies")
 
print("Dibuix amb asteriscos de num línies")
Línia 141: Línia 167:
 
   print("* "*i)
 
   print("* "*i)
 
</source>
 
</source>
 
+
-->
  
 
11. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
11. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
Línia 151: Línia 177:
 
     *  
 
     *  
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang="python">
 
<source lang="python">
 
print("Dibuix amb asteriscos de num línies")
 
print("Dibuix amb asteriscos de num línies")
Línia 159: Línia 185:
 
   print("* "*i)
 
   print("* "*i)
 
</source>
 
</source>
 
+
-->
  
 
12. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
12. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
Línia 169: Línia 195:
 
     * * * * *
 
     * * * * *
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang="python">
 
<source lang="python">
 
print("Dibuix amb asteriscos de num línies")
 
print("Dibuix amb asteriscos de num línies")
Línia 178: Línia 204:
 
   print("* "*i)
 
   print("* "*i)
 
</source>
 
</source>
 
+
-->
  
 
13. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
13. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
Línia 188: Línia 214:
 
             *
 
             *
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang="python">
 
<source lang="python">
 
print("Dibuix amb asteriscos de num línies")
 
print("Dibuix amb asteriscos de num línies")
Línia 197: Línia 223:
 
   print("* "*(num-i))
 
   print("* "*(num-i))
 
</source>
 
</source>
 
+
-->
  
 
'''Bucles niuats'''
 
'''Bucles niuats'''
  
 
14. Escriu un programa que llegeixi un número num i mostri per pantalla el següent:
 
14. Escriu un programa que llegeixi un número num i mostri per pantalla el següent:
<pre><!---->
+
<pre>
 
     Exemple num=5
 
     Exemple num=5
 
     1
 
     1
Línia 220: Línia 246:
 
   print("")
 
   print("")
 
</source>
 
</source>
 
+
<!---->
  
 
15. Escriu un programa que llegeixi un número i mostri per pantalla el següent:
 
15. Escriu un programa que llegeixi un número i mostri per pantalla el següent:
Línia 232: Línia 258:
 
     1  
 
     1  
 
</pre>
 
</pre>
<!---->
+
 
 
<source lang="python">
 
<source lang="python">
 
print("Dibuix amb números consecutius")
 
print("Dibuix amb números consecutius")
Línia 242: Línia 268:
 
   print("")
 
   print("")
 
</source>
 
</source>
 
+
<!---->
  
 
16. Escriu un programa que llegeixi un número i mostri per pantalla el següent:
 
16. Escriu un programa que llegeixi un número i mostri per pantalla el següent:
Línia 254: Línia 280:
 
     5 4 3 2 1
 
     5 4 3 2 1
 
</pre>
 
</pre>
<!---->
+
 
 
<source lang="python">
 
<source lang="python">
 +
#triangles
 +
 
print("Dibuix amb números consecutius decreixents")
 
print("Dibuix amb números consecutius decreixents")
  
Línia 261: Línia 289:
 
for i in range(1,num+1):
 
for i in range(1,num+1):
 
   for j in range(1,num-i+1):
 
   for j in range(1,num-i+1):
     print(" ", end='')
+
     print(" ", end=' ')
 
   for j in range(i,0,-1):
 
   for j in range(i,0,-1):
     print(j, end='')
+
     print(j, end=' ')
 +
  print("")
 +
 
 +
#quadrat
 +
 
 +
print("Dibuix amb números consecutius decreixents")
 +
 
 +
num = int(input("Introdueix un número enter positiu: "))
 +
for i in range(1,num+1):
 +
  for j in range(num,0,-1):
 +
      if (i<j):
 +
        print(" ", end=' ')
 +
      else:
 +
        print(j, end=' ')
 
   print("")
 
   print("")
 
</source>
 
</source>
 
+
<!---->
  
 
17. Escriu un programa que llegeixi un número imparell i mostri per pantalla el següent:
 
17. Escriu un programa que llegeixi un número imparell i mostri per pantalla el següent:
Línia 278: Línia 319:
 
     9 7 5 3 1
 
     9 7 5 3 1
 
</pre>
 
</pre>
<!---->
+
 
 
<source lang="python">
 
<source lang="python">
 
print("Dibuix amb números consecutius decreixents")
 
print("Dibuix amb números consecutius decreixents")
Línia 288: Línia 329:
 
     print("")
 
     print("")
 
</source>
 
</source>
 
+
<!---->
  
 
18. Escriu un programa que llegeixi un número enter més gran que 0 i mostri el factorial de tots els números entre 1 i el número introduït.
 
18. Escriu un programa que llegeixi un número enter més gran que 0 i mostri el factorial de tots els números entre 1 i el número introduït.
Línia 364: Línia 405:
 
A
 
A
 
</pre>
 
</pre>
<!---->
+
<!--
 
<source lang = "python">
 
<source lang = "python">
 
print("Abecedari invers")
 
print("Abecedari invers")
Línia 380: Línia 421:
 
     # Salt de línia
 
     # Salt de línia
 
     print("")
 
     print("")
</source>
+
-->
 
 
 
20. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
20. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
<pre>
 
<pre>
Línia 390: Línia 430:
 
     1  
 
     1  
 
</pre>
 
</pre>
<!---->
 
  
 
<source lang = "python">
 
<source lang = "python">
Línia 401: Línia 440:
 
     print("")
 
     print("")
 
</source>
 
</source>
 +
<!---->
  
 
21. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
21. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
Línia 410: Línia 450:
 
     5  
 
     5  
 
</pre>
 
</pre>
<!-- -->
+
 
 
<source lang = "python">
 
<source lang = "python">
 
print("Dibuix amb números")
 
print("Dibuix amb números")
Línia 420: Línia 460:
 
     print("")
 
     print("")
 
</source>
 
</source>
 
+
<!---->
  
 
22. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
 
22. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
Línia 430: Línia 470:
 
     1  
 
     1  
 
</pre>
 
</pre>
<!-- -->
+
 
 
<source lang = "python">
 
<source lang = "python">
 
print("Dibuix amb números")
 
print("Dibuix amb números")
Línia 440: Línia 480:
 
     print("")
 
     print("")
 
</source>
 
</source>
 
+
<!---->
  
 
23. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 7)
 
23. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 7)
Línia 452: Línia 492:
 
     7
 
     7
 
</pre>
 
</pre>
<!-- -->
+
 
 
Amb dos fors:
 
Amb dos fors:
 
<source lang = "python">
 
<source lang = "python">
Línia 466: Línia 506:
 
     print("")
 
     print("")
 
</source>
 
</source>
 +
<!---->
  
<!-- -->
 
 
Amb tres fors:
 
Amb tres fors:
 
<source lang = "python">
 
<source lang = "python">
Línia 482: Línia 522:
 
     print("")
 
     print("")
 
</source>
 
</source>
 
+
<!---->
  
 
24. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 7)
 
24. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 7)
Línia 495: Línia 535:
 
</pre>
 
</pre>
  
<!-- -->
+
 
 
Amb dos fors:
 
Amb dos fors:
 
<source lang = "python">
 
<source lang = "python">
Línia 509: Línia 549:
 
     print("")
 
     print("")
 
</source>
 
</source>
 +
<!---->
  
<!--
 
 
Amb tres fors:
 
Amb tres fors:
 
<source lang="java">
 
<source lang="java">
Línia 525: Línia 565:
 
     print("")
 
     print("")
 
</source>
 
</source>
-->
+
<!---->

Revisió de 16:21, 18 des 2023

A2.4 Exercicis estructura iterativa

1. Imprimir els números del 1 al 100.

print("Imprimir els números del 1 al 100")

for i in range(1,101):
  print(i ,end= " ")

2. Imprimir els números parells del 0 al 98.

print("Imprimir els números parells del 0 al 98")

for i in range(0,100,2):
  print(i ,end= " ")

3. Imprimir els números del 100 al 1.

print("Imprimir els números del 100 al 1")

for i in range(100,0,-1):
  print(i ,end= " ")

4. Demanar cinc números i mostrar la suma.

print("Demanar cinc números i mostrar la suma")

suma = 0
for _ in range(5):        
  valor = int(input("Introdueix un valor: "))
  suma += valor
print("La suma és: %d" %suma)

5. Igual que l'anterior però només sumant els valors més grans de 10.

print("Demanar cinc números i sumar els valors que siguin més grans de 10")

suma = 0
for _ in range(5):        
  valor = int(input("Introdueix un valor: "))
  if valor > 10:
    suma += valor
print("La suma és: %d" %suma)

6. Calcular el producte dels números del 1 al 10.

print("Calcular el producte dels números del 1 al 10")

mult =1
for i in range(1,11):
    mult=mult*i
print("EL resultat és: ", mult)

7. Demanar cinc números enters positius i mostrar el valor més gran.

print("Demanar cinc números enters positius i mostrar el valor més gran")

max = 0
for _ in range(5):
  num = int(input("Introdueix un enter positiu: "))           
  if num > max:
    max = num
print("El màxim és: ", max)

8. Fer un quadrat d'asteriscos. Per exemple si l'usuari introdueix el valor 5, imprimirà:

    * * * * *
    * * * * *
    * * * * *
    * * * * *
    * * * * *
print("Quadrat n x n d'asteriscos")

num = int(input("Introdueix número d'asteriscos: ")) 
for _ in range(num):
  for _ in range(num):
    print("* ")
  print("")


9. Com l'anterior però fent un quadrat buit. Per exemple si l'usuari introdueix el valor 5, imprimirà:

    * * * * *
    *       *
    *       *
    *       *
    * * * * *
print("Quadrat n x n d'asteriscos")

num = int(input("Introdueix número d'asteriscos: ")) 
for i in range(1,num+1):
  for j in range(1,num+1):
    if i==1 or i==num or j==1 or j==num:
       print("*", end=" " )
    else:
       print(" ", end=" " )
  print("")

10. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

    * 
    * * 
    * * * 
    * * * * 
    * * * * *

11. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

    * * * * *
    * * * * 
    * * * 
    * * 
    * 

12. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

            *
          * *
        * * *
      * * * *
    * * * * *

13. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

    * * * * *
      * * * *
        * * *
          * *
            *

Bucles niuats

14. Escriu un programa que llegeixi un número num i mostri per pantalla el següent:

    Exemple num=5
    1
    1 2
    1 2 3
    1 2 3 4 
    1 2 3 4 5
print("Dibuix amb números consecutius")

num = int(input("Introdueix un número enter positiu: ")) 
for i in range(1,num+1):
   for j in range(1,i+1):
      print(j, end='')
   print("")

15. Escriu un programa que llegeixi un número i mostri per pantalla el següent:

    Exemple num=5

    5 4 3 2 1
    4 3 2 1
    3 2 1
    2 1 
    1 
print("Dibuix amb números consecutius")

num = int(input("Introdueix un número enter positiu: ")) 
for i in range(num,0,-1):
   for j in range(i,0,-1):
      print(j, end='')
   print("")

16. Escriu un programa que llegeixi un número i mostri per pantalla el següent:

    Exemple num=5

            1
          2 1
        3 2 1
      4 3 2 1
    5 4 3 2 1
#triangles

print("Dibuix amb números consecutius decreixents")

num = int(input("Introdueix un número enter positiu: ")) 
for i in range(1,num+1):
   for j in range(1,num-i+1):
     print(" ", end=' ')
   for j in range(i,0,-1):
     print(j, end=' ')
   print("")
   
#quadrat

print("Dibuix amb números consecutius decreixents")

num = int(input("Introdueix un número enter positiu: ")) 
for i in range(1,num+1):
   for j in range(num,0,-1):
      if (i<j):
         print(" ", end=' ')
      else:
         print(j, end=' ')
   print("")

17. Escriu un programa que llegeixi un número imparell i mostri per pantalla el següent:

    Exemple num=9

    1
    3 1
    5 3 1
    7 5 3 1
    9 7 5 3 1
print("Dibuix amb números consecutius decreixents")

num = int(input("Introdueix un número enter imparell positiu: ")) 
for i in range(1, num+1, 2):
    for j in range(i, 0, -2):
        print(j, end=" ")
    print("")

18. Escriu un programa que llegeixi un número enter més gran que 0 i mostri el factorial de tots els números entre 1 i el número introduït.

    Exemple num = 4

    1! = 1
    2! = 2 * 1 = 2
    3! = 3 * 2 * 1 = 6
    4! = 4 * 3 * 2 * 1 = 24
print("Cálcul del factorial d'un número")

# Introduim el número preparem la sortida.
num = int(input("Introduiex un número enter: "))

# Recòrrer tots els números des de l'1 fins el num
for numactual in range(1, num+1):
    print("%d! =" %numactual, end= " ") 

# Inicialitzem la variable per calcular el factorial
    factorial = 1

# Tractament diferent del factorial de 1
    if numactual > 1:

# Càlcul del factorial del número numactual
       for n in range(numactual,0, -1):

           # Tractament diferent del cas 1
           if n == 1 :
              print("%d = " %n, end= " ") 
           else :
              print("%d * " %n, end= " ") 

           # Acumuelm el producte a cada iteració
           factorial *= n        
    
    # Escribim el resultat del factorial del númeor nuactual 
    print(factorial)


19. Escriu un programa que mostri la següent sortida:

ZYWXVUTSRQPONMLKJIHGFEDCBA
YWXVUTSRQPONMLKJIHGFEDCBA
WXVUTSRQPONMLKJIHGFEDCBA
XVUTSRQPONMLKJIHGFEDCBA
VUTSRQPONMLKJIHGFEDCBA
UTSRQPONMLKJIHGFEDCBA
TSRQPONMLKJIHGFEDCBA
SRQPONMLKJIHGFEDCBA
RQPONMLKJIHGFEDCBA
QPONMLKJIHGFEDCBA
PONMLKJIHGFEDCBA
ONMLKJIHGFEDCBA
NMLKJIHGFEDCBA
MLKJIHGFEDCBA
LKJIHGFEDCBA
KJIHGFEDCBA
JIHGFEDCBA
IHGFEDCBA
HGFEDCBA
GFEDCBA
FEDCBA
EDCBA
DCBA
CBA
BA
A

20. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

    1 2 3 4 5
    1 2 3 4 
    1 2 3 
    1 2
    1 
print("Dibuix amb números consecutius")

num = int(input("Introdueix un número enter: ")) 
for i in range(num, 0, -1):
    for j in range(1, i+1):
        print(j, end=" ")
    print("")

21. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

    1 1 1 1 1
    2 2 2 2 
    3 3 3 
    4 4
    5 
print("Dibuix amb números")

num = int(input("Introdueix un número enter: ")) 
for i in range(1, num+1):
    for j in range(num, i-1, -1):
        print(i, end=" ")
    print("")

22. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)

    5 5 5 5 5
    4 4 4 4 
    3 3 3 
    2 2
    1 
print("Dibuix amb números")

num = int(input("Introdueix un número enter: ")) 
for i in range(num, 0, -1):
    for j in range(1, i+1):
        print(i, end=" ")
    print("")

23. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 7)

    1 1 1 1 1 1 1
    1 2 3 4 5 6
    3 3 3 3 3
    1 2 3 4
    5 5 5 
    1 2
    7

Amb dos fors:

print("Dibuix amb números")

num = int(input("Introdueix un número enter: ")) 
for i in range(1, num+1):
    for j in range(1, num-i+2):
        if i%2==1 :
            print(i, end=" ")
        else:
            print(j, end=" ")
    print("")

Amb tres fors:

print("Dibuix amb números")

num = int(input("Introdueix un número enter: ")) 
for i in range(1, num+1):
    if i%2==1 :
        for j in range(1, num-i+2):    
            print(i, end=" ")
    else:
        for j in range(1, num-i+2):    
            print(j, end=" ")
    print("")

24. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 7)

    7 7 7 7 7 7 7
    6 5 4 3 2 1
    5 5 5 5 5
    4 3 2 1 
    3 3 3 
    2 1
    1 


Amb dos fors:

print("Dibuix amb números")

num = int(input("Introdueix un número enter: ")) 
for i in range(num, 0, -1):
    for j in range(i, 0, -1):
        if i%2==1 :
            print(i, end=" ")
        else:
            print(j, end=" ")
    print("")

Amb tres fors:

print("Dibuix amb números")

num = int(input("Introdueix un número enter: ")) 
for i in range(num, 0, -1):
    if i%2==1 :
        for j in range(i, 0, -1):        
            print(i, end=" ")
    else:
        for j in range(i, 0, -1):
            print(j, end=" ")
    print("")