• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Program - rysowanie choinki z pniem

VPS Starter Arubacloud
0 głosów
2,623 wizyt
pytanie zadane 3 października 2018 w Java przez dzideos Obywatel (1,320 p.)

Witam,

Mam za zadanie narysować choinkę z gwiazdek(co też zrobiłem) jak i również ma się pojawiać pień do niej umiejscowiony na samym środku, podstawy w postaci "#".  Mam z tym problem, potrzebuję pomocy,wszelkie wskazówki mile widziane i z góry dziękuje za odpowiedź.

package zad1lista2;

import java.util.Scanner;

public class zad1lista2 {
	public static void main(String[] arg) {
		int h, a;
		char star = '*';
		System.out.print("Enter the height of the Christmas tree: ");
		Scanner input = new Scanner(System.in);
		h = input.nextInt();
		for (int i = 0; i < h; i++) {
			for (a = 0; a < h * 2; a++) {
				if (a < (h - i) || a > (h + i)) {
					System.out.print(" ");
				} else {
					System.out.print(star);
				}
			}
			System.out.println();
        
		}
	
	}
}

 

1 odpowiedź

–1 głos
odpowiedź 3 października 2018 przez mbabane Szeryf (79,280 p.)
Zachowaj gdzieś liczbę gwiazdek w ostatniej warstwie (pierwszej przy pniu) wyznacz środek i tam wstaw znak, poprzedzając go odpowiednią liczbą spacji, tak aby # znalazł się pośrodku. Ewentualnie umieść go na tej samej szerokości (tyle samo spacji od brzegu) co pierwsza gwiazdka (czubek).
komentarz 4 października 2018 przez dzideos Obywatel (1,320 p.)
Hmm, mógłbyś mnie naprowadzić pokazując coś w kodzie, jak to ma wyglądać. Nie za bardzo wiem jak to napisać.
komentarz 4 października 2018 przez mbabane Szeryf (79,280 p.)

Rozumiem ze ma to wyglądać np. tak:

    *
   ***
  *****
 *******
*********
    #

Wydaje mi się że najprostszym wyjściem będzie ten drugi sposób tj wstawić znak # w tej samej pozycji od brzegu co pierwszą gwiazdkę - czubek. Jednym ze sposobów jest zapisanie w zmiennej pomocniczej ile spacji jest od brzegu do czubka i potem na sam koniec (po wydrukowaniu wszystkich warstw gwiazdek), na podstawie tej wartości wydrukować znak # na tej samej zasadzie co pierwszy znak *. 

komentarz 4 października 2018 przez dzideos Obywatel (1,320 p.)
Dokładnie o to chodzi.
komentarz 5 października 2018 przez mbabane Szeryf (79,280 p.)
To spróbuj na razie sam to zrobić bez pokazywania kodu, bo w sumie w kodzie nie ma za wiele do pokazywania i jak to zrobię to właściwie dam CI gotowe rozwiązanie, więc sam trochę pogłówkuj. Jeszcze raz trzeba wstawić znak # na tej samej pozycji co pierwszą gwiazdę (czubek). Czyli jeśli wiesz jak wstawić pierwszą gwiazdę to wiesz jak wstawić pień.
komentarz 6 października 2018 przez dzideos Obywatel (1,320 p.)
Rzeczywiście, użyłem pętli for i się udało. Dzięki kolego :)
komentarz 9 października 2018 przez mbabane Szeryf (79,280 p.)
Kto daje te -1 bo to jest denerwujące kiedy odpowiedź jest poprawna... Jakiś troll chce się dowartościować czy jak? Uważasz, że jest to błędne czy coś jest nie tak -  powiedz czemu, a ktoś na tym skorzysta (np. ja)?

Podobne pytania

0 głosów
1 odpowiedź 7,411 wizyt
pytanie zadane 17 października 2016 w C i C++ przez Kubiaczek007 Nowicjusz (120 p.)
0 głosów
1 odpowiedź 5,595 wizyt
0 głosów
1 odpowiedź 618 wizyt
pytanie zadane 13 lutego 2021 w C i C++ przez Fie Nowicjusz (120 p.)

92,451 zapytań

141,261 odpowiedzi

319,073 komentarzy

61,853 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...