|
|
(Hi ha 27 revisions intermèdies del mateix usuari que no es mostren) |
Línia 1: |
Línia 1: |
− | ==2018-19== | + | ==2020-21== |
| | | |
| + | <!-- |
| ===Prova 1=== | | ===Prova 1=== |
| | | |
| Recorda: Scanner teclat = new Scanner(System.in); | | Recorda: Scanner teclat = new Scanner(System.in); |
| | | |
− | 1. Fes un programa que demani dos números senars més grans que 4 i mostri el següent (en l'exemple els números són 5 -files- i 7 -columnes-) | + | 1. Fes un programa que demani dos números senars més grans que 4 i mostri el següent (en l'exemple els números són 5 -files- i 7 -columnes-) '''1,5 punts''' |
| <pre> | | <pre> |
− | Ex. 5 i 7 Ex. 7 i 5 | + | Ex. 5 i 7 Ex. 3 i 9 |
| | | |
− | 1 3 5 7 1 3 5 | + | 1 3 5 7 1 3 5 7 9 |
− | 6 4 2 4 2 | + | 6 4 2 8 6 4 2 |
− | 1 3 5 7 1 3 5 | + | 1 3 5 7 1 3 5 7 9 |
− | 6 4 2 4 2 | + | 6 4 2 |
− | 1 3 5 7 1 3 5 | + | 1 3 5 7 |
− | 4 2
| + | |
− | 1 3 5
| + | |
| </pre> | | </pre> |
− | <!--
| |
− | <source lang="java">
| |
− | package provessrc;
| |
− |
| |
− | import java.util.Scanner;
| |
− |
| |
− | public class Ex1 {
| |
− |
| |
− | public static void main(String[] args) {
| |
− | Scanner teclat = new Scanner(System.in);
| |
− | System.out.println("Introdueix un número:");
| |
− | int num1 = teclat.nextInt();
| |
− |
| |
− | System.out.println("Introdueix un segon número:");
| |
− | int num2 = teclat.nextInt();
| |
| | | |
− | for (int i = 1; i <= num1; i++) {
| + | 2. Escriu un programa que mostri tots el números de 3 xifres que compleixen que la suma dels dígits de més pes és igual al 3r dígit. '''1,5 punts''' |
− | | |
− | if (i % 2 == 1) {
| |
− | for (int j = 1; j <= num2; j++) {
| |
− | if (j % 2 == 1) {
| |
− | System.out.print(j + " ");
| |
− | } else {
| |
− | System.out.print(" ");
| |
− | }
| |
− | }
| |
− | | |
− | } else {
| |
− | for (int j = num2; j >= 1; j--) {
| |
− | if (j % 2 == 1) {
| |
− | System.out.print(" ");
| |
− | } else {
| |
− | System.out.print(j + " ");
| |
− | }
| |
− | }
| |
− | | |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | | |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | | |
− | 2. Escriu un programa que mostri tots el números de 3 xifres que compleixen que la suma dels dígits de més pes és igual al 3r dígit. | |
| <pre> | | <pre> |
| Ex | | Ex |
| | | |
− | 123 (1+2=3), 134 (1+3=4), 145 (1+4=5) | + | 101 (1+0=1), 112 (1+1=2), 123 (1+2=3), 134 (1+3=4), 145 (1+4=5) ... |
| </pre> | | </pre> |
| | | |
− | <!--
| + | 3. Fes un programa que demani un número de línies (més gran que 4 i imparell) i "dibuixi" la lletra 'N' (en l'exemple el número és 5) '''1,5 punts''' |
− | <source lang="java">
| |
− | package provessrc;
| |
− | | |
− | public class Ex2 {
| |
− | public static void main(String[] args) {
| |
− | int d1,d2,d3;
| |
− | for (int i = 100; i < 1000; i++) {
| |
− | d3 = i%10;
| |
− | d2 = i/10%10;
| |
− | d1 = i/10/10;
| |
− | if (d1+d2==d3){
| |
− | System.out.println(i);
| |
− | }
| |
− |
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | | |
− | 3. Fes un programa que demani un número de línies (més gran que 4 i imparell) i "dibuixi" la lletra 'N' (en l'exemple el número és 5) | |
| <pre> | | <pre> |
| # # | | # # |
Línia 98: |
Línia 34: |
| # # | | # # |
| </pre> | | </pre> |
− | <!--
| |
− | <source lang="java">
| |
− | package provessrc;
| |
| | | |
− | import java.util.Scanner;
| + | 4. En una seqüencia de números enters positius acabada en -1, determinar si s’ha produït una seqüencia de 3 números parells o imparells seguits. '''1,5 punts''' |
| + | <pre> |
| + | Exemple 1 |
| | | |
− | public class Ex3 {
| + | 22 44 77 5 21 62 11 331 44 6 7 82 -1 |
− | public static void main(String[] args) {
| + | No! |
− | Scanner teclat = new Scanner(System.in);
| |
− | System.out.println("Introdueix un número:");
| |
− | int num = teclat.nextInt();
| |
− |
| |
− | for (int i = 1; i <= num; i++) {
| |
− | for (int j = 1; j <= num; j++) {
| |
− | if (j==1 || j==num || i==j){
| |
− | System.out.print("# ");
| |
− | }else{
| |
− | System.out.print(" ");
| |
− | }
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
| | | |
| + | Exemple 2 |
| | | |
− | 4. En una seqüencia de números enters positius acabada en -1, determinar si s’ha produït una seqüencia de 3 números parells o imparells seguits.
| + | 234 45 56 45 37 18 24 66 |
| + | Sí! |
| | | |
− | <!--
| + | Exemple 3 |
− | <source lang="java">
| |
− | package provessrc;
| |
| | | |
− | import java.util.Scanner;
| + | 44 589 24 126 37 39 28 12 91 121 327 |
| + | Sí! |
| + | </pre> |
| | | |
− | public class Ex4 {
| + | 5. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5). '''2 punts''' |
− | public static void main(String[] args) {
| |
− | Scanner teclat = new Scanner(System.in);
| |
− | int contParells=0, contImparells=0;
| |
− | System.out.println("Introdueix un número:");
| |
− | int num=teclat.nextInt();
| |
− | while (num!=-1 && contParells<3 && contImparells<3){
| |
− | if (num%2==0){
| |
− | contParells++;
| |
− | contImparells=0;
| |
− | }else{
| |
− | contImparells++;
| |
− | contParells=0;
| |
− | }
| |
− | if (contParells<3 && contImparells<3){
| |
− | System.out.println("Introdueix un número:");
| |
− | num=teclat.nextInt();
| |
− | }
| |
− | }
| |
− | if (contParells==3){
| |
− | System.out.println("Tres parells seguits..,");
| |
− | }
| |
− | else if (contImparells==3){
| |
− |
| |
− | System.out.println("Tres imparells seguits...");
| |
− |
| |
− | }
| |
− | else{
| |
− | System.out.println("No s'ha produït cap seqüència de tres números parells o imparells seguits.");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | | |
− | | |
− | 5. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5). 2 punts | |
| <pre> | | <pre> |
| 5 | | 5 |
Línia 179: |
Línia 62: |
| </pre> | | </pre> |
| | | |
− | <!--
| + | 6. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5). '''2 punts''' |
− | <source lang="java">
| |
− | package provessrc;
| |
− | | |
− | import java.util.Scanner;
| |
− | | |
− | | |
− | public class Ex5 {
| |
− | public static void main(String[] args) {
| |
− | Scanner teclat = new Scanner(System.in);
| |
− | int contParells=0, contImparells=0;
| |
− | System.out.println("Introdueix un número:");
| |
− | int num=teclat.nextInt();
| |
− |
| |
− | for (int i = 1; i <= num; i++) {
| |
− | for (int j = 1; j < num-i+1; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | for (int j = 1; j <=i; j++) {
| |
− | System.out.print(num-i+1+" ");
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | }
| |
− | </soruce>
| |
− | -->
| |
− | 6. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5). 2 punts | |
| <pre> | | <pre> |
| * * | | * * |
Línia 214: |
Línia 70: |
| * * * * * * * * * * | | * * * * * * * * * * |
| </pre> | | </pre> |
− | <!--
| |
− | <source lang="java">
| |
− | package provessrc;
| |
| | | |
− | import java.util.Scanner;
| |
| | | |
− | public class Ex6 {
| |
− | public static void main(String[] args) {
| |
− | Scanner teclat = new Scanner(System.in);
| |
− | int contParells=0, contImparells=0;
| |
− | System.out.println("Introdueix un número:");
| |
− | int num=teclat.nextInt();
| |
− |
| |
− | for (int i = 1; i <= num; i++) {
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print("* ");
| |
− | }
| |
− | for (int j = 1; j <=2*(num-i); j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print("* ");
| |
− | }
| |
− |
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
| ===Prova 2=== | | ===Prova 2=== |
| | | |
− | 1. Fes un programa que demani dos números senars més grans que 2 i mostri el següent:
| + | Recorda: Scanner teclat = new Scanner(System.in); |
− | <pre>
| |
− | Ex. 5 i 7 Ex. 7 i 3
| |
| | | |
− | 1 2 3 4 6 1 2 4 5 6 | + | 1. Fes un programa que demani dos números senars més grans que 2 i mostri el següent (en l'exemple els números són 5 -files- i 7 -columnes-) '''1,5 punts''' |
− | 6 4 3 2 1 6 5 4 2 1 | + | <pre> |
− | 1 2 3 4 6 1 2 4 5 6 | + | Ex. 5 i 7 Ex. 3 i 9 |
− | 6 4 3 2 1 | + | |
− | 1 2 3 4 6 | + | 1 2 3 4 6 1 2 4 5 6 7 8 |
| + | 6 4 3 2 1 8 7 6 5 4 2 1 |
| + | 1 2 3 4 6 1 2 4 5 6 7 8 |
| + | 6 4 3 2 1 |
| + | 1 2 3 4 6 |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package proves;
| |
| | | |
− | import java.util.Scanner;
| + | 2. Escriu un programa que mostri tots el números de 3 xifres que compleixen que cada dígit és divisible per l'anterior. '''1 punt''' |
| + | <pre> |
| + | Ex |
| | | |
− | | + | 111 (1%1=0 i 1%1=0), 211 (2%1=0 i 1%1=0), 221 (2%2=0 i 2%1=0) ... |
− | public class Proves {
| |
− | | |
− | public static void main(String[] args) {
| |
− |
| |
− | Scanner teclat = new Scanner(System.in);
| |
− |
| |
− | System.out.println("Introdueix un número: ");
| |
− | int n1 = teclat.nextInt();
| |
− | System.out.println("Introdueix un altre número: ");
| |
− | int n2 = teclat.nextInt();
| |
− | int files, columnes;
| |
− | if (n1 > n2) {
| |
− | files = n2;
| |
− | columnes = n1;
| |
− | } else {
| |
− | files = n1;
| |
− | columnes = n2;
| |
− | }
| |
− |
| |
− | for (int i=1; i<=files; i++){
| |
− |
| |
− | if (i%2==1){
| |
− | for (int j= 1; j <=columnes; j++) {
| |
− | if (j==files || j== columnes){
| |
− | System.out.print(" ");
| |
− | }
| |
− | else{
| |
− | System.out.print(j +" ");
| |
− | }
| |
− | }
| |
− | } else {
| |
− | for (int j = columnes; j >=1; j--) {
| |
− | if (j==files || j== columnes){
| |
− | System.out.print(" ");
| |
− | }
| |
− | else{
| |
− | System.out.print(j +" ");
| |
− | }
| |
− | }
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 2. Escriu un programa que mostri tots el números de 3 xifres que compleixen que cada dígit és divisible per l’anterior.
| |
− | | |
− | <pre>
| |
− | Ex
| |
− | 111 (1%1=0 i 1%1=0) , 211 (2%1=0 i 1%1=0) , 221 (2%2=0 i 2%1=0), ... | |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package proves;
| |
| | | |
− | public class ex2 {
| + | 3. Fes un programa que demani un número de línies (més gran que 4 i imparell) i "dibuixi" la lletra 'S' (en l'exemple el número és 7) '''1,5 punts''' |
− |
| |
− | public static void main(String[] args) {
| |
− | int d1, d2, d3;
| |
− | for (int n=100; n<1000; n++){
| |
− | d1 = n%10;
| |
− | d2 = n/10%10;
| |
− | d3 = n/100;
| |
− |
| |
− | if (d2!=0 && d1!=0){
| |
− | if (d3%d2==0 && d2%d1==0){
| |
− | System.out.println(n);
| |
− | }
| |
− | }
| |
− |
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 3. Fes un programa que demani un número de línies (més gran que 4 i imparell) i "dibuixi" la lletra 'S' (en l'exemple el número és 7) | |
| <pre> | | <pre> |
− | # # # # # # #
| + | # # # # # # # |
− | #
| + | # |
− | #
| + | # |
− | # # # # # # #
| + | # # # # # # # |
− | #
| + | # |
− | #
| + | # |
− | # # # # # # #
| + | # # # # # # # |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package proves;
| |
| | | |
− | import java.util.Scanner;
| + | 4. En una seqüencia de números enters positius acabada en -1, determinar si s’ha produït una seqüencia de 5 números en la que cada número és més gran que l'anterior o una seqüencia de 5 números en la que cada número és menor que l'anterior. '''2 punts''' |
| + | <pre> |
| + | Exemple 1 |
| | | |
− | public class ex3 {
| + | 3 7 22 3 4 67 12 12 87 76 111 124 33 45 56 77 -1 → NO |
− | public static void main(String[] args) {
| |
− | Scanner teclat = new Scanner(System.in);
| |
− |
| |
− | System.out.println("Introdueix un número: ");
| |
− | int n = teclat.nextInt();
| |
− |
| |
− | for (int i=1; i<=n; i++){
| |
− |
| |
− | if (i==1 || i==n || i==n/2+1){
| |
− | for (int j = 1; j <= n; j++) {
| |
− | System.out.print("# ");
| |
− | }
| |
− | }
| |
− | else if (i<n/2+1){
| |
− | System.out.print("# ");
| |
− | }
| |
− | else{
| |
− | for (int j = 1; j < n; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.print("# ");
| |
− |
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− |
| |
− | }
| |
− |
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 4. En una seqüencia de números enters positius acabada en -1, determinar si s’ha produït una seqüencia de 5 números en els que cada número és major que l’anterior o una seqüencia de 5 números en els que cada número és menor que l’anterior.
| |
− |
| |
− | Exemples:
| |
− | <pre>
| |
− | 3 7 22 3 4 67 12 87 76 111 124 33 45 56 77 -1 → NO | |
| | | |
− | 3 7 22 3 4 67 12 87 76 111 124 33 45 56 77 88 99 → SÍ
| + | Exemple 2 |
| | | |
− | 3 7 22 3 4 67 12 87 76 111 124 88 45 36 17 11 → SÍ | + | 3 7 22 3 4 67 12 12 87 76 111 124 33 45 56 77 88 99 → SÍ |
− | </pre>
| |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package proves;
| |
| | | |
− | import java.util.Scanner;
| + | Exemple 3 |
| | | |
− | public class ex4 {
| + | 3 7 22 3 4 67 12 12 87 76 111 124 88 45 36 17 11 → SÍ |
− | public static void main(String[] args) {
| |
− |
| |
− | int contMajors=0, contMenors=0;
| |
− | Scanner teclat = new Scanner(System.in);
| |
− | System.out.println("Introdueix un número: ");
| |
− | int num = teclat.nextInt();
| |
− | if (num != -1) {
| |
− | int numant=num;
| |
− | System.out.println("Introdueix un número: ");
| |
− | num = teclat.nextInt();
| |
− |
| |
− | while (num!=-1 && contMajors < 5 && contMenors<5){
| |
− | if (num > numant){
| |
− | contMajors++;
| |
− | contMenors=0;
| |
− | } else if (num < numant){
| |
− | contMenors--;
| |
− | contMajors=0;
| |
− | }else{
| |
− | contMajors=0;
| |
− | contMenors=0;
| |
− | }
| |
− | if (contMajors < 5 && contMenors<5){
| |
− | numant=num;
| |
− | System.out.println("Introdueix un número: ");
| |
− | num = teclat.nextInt();
| |
− | }
| |
− |
| |
− | }
| |
− |
| |
− | }
| |
− | if (num!= -1){
| |
− | System.out.println("Sí");
| |
− | }
| |
− | else{
| |
− | System.out.println("No");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 5. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5).
| |
− | <pre>
| |
− | 1
| |
− | 2 1 2
| |
− | 3 2 1 2 3
| |
− | 4 3 2 1 2 3 4
| |
− | 5 4 3 2 1 2 3 4 5
| |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package proves;
| |
| | | |
− | import java.util.Scanner;
| + | 5. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5). '''2 punts''' |
− | | |
− | public class ex5 {
| |
− | public static void main(String[] args) {
| |
− |
| |
− | Scanner teclat = new Scanner(System.in);
| |
− | System.out.println("Introdueix un número: ");
| |
− | int num = teclat.nextInt();
| |
− |
| |
− | for (int i = 1; i <=num; i++) {
| |
− |
| |
− | for (int j = 1; j < 2*(num-i+1); j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print((i-j+1)+" ");
| |
− | }
| |
− | for (int j = 2; j <= i; j++) {
| |
− | System.out.print(j+" ");
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− |
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 6. Mostra per pantalla aquesta "representació" a partir d’un número impar introduït per teclat (en el exemple 5).
| |
| <pre> | | <pre> |
− | * *
| + | 1 |
− | * * * *
| + | 2 1 2 |
− | * * * * * *
| + | 3 2 1 2 3 |
− | * * * *
| + | 4 3 2 1 2 3 4 |
− | * *
| + | 5 4 3 2 1 2 3 4 5 |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package proves;
| |
| | | |
− | import java.util.Scanner;
| + | 6. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5). '''2 punts''' |
− | | + | <pre> |
− | public class ex6 {
| + | * * |
− | | + | * * * * |
− | public static void main(String[] args) {
| + | * * * * * |
− | | + | * * * * |
− | Scanner teclat = new Scanner(System.in);
| + | * * |
− | System.out.println("Introdueix un número: ");
| + | </pre> |
− | int num = teclat.nextInt();
| |
− | | |
− | for (int i = 1; i <= num / 2 + 1; i++) {
| |
| | | |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print("* ");
| |
− | }
| |
− | for (int j = 1; j < num - (2 * (i - 1)); j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print("* ");
| |
− |
| |
− | }
| |
− |
| |
− | System.out.println("");
| |
− | }
| |
− | for (int i = 1; i <= num - (num / 2 + 1); i++) {
| |
− |
| |
− | for (int j = i; j <= num - (num / 2 + 1); j++) {
| |
− | System.out.print("* ");
| |
− | }
| |
− | for (int j = 1; j <= 2 + (2 * (i - 1)); j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | for (int j = i; j <= num - (num / 2 + 1); j++) {
| |
− | System.out.print("* ");
| |
− | }
| |
− |
| |
− | System.out.println("");
| |
− | }
| |
− |
| |
− | }
| |
− | }
| |
− | </source>
| |
| --> | | --> |
− |
| |
| <!-- | | <!-- |
| ===Prova 3=== | | ===Prova 3=== |
| | | |
− | 1. Fes un programa que demani dos números senars més grans que 2 i mostri el següent: | + | 1. Escriu un programa que imprimeixi el següent “triangle” de números tenint com a entrada el número de files. Per exemple si l’entrada fos 5 la sortida seria: '''2 punts''' |
− | <pre>
| |
− | Ex. 5 i 7 Ex. 7 i 3
| |
− | | |
− | 1 2 3 4 5 1 2 3
| |
− | 7 6 7 6 5 4
| |
− | 1 2 3 4 5 1 2 3
| |
− | 7 6 7 6 5 4
| |
− | 1 2 3 4 5 1 2 3
| |
− | 7 6 5 4
| |
− | 1 2 3
| |
− | </pre>
| |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package pe3p3;
| |
− | | |
− | import java.util.Scanner;
| |
− | | |
− | | |
− | public class Ex1 {
| |
− | public static void main(String[] args) {
| |
− |
| |
− | Scanner lector = new Scanner(System.in);
| |
− | System.out.println("Introduce un número:");
| |
− | int n1 = lector.nextInt();
| |
− | System.out.println("Introduce un altre número:");
| |
− | int n2 = lector.nextInt();
| |
− | int petit, gran;
| |
− | if((n1 > 2 && n2 > 2 && n1%2==1 && n2%2==1)){
| |
− | if (n1>n2){
| |
− | petit=n2; gran=n1;
| |
− | }else {
| |
− | petit=n1; gran=n2;
| |
− | }
| |
− | for (int i = 1; i <= gran; i++) {
| |
− | if(i%2==1){
| |
− | for (int j = 1; j <= petit; j++) {
| |
− | System.out.print(" "+j);
| |
− | }
| |
− | }else{
| |
− | for (int j = 1; j <= petit; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | for (int j = gran; j > petit; j--) {
| |
− | System.out.print(" "+j);
| |
− | }
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }else{
| |
− | System.out.println("Només valors senars més grans que 2");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 2. Escriu un programa que mostri tots el números de n xifres que compleixen que tenen més dígits senars que parells. 1,5 punts | |
− | <pre>
| |
− | Ex n=7
| |
− | | |
− | 1000111 – 1000113 – 1000115 – 1000117 ...
| |
− | </pre>
| |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package pe3p3;
| |
− | | |
− | import java.util.Scanner;
| |
− | | |
− | public class Ex2 {
| |
− | | |
− | public static void main(String[] args) {
| |
− | Scanner lector = new Scanner(System.in);
| |
− | System.out.println("Introdueix un valor:");
| |
− | int num = lector.nextInt();
| |
− | int primer = 1, darrer, contParells, contSenars, numActual, digit, numLinia = 0;
| |
− | int i = 1;
| |
− | while (i < num) {
| |
− | primer = primer * 10;
| |
− | i++;
| |
− | }
| |
− | darrer = primer * 10;
| |
− |
| |
− | for (int n = primer; n < darrer; n++) {
| |
− | contParells = 0;
| |
− | contSenars = 0;
| |
− | numActual = n;
| |
− | | |
− | while (numActual > 0) {
| |
− | | |
− | digit = numActual % 10;
| |
− | | |
− | if (digit % 2 == 1) {
| |
− | contSenars++;
| |
− | } else {
| |
− | contParells++;
| |
− | }
| |
− | numActual = numActual / 10;
| |
− | | |
− | }
| |
− | | |
− | if (contSenars > contParells) {
| |
− | System.out.print(n + " - ");
| |
− | numLinia++;
| |
− | if (numLinia == 10) {
| |
− | System.out.println("");
| |
− | numLinia = 0;
| |
− | }
| |
− | }
| |
− | }
| |
− | | |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 3. Fes un programa que demani un número de línies (més gran que 4 i imparell) i "dibuixi" la lletra 'P' (en l'exemple el número és 7)
| |
| <pre> | | <pre> |
− | # # # # # # #
| + | 1 |
− | # #
| + | 1 2 1 |
− | # #
| + | 1 2 3 2 1 |
− | # # # # # # #
| + | 1 2 3 4 3 2 1 |
− | #
| + | 1 2 3 4 5 4 3 2 1 |
− | #
| |
− | #
| |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package pe3p3;
| |
| | | |
− | import java.util.Scanner;
| + | 2. Volem construir una seqüència de números caracteritzada per: |
| + | :* El primer element anomenat llavor pot ser qualsevol número positiu |
| + | :* El segon element és igual a la llavor més 1 |
| + | :* Els altres elements són el producte de tots els anteriors més 1 |
| + | :* Per exemple si la llavor és 2, els primers elements són : 2, 3, 7, 43, 1807, 3263443, ... |
| | | |
− | public class Ex3 {
| + | Escriu un programa que '''donada una llavor introduïda per teclat i un número màxim''' també introduït per teclat, ens mostri tota la seqüència d’elements de la seqüència inferiors al màxim, i finalment ens digui quants elements hi ha. '''1,5 punts''' |
| | | |
− | public static void main(String[] args) {
| + | Per exemple: |
− | Scanner lector = new Scanner(System.in);
| |
− | System.out.println("Introdueix un valor:");
| |
− | int num = lector.nextInt();
| |
− | | |
− | for (int i = 1; i <= num; i++) {
| |
− | if (i == 1 || i == num / 2 + 1) {
| |
− | for (int j = 1; j <= num; j++) {
| |
− | System.out.print("# ");
| |
− | }
| |
− | } else if (i < num / 2 + 1) {
| |
− | for (int j = 1; j <= num; j++) {
| |
− | if (j == 1 || j == num) {
| |
− | System.out.print("# ");
| |
− | } else {
| |
− | System.out.print(" ");
| |
− | }
| |
− | }
| |
− | } else {
| |
− | System.out.print("# ");
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 4. En una seqüencia de números enters positius acabada en -1, indicar quina és la mida de la seqüència més gran de números senars consecutius.
| |
| <pre> | | <pre> |
− | Exemples.
| + | Si llavor=2 i màxim=1000, escriurà : 2 3 7 43 i escriurà que la seqüència té 4 elements |
− | 3 7 22 3 4 67 12 87 76 111 123 33 45 56 77 -1 → 4 | + | Si llavor =3 i màxim =25000, escriurà : 3 4 13 157 24493 i escriurà que la seqüència té 5 elements |
− | | |
− | 3 7 22 3 1 67 11 25 76 111 124 88 45 36 17 11 -1 → 5 | |
| </pre> | | </pre> |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | package pe3p3;
| |
| | | |
− | import java.util.Scanner;
| + | 3. Escriu un programa que demani un número senar com a entrada. Donarà com a sortida una lletra ' T ' majúscula escrita amb lletres ' t ' minúscules com les de la figura. La longitud de la barra superior i l'alçada de la T són les mateixes i iguals al número |
− | | + | entrat per teclat ( a l'exemple 7). '''1,5 punts''' |
− | public class Ex4 {
| |
− | | |
− | public static void main(String[] args) {
| |
− | Scanner lector = new Scanner(System.in);
| |
− | System.out.println("Introdueix un valor:");
| |
− | int num = lector.nextInt();
| |
− | int contLlarg = 0, contActual = 0;
| |
− | while (num != -1) {
| |
− | if (num % 2 == 1) {
| |
− | contActual++;
| |
− | if (contActual > contLlarg) {
| |
− | contLlarg = contActual;
| |
− | }
| |
− | } else if (contActual>0){
| |
− | contActual = 0;
| |
− | }
| |
− | System.out.println("Introdueix un valor:");
| |
− | num = lector.nextInt();
| |
− | }
| |
− | System.out.println("La seqüència més llarga és de "+contLlarg+" números.");
| |
− | }
| |
− | | |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 5. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 5).
| |
| <pre> | | <pre> |
− | 5
| + | t t t t t t t |
− | 4 4
| + | t |
− | 3 3
| + | t |
− | 2 2
| + | t |
− | 1 1 1 1 1 1 1 1 1
| + | t |
| + | t |
| + | t |
| </pre> | | </pre> |
− | <!--
| |
− | -->
| |
− | <source lang="java">
| |
− | package pe3p3;
| |
| | | |
− | import java.util.Scanner;
| + | 4. En una seqüència de números enters positius acabada en -1, indicar quants números són iguals a la suma de tots els números que el precedeixen: '''1,5 punts''' |
− | | + | Exemple: |
− | public class Ex5 {
| |
− | public static void main(String[] args) {
| |
− | Scanner lector = new Scanner(System.in);
| |
− | System.out.println("Introdueix un valor:");
| |
− | int num = lector.nextInt();
| |
− |
| |
− | for (int i = num; i >=1; i--) {
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.print(i+" ");
| |
− | if(i==1){
| |
− | for (int j = 1; j <= num*2-2; j++) {
| |
− | System.out.print(i+" ");
| |
− | }
| |
− | }else if(i<num){
| |
− | for (int j = i; j < num+(num-1-i); j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.print(i);
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− |
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | <!--
| |
− | 6. Mostra per pantalla aquesta "representació" a partir d’un número introduït per teclat (en el exemple 5).
| |
| <pre> | | <pre> |
− | # # # # # # #
| + | 3 7 10 3 23 9 55 110 2 11 12 245 33 45 56 77 -1 |
− | # * #
| |
− | # * * #
| |
− | # * * #
| |
− | # * * #
| |
− | # * #
| |
− | # # # # # # #
| |
− | </pre>
| |
− | -->
| |
− | <!--
| |
− | <source lang="java">
| |
− | Opció 1
| |
− | package pe3p3;
| |
− | | |
− | import java.util.Scanner;
| |
− | | |
− | | |
− | public class Ex6 {
| |
− | | |
− | public static void main(String[] args) {
| |
− | Scanner lector = new Scanner(System.in);
| |
− | System.out.println("Introdueix un valor:");
| |
− | int num = lector.nextInt();
| |
− | for (int i = 1; i <= num + 2; i++) {
| |
− | System.out.print("# ");
| |
− | }
| |
− | System.out.println("");
| |
− | for (int i = 1; i <= num / 2 + 1; i++) {
| |
− | System.out.print("# ");
| |
− | for (int j = i; j < num / 2 + 1; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.print("* ");
| |
− | if (i > 1) {
| |
− | for (int j = 1; j <= 2 * (i - 1) - 1; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | | |
− | System.out.print("* ");
| |
− | }
| |
− | for (int j = i; j < num / 2 + 1; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.println("# ");
| |
− | | |
− | }
| |
− | for (int i = 1; i <= num / 2; i++) {
| |
− | System.out.print("# ");
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.print("* ");
| |
− | if (i < num / 2) {
| |
− | for (int j = 1; j <= (num - 4) - 2 * (i - 1); j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.print("* ");
| |
− | }
| |
− | for (int j = 1; j <= i; j++) {
| |
− | System.out.print(" ");
| |
− | }
| |
− | System.out.println("# ");
| |
− | }
| |
− | | |
− | for (int i = 1; i <= num + 2; i++) {
| |
− | System.out.print("# ");
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | | |
− | Opció 2
| |
− | | |
− | package pe3p3;
| |
− | | |
− | import java.util.Scanner;
| |
− | | |
− | public class Ex6op2 {
| |
| | | |
− | public static void main(String[] args) {
| + | Hi ha 5 números iguals a la suma dels que el precedeixen |
− | Scanner lector = new Scanner(System.in);
| + | (10 23 55 110 245) |
− | System.out.println("Introdueix un valor:");
| |
− | int num = lector.nextInt();
| |
− | int col1 = num / 2 + 2, col2 = num / 2;
| |
− | | |
− | for (int i = 1; i <= num + 2; i++) {
| |
− | System.out.print("# ");
| |
− | }
| |
− | System.out.println("");
| |
− | | |
− | for (int i = 1; i <= num; i++) {
| |
− | System.out.print("# ");
| |
− | if (i <= num / 2 + 1) {
| |
− | col1--;
| |
− | col2++;
| |
− | } else {
| |
− | col1++;
| |
− | col2--;
| |
− | }
| |
− | for (int j = 1; j <= num; j++) {
| |
− | if (j == col1 || j == col2) {
| |
− | System.out.print("* ");
| |
− | } else {
| |
− | System.out.print(" ");
| |
− | }
| |
− | }
| |
− | System.out.println("# ");
| |
− | }
| |
− | for (int i = 1; i <= num + 2; i++) {
| |
− | System.out.print("# ");
| |
− | }
| |
− | System.out.println("");
| |
− | }
| |
− | }
| |
− | </source>
| |
− | -->
| |
− | | |
− | ===Prova 4===
| |
− | | |
− | 1. Fes un programa que demani dos números més grans que 3 i mostri el següent:
| |
− | <pre>
| |
− | Ex. 5 i 8 Ex. 7 i 3
| |
− | | |
− | 1 2 3 4 * 6 7 * 9 1 2 * 4 5 6 * 8 9
| |
− | * 8 * * 5 * * * * * * 7 * * * 3 * *
| |
− | 1 2 3 4 * 6 7 * 9 1 2 * 4 5 6 * 8 9
| |
− | * 8 * * 5 * * * * * * 7 * * * 3 * *
| |
− | 1 2 3 4 * 6 7 * 9 1 2 * 4 5 6 * 8 9
| |
− | * * 7 * * * 3 * *
| |
− | 1 2 * 4 5 6 * 8 9
| |
| </pre> | | </pre> |
− | 2. Escriu un programa que mostri tots el números de n xifres (n senar) que compleixen que la suma dels dígits de la part esquerra és igual a la suma dels dígits de la part dreta. <pre>
| |
− | Ex n=7
| |
| | | |
− | 1000001 – 1000010 – 1000100 – 1001001 - 1001010...
| + | 5. En una seqüencia de números enters positius acabada en -1, determinar si s’ha produït una seqüencia de 5 números en els que cada número és major que l’anterior o una seqüencia de 5 números en els que cada número és menor que l’anterior. '''1,5 punts''' |
− | </pre>
| |
| | | |
− | 3. Fes un programa que demani un número de línies (més gran que 4 i imparell) i "dibuixi" la lletra 'M' (en l'exemple el número és 7)
| + | Exemples. |
| <pre> | | <pre> |
− | * *
| + | 3 7 22 3 4 67 12 87 76 111 124 33 45 56 77 -1 → NO |
− | * * * *
| |
− | * * * *
| |
− | * * *
| |
− | * *
| |
− | * *
| |
− | * *
| |
− | </pre>
| |
| | | |
− | 4. En una seqüencia de números enters positius acabada en -1, mostrar els números iguals a la suma de tots els números que el precedeixen: | + | 3 7 22 3 4 67 12 87 76 111 124 33 45 56 77 88 99 → SÍ |
− | <pre>
| |
− | Exemple:
| |
| | | |
− | 3 7 10 3 23 9 55 110 2 11 12 245 33 45 56 77 -1 → 10 23 55 110 245 | + | 3 7 22 3 4 67 12 87 76 111 124 88 45 36 17 11 → SÍ |
| </pre> | | </pre> |
| | | |
− | 5. Mostra per pantalla aquesta "representació" a partir d’un número introduït (en el exemple 7).
| + | 6. Mostra per pantalla aquesta "representació" a partir d’un número introduït per teclat (en el exemple 5). '''2 punts''' |
| <pre> | | <pre> |
− | 7 7 7 7 7 7 7
| + | # # # # # # # |
− | 6 6
| + | # * # |
− | 5 5
| + | # * # |
− | 4 4 4 4 4 4 4
| + | # * * * * * # |
− | 3 3
| + | # * # |
− | 2 2
| + | # * # |
− | 1 1 1 1 1 1 1
| + | # # # # # # # |
− | </pre>
| |
− | | |
− | 6. Mostra per pantalla aquesta "representació" a partir d’un número introduït per teclat (en el exemple 5).
| |
− | <pre>
| |
− | # # # # # # #
| |
− | # * #
| |
− | # * #
| |
− | # * * * * * #
| |
− | # * #
| |
− | # * #
| |
− | # # # # # # #
| |
| </pre> | | </pre> |
| + | --> |