8.7.. Napisati program za ispis pravouglog trougla kao na slici sa željenim brojem redova:
.
Opis rješenja: Ovaj ispis se ponekad naziva i "Glavna dijagonala":
 |
Slika 1. Glavna dijagonala i=j |
Listing programa :
I varijanta ispis sa do-while (j <= i)
// 08714038
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int i, j, n;
System.out.print("Unesi n: ");
n = input.nextInt(); // dimenzija matrice
i = 1; // pocetna vrijednost i
do { // pocetak do-while petlje i
j = 1; // pocetna vrijednost j
do { // pocetak do-while petlje j
if (j < i) // ispod glavne dijagonale j < i ?
System.out.print(" "); // ispis praznog znaka
else
System.out.println("x"); // ispis x na glavnoj dijagonali j == i i novi red
j++; // slijedeca vrijednost j
} while (j <= i); // ispod i na glavnoj dijagonali j <= i ?
i++; // slijedeca vrijednost i
} while (i <= n); // redovi od i = 1 do n
}
}
II varijanta ispis praznine ispod glavne se izvodi unutra do ; input znak .charAt(0)
// 08714038
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int i, j, n;
System.out.print("Unesi n: ");
n = input.nextInt(); // dimenzija matrice
i = 1; // pocetna vrijednost i
do { // pocetak do-while petlje i
j = 1; // pocetna vrijednost j
do { // pocetak do-while petlje j
if (j < i) // ispod glavne dijagonale j < i ?
System.out.print(" "); // ispis praznog znaka
j++; // slijedeca vrijednost j
} while (j < i); // ispod glavne dijagonale j < i ?
System.out.println("x"); // ispis x na glavnoj dijagonali j == i i novi red
i++; // slijedeca vrijednost i
} while (i <= n); // redovi od i = 1 do n
}
}
III varijanta ispis praznine ispod glavne dijagonale izvodi se sa while (j < i)
// 08714038
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int i, j, n;
System.out.print("Unesi n: ");
n = input.nextInt(); // dimenzija matrice
System.out.print("Otkucaj znak: ");
char znak = input.next().charAt(0); // znak
i = 1; // pocetna vrijednost i
do { // pocetak do-while petlje i
j = 1; // pocetna vrijednost j
do { // pocetak do-while petlje j
if (j < i) // ispod glavne dijagonale j < i ?
System.out.print(" "); // ispis praznog znaka
else
System.out.println(znak); // ispis znaka i novi red
j++; // slijedeca vrijednost j
} while (j <= i); // ispod i na glavnoj dijagonali j <= i ?
i++; // slijedeca vrijednost i
} while (i <= n); // redovi od i = 1 do n
}
}
IV varijanta ispis praznine ispod glavne dijagonale izvodi se sa if (j == i); input znak .charAt(0)
// 08714038
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int i, j, n;
System.out.print("Unesi n: ");
n = input.nextInt(); // dimenzija matrice
System.out.print("Otkucaj znak: ");
char znak = input.next().charAt(0); // znak
i = 1; // pocetna vrijednost i
do { // pocetak do-while petlje i
j = 1; // pocetna vrijednost j
do { // pocetak do-while petlje j
if (j < i) // ispod glavne dijagonale j < i ?
System.out.print(" "); // ispis praznog znaka
j++; // slijedeca vrijednost j
} while (j <= i); // ispod i na glavnoj dijagonali j <= i ?
System.out.println(znak); // ispis znaka na glavnoj dijagonali j == i i novi red
i++; // slijedeca vrijednost i
} while (i <= n); // redovi od i = 1 do n
}
}
Ispis na ekranu:

Index
|
 |