Strona 1 z 1
Skrypt na trójkąt prostokątny.
: 30 maja 2021, 11:24
autor: Kacper2701
Witam,
dostałem zadanie, na napisanie skryptu rysującego trójkąt prostokątny z gwiazdek. Ma on mieć 5 linijek wysokości, a w każdej linijce znajdować się jedna gwiazdka więcej- zaczynając od 1. Problem jest taki, że po prostu mi to nie wychodzi. Napisałem to tak- jak widać w załączniku. Ze wszystkich modyfikacji- tutaj wydaje mi się, że jest najbliżej celu, jednak nie jest idealnie.
Jakby ktoś jeszcze mógł mi wytłumaczyć, co ewentualnie napisałem źle- byłbym bardzo wdzięczny.
Pozdrawiam i z góry dziękuję.
Re: Skrypt na trójkąt prostokątny.
: 30 maja 2021, 13:05
autor: mario_7
Problem nie jest trudny, a twój kod oczywiście błędny.
Zacznij od wklejenia kodu bezpośrednio do posta - tak będzie łatwiej.
Następnie opisz słowami co według ciebie ten twój kod robi w obecnej formie - myślę że to naprowadzi cię na błędy jakie popełniłeś.
Re: Skrypt na trójkąt prostokątny.
: 10 sie 2024, 18:39
autor: prymula
To zadanie jest bardzo popularne. Spotkałem kiedyś gościa, który w ten sposób miał przećwiczyć instrukcję 'for' w Javie. Co prawda odgrzeję za chwilę "czerstwy" kotlet, ale może dzięki temu przyczynię się do zdobycia przez kogoś upragnionego licencjatu. Tyle że moja wersja nie posiada w/w instrukcji.
Kod: Zaznacz cały
#!/usr/bin/env bash
branch="********************"
space=" "
function print_branch
{
echo "${space:0:$3}${branch:0:$1}${branch:0:$2}"
if [[ $4 -gt 0 ]]; then
print_branch $(expr $1 + 1) $(expr $2 + 1) $(expr $3 - 1) $(expr $4 - 1)
fi
}
echo " "
print_branch 0 1 20 10
echo " "
Pozdrawiam
Re: Skrypt na trójkąt prostokątny.
: 20 wrz 2025, 14:52
autor: auto_joker
Na magistra to może by wystarczył kod na całe 2 strony, ale oprawione w twardą okładkę.
Re: Skrypt na trójkąt prostokątny.
: 30 cze 2026, 19:15
autor: prymula
auto_joker pisze: 20 wrz 2025, 14:52
Na magistra to może by wystarczył kod na całe 2 strony, ale oprawione w twardą okładkę.
Mam rozpisać ten kod na dwie strony ? to praca kołchoźnika !
Spróbuj tego, nie trzeba nawet kompilować
Kod: Zaznacz cały
/*
* ASCII - choinka ze znaków
* autor: PRP
* licencja: GPL
* edytor: Geany
* 22-02-2022
*
* po prostu uruchom przez:
* java Ascii.java
*
*/
class Ascii {
static class Sign {
Sign(){}
static void show(String s, int n, int max) {
if (n < max) {
System.out.print(s);
++n;
show(s, n, max);
}
return;
}
}
static class Triangle extends Sign{
static final int SPACE = 24;
static final int max_lines = 8;
public static int max_space = SPACE;
public static int max_stars = 1;
static boolean first = true;
Triangle(){
}
static void show(int start, int n) {
if (n < max_lines) {
show(" ", start+1, max_space);
show("*", start, max_stars);
if (first == false)
show("*", start+1, max_stars);
first = false;
max_space--;
max_stars++;
System.out.println("");
++n;
show(start, n);
}
return;
}
}
static class Tree extends Triangle {
static final int MAX_SEQUENCES= 3;
static int l = 1; // degress left spaces
static void print(int start, int n) {
if (n < MAX_SEQUENCES) {
show(start, 1);
start--;
max_space = SPACE-2*l;
max_stars = 1;
++n;
l+=1;
print(start, n);
}
return;
}
}
public static void main (String args[]){
Tree t = new Tree();
final int START_SEQUENCES =0;
final int GOOD = 0;
System.out.println("");
t.print(GOOD, START_SEQUENCES);
System.out.println("");
}
}