Gość PIotr Napisano Grudzień 21, 2011 Zgłoszenie Share Napisano Grudzień 21, 2011 (edytowane) Witam. Chcialem Was prosic o napisanie mi skryptu ktory bedzie rysowal choinki. W internecie jest program który tworzy je wedlug wysokosci, potrzebuje nieco inny, a nie umiem tego ogarnac. Jak to ma dzialac? Choinka sklada sie z 3 warstw. Uzytkownik podaje szczerokosc górnej warstwy, a program ma w zaleznosci od wyboru generowac, dalszy ciag choinki. Na przykladzie wyboru np. "3" ma to wygladac tak: http://img209.imageshack.us/img209/6366 … dddsds.png Zaczolem od tego, ze W pierwszej warstwie petla od n = 1 do W, gdzie W to podana przez uzytkownika szerokosc górnej warstwy. W drugiej warstwie od 1 do W+1. W trzeciej warstwie od 1 do W+2. Z góry dziekuje! Bardzo mi pomozecie! Jesli nei dziala obrazek przedstawie jak to ma wygladac tu : $ ./choinka 3 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * $ ./choinka 4 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Edytowane Grudzień 21, 2011 przez WalDo Edytujemy posty zamiast pisać nowe. Do umieszczania kodu stosujemy znaczniki [code][/code] - nie trzeba wtedy wstawiać obrazków. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Grudzień 21, 2011 Zgłoszenie Share Napisano Grudzień 21, 2011 Witam. Chciałem Was prosić o napisanie mi skryptu ktory będzie rysował choinki.A ja bym chciał, żebyś lekcje odrabiał samodzielnie.Spróbuj coś sam napisać, pokaż, że chociaż trochę się wysiliłeś a na pewno znajdzie się ktoś kto poprawi Twój kod. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Gość Piotr Napisano Grudzień 21, 2011 Zgłoszenie Share Napisano Grudzień 21, 2011 Bawiłem się troche juz czasu, pare rzeczy jednak mi coś brakuje... :/ #!/bin/bash for (( k=1; k<=$1; k++ )); do k= 1 do 3 n= 1 do W n= 1 do W+1. n= 1 do W+1. function rysuj_wiersz { $W $k $n (3-k) + (W+k-1) - n = W-n+2 "* " do n echo -n } ale własnie na podstawie tego chce się tez nauczyć, więc jak mozna prosze o większą pomoc Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Gość If Only... Napisano Grudzień 22, 2011 Zgłoszenie Share Napisano Grudzień 22, 2011 Jakoś nie ogarniam Twojego kodu... Zawsze możesz spróbować inaczej. #!/bin/bash row=1 until test $row -gt $1 do dwg="" tmp=0 # początkowe wcięcie... while test $tmp -lt $[$1-$row] do dwg+=" " let tmp+=1 done tmp=0 # gwiazdki... while test $tmp -lt $[2*$row-1] do if [ `expr $tmp % 2` -eq 0 ] then dwg+="*" else dwg+=" " fi let tmp+=1 done # na ekran... echo "$dwg" let row+=1 done Łatwo dodasz pętlę, by rysować kolejne "gałęzie". Jeśli każda kolejna gałąź ma mieć o jeden wiersz więcej trzeba odpowiednio zmodyfikować warunek w pętli until i w pierwszej pętli while. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Gość PIotr Napisano Grudzień 22, 2011 Zgłoszenie Share Napisano Grudzień 22, 2011 WIelkie dzięki za pomoc Naprawdę mi pomogłeś! WKońcku mam choinke, której szukałem hehe Wedołych świąt Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się