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ę.
Skrypt na trójkąt prostokątny.
-
Kacper2701
- Piegowaty Guziec

- Posty: 1
- Rejestracja: 30 maja 2021, 11:20
- Płeć: Mężczyzna
- Wersja Ubuntu: 20.04
- Środowisko graficzne: Brak
- Architektura: x86_64
- mario_7
- Administrator

- Posty: 8691
- Rejestracja: 30 sie 2006, 13:11
- Płeć: Mężczyzna
- Wersja Ubuntu: 26.04
- Środowisko graficzne: GNOME
- Architektura: x86_64
Re: Skrypt na trójkąt prostokątny.
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ś.
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ś.
-
prymula
- Sędziwy Jeż

- Posty: 33
- Rejestracja: 06 sty 2023, 20:41
- Wersja Ubuntu: inny OS
- Architektura: ARM
- Kontakt:
Re: Skrypt na trójkąt prostokątny.
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.
Pozdrawiam
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 " "
https://prymula.ct8.pl
-
auto_joker
- Sędziwy Jeż

- Posty: 57
- Rejestracja: 18 maja 2015, 22:22
- Płeć: Mężczyzna
- Wersja Ubuntu: 24.04
Re: Skrypt na trójkąt prostokątny.
Na magistra to może by wystarczył kod na całe 2 strony, ale oprawione w twardą okładkę.
-
prymula
- Sędziwy Jeż

- Posty: 33
- Rejestracja: 06 sty 2023, 20:41
- Wersja Ubuntu: inny OS
- Architektura: ARM
- Kontakt:
Re: Skrypt na trójkąt prostokątny.
Mam rozpisać ten kod na dwie strony ? to praca kołchoźnika !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ę.
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("");
}
}
https://prymula.ct8.pl
Kto jest online
Użytkownicy przeglądający to forum: Google [Bot] i 1 gość