M3 - Programació estructurada / Exercicis UF1: For
1. Imprimir els números del 1 al 100.
2. Imprimir els números parells del 0 al 98.
3. Imprimir els números del 100 al 1.
4. Demanar cinc números i mostrar la suma.
5. Igual que l'anterior però només sumant els valors més grans de 10.
6. Calcular el producte dels números del 1 al 10.
package ex_for;
/**
* Calcular el producte dels números del 1 al 10
*/
public class Ex6 {
public static void main(String[] args) {
int mult=1;
for (int i = 1; i <=10 ; i++) {
mult=mult*i;
}
System.out.println("EL resultat és: "+mult);
}
}
7. Demanar cinc números i mostrar el valor més gran.
Inicialitzeu max = Integer.MIN_VALUE; i aneu actualitzant max a cada iteració.
package ex_for;
import java.util.Scanner;
/**
* Demanar cinc números i mostrar el valor més gran
*/
public class Ex7 {
public static void main(String[] args) {
int valor, max = Integer.MIN_VALUE;
System.out.println(max);
Scanner teclat = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
System.out.print("Introdueix un valor: ");
valor = teclat.nextInt();
if (valor > max) {
max = valor;
}
}
System.out.println("El màxim és: " + max);
}
}
8. Imprimir 20 asteriscos a la mateixa línia.
package ex_for;
/**
* Imprimir 20 asteriscos a la mateixa línia.
*/
public class Ex8 {
public static void main(String[] args) {
for (int i = 0; i < 20; i++) {
System.out.print("* ");
}
System.out.println("\n\n");
}
}
9. Fem el mateix però el número d’asteriscos el decideix l’usuari.
package ex_for;
import java.util.Scanner;
/**
* Imprimir n asteriscos a la mateixa línia.
*/
public class Ex9 {
public static void main(String[] args) {
int aster;
Scanner teclat = new Scanner(System.in);
System.out.println("Quants asteriscos vols?: ");
aster = teclat.nextInt();
for (int i = 0; i < aster; i++) {
System.out.print("* ");
}
System.out.println("\n\n");
}
}
10. Com l'anterior però fent un quadrat d'asteriscos. Per exemple si l'usuari introdueix el valor 5, imprimirà:
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
package ex_for_imbricats;
/**
* Quadrat n x n d'asteriscos
*/
import java.util.Scanner;
public class Ex10 {
public static void main(String[] args) {
int aster;
Scanner teclat = new Scanner(System.in);
System.out.println("Quants asteriscos vols?: ");
aster = teclat.nextInt();
//Cada línia
for (int linia = 1; linia <= aster; linia++) {
//Asteriscos dins la línia
for (int columna=1;columna <= aster;columna++){
System.out.print("* ");
}
System.out.println("");
}
}
}
11. Com l'anterior però fent un quadrat buit. Per exemple si l'usuari introdueix el valor 5, imprimirà:
* * * * *
* *
* *
* *
* * * * *
package ex_for_imbricats;
import java.util.Scanner;
/**
* Quadrat n x n d'asteriscos buit
*/
public class Ex11 {
public static void main(String[] args) {
int aster;
Scanner teclat = new Scanner(System.in);
System.out.println("Quants asteriscos vols?: ");
aster = teclat.nextInt();
//Cada línia
for (int linia = 1; linia <= aster; linia++) {
//Asteriscos dins la línia
for (int columna = 1; columna <= aster; columna++) {
if (linia == 1 || linia ==aster || columna == 1 || columna == aster){
System.out.print("* ");
}
else{
System.out.print(" ");
}
}
System.out.println("");
}
}
}
12. Escriu un programa que llegeixi un número N i mostri per pantalla el següent:
1
1 2
1 2 3
...
1 2 3 ... N
package ex_for_imbricats;
import java.util.Scanner;
public class Ex12 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
System.out.print("Introdueix el número de línies: ");
int lin = teclat.nextInt();
//Cada línia
for (int fila =1; fila<=lin;fila++){
//Valors per línia
for(int columna=1;columna<=fila;columna++){
System.out.print(columna+" ");
}
System.out.println("");
}
}
}
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)
*
* *
* * *
* * * *
* * * * *
package ex_for_imbricats;
import java.util.Scanner;
public class Ex13 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
System.out.print("Introdueix el número de línies: ");
int lin = teclat.nextInt();
for (int fila = 1; fila <=lin; fila++) {
for (int columna = 1; columna <=fila; columna++) {
System.out.print("* ");
}
System.out.println("");
}
}
}
14. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
* * * * *
* * * *
* * *
* *
*
package ex_for_imbricats;
import java.util.Scanner;
public class Ex14 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
System.out.print("Introdueix el número de línies: ");
int lin = teclat.nextInt();
//Cada línia
for (int fila =1; fila<=lin;fila++){
//Asteriscos per línia
for (int columnes=fila;columnes<=lin;columnes++){
System.out.print("* ");
}
System.out.println("");
}
}
}
15. 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
package ex_for_imbricats;
public class Exercici15 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
System.out.print("Introdueix el número de línies: ");
int num = teclat.nextInt();
for (int i = num; i >=1; i-- ){
for(int j=1; j <=i; j++){
System.out.print(j+ " ");
}
System.out.println("");
}
}
}
16. 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 4 3 2 1
4 3 2 1
3 2 1
2 1
1
package ex_for_imbricats;
public class Exercoco16 {
public static void main(String[] args) {
Scanner teclat = new Scanner(System.in);
System.out.print("Introdueix el número de línies: ");
int num = teclat.nextInt();
for (int i = num; i >=1; i-- ){
for(int j=i; j >=1; j--){
System.out.print(j+ " ");
}
System.out.println("");
}
}
}
17. 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
package ex_for_imbricats;
import java.util.Scanner;
public class Ex17 {
public static void main(String[] args) {
Scanner lector = new Scanner(System.in);
System.out.println("Introudueix un número: ");
int num = lector.nextInt();
for (int i=1; i<= num; i++) {
for (int j=i; j <= num; j++) {
System.out.print(i+ " ");
}
System.out.println("");
}
}
}
18. 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
19. 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
20. 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
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)
*
* *
* * *
* * * *
* * * * *
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)
* * * * *
* * * *
* * *
* *
*
Algun exercici més:
23. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari (a l’exemple 5)
* * *
* *
* * *
* *
* * *
24. Realitzar un programa que mostri el següent dibuix per a un nombre de línies demanat a l'usuari.
exemple 5 exemple 6
* * * *
* * * *
* * *
* * * *
* * * *
* *
25. Mostra per pantalla aquesta "representació" a partir de la introducció de d'un número imparell més gran de 3.
Per exemple si num = 7
* * * * * * *
* * A A A * *
* B * A * C *
* B B * C C *
* B * D * C *
* * D D D * *
* * * * * * *
26. Dibuixa un rectangle amb '*' i números, demanant l'alçada (mínim 5 i imparell) i l'amplada (mínim 3). En el exemple
exemple alçada 9 i amplada 7
* * * * * * *
* 2 2 2 2 2 *
* 3 3 3 3 3 *
* 4 4 4 4 4 *
* * * * * * *
* 6 6 6 6 6 *
* 7 7 7 7 7 *
* 8 8 8 8 8 *
* * * * * * *
27. Mostra per pantalla aquest dibuix demanant a parit de la introducció d'un número (mínim 5 i imparell). En el exemple 7
* * * * * * *
* * * * *
* * *
*
* * *
* * * * *
* * * * * * *
28. Mostra per pantalla aquest dibuix demanant a parit de la introducció d'un número (mínim 5 i imparell). En el exemple 7
1 2 3 4 5 6 7
1 2 3 4 5
1 2 3
1
1 2 3
1 2 3 4 5
1 2 3 4 5 6 7
29. Mostra per pantalla aquesta "representació" a partir de la introducció de dos números imparells i es segon més gran que el primer (en el exemple 7 i 9).
* # * # o # * # *
# * # * o * # * #
* # * # o # * # *
o o o o o o o o o
* # * # o # * # *
# * # * o * # * #
* # * # o # * # *
Pas previ:
* # * # * # * # *
# * # * # * # * #
* # * # * # * # *
# * # * # * # * #
* # * # * # * # *
# * # * # * # * #
* # * # * # * # *
30. Mostra per pantalla aquesta "representació" a partir de la introducció d'un número (en el exemple 5).
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
31. Mostra per pantalla aquesta "representació" a partir de la introducció d'un número (en el exemple 5).
*
* *
* *
* *
* * * * * * * * *
32. Mostra per pantalla aquesta "representació" a partir de la introducció d'un número imparell més gran de 3.
exemple 5 exemple 7
* *
* * * *
* * * * * * *
* * * * * * * * *
* * * *
* *
* *
33. Mostra per pantalla aquesta "representació" a partir de la introducció d'un número imparell més gran de 3 (en el exemple 5).
1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 1 1 2 3 3 3 3 3 2 1 1 2 3 4 4 4 3 2 1 1 2 3 4 5 4 3 2 1 1 2 3 4 4 4 3 2 1 1 2 3 3 3 3 3 2 1 1 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1