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

Jak napisać program który wyświetla słowo literka po literce i potem zaczyna od nowej linii?

VPS Starter Arubacloud
0 głosów
1,280 wizyt
pytanie zadane 22 września 2019 w Java przez wszystkoodnowa Nowicjusz (160 p.)

cześć, mam kod, który wyświetla tekst literka po literce, natomiast nie wiem co zrobić aby wyświetlał go w jednej linii a potem po wypisaniu całego słowa żeby przechodził do nowej.

proszę o pomoc!

 

class Napis extends Thread {
    private String napis;
    private double czas;

    Napis(String Napis, double Czas){
        napis = Napis;
        czas = Czas;
    }

    public void Wypisz(){
        while (napis != ""){
            for(int i = 0; i < napis.length(); i++){
                try {
                    long czasd = (long)czas * 1000;
                    System.out.println(napis.charAt(i) + "-");
                    Thread.sleep(czasd);
                }
                catch (InterruptedException e){
                    System.out.println("0");
                }
            }
        }
    }
}

public class studies {

    public static void main(String[] args){
        Napis napis = new Napis("Studia", 1);
        napis.Wypisz();
    }
}

 

2
komentarz 22 września 2019 przez Mateusz51 Nałogowiec (28,180 p.)
użyj print() zamiast println() :)
println() wypisuje Stringa a następnie przechodzi do nowej lini. Jak chcesz porostu przejść to wywołujesz println() bez podania argumentu
komentarz 22 września 2019 przez wszystkoodnowa Nowicjusz (160 p.)
dzieki za pomoc, dziala! :)

 

a jak zmienic kod, aby wątek wypisał CAŁY napis pieciokrotnie (nie literka po literce), i aby po kazdym wypisaniu tych slow przeszedl do kolejnego wiersza i ponownie odczekal tyle czasu ile wynosi drugi parametr w konstruktorze?
1
komentarz 22 września 2019 przez Mateusz51 Nałogowiec (28,180 p.)
w 15 linijce wypisujesz pojedyncze literki, zamień to na słowo. I zmień warunek w for aby wypisał to 5 raz.
komentarz 23 września 2019 przez wszystkoodnowa Nowicjusz (160 p.)
Dzieki.

a czy wiadomo jak przerobic to zadanie aby bylo uruchamiane na wątkach?

1
komentarz 23 września 2019 przez Mateusz51 Nałogowiec (28,180 p.)
Jak juz chcesz zrobic to przed dziedziczenie przez Thread. To najlatwiej nadpisać metode run watku a potem wywołanie funkcji start().
komentarz 24 września 2019 przez wszystkoodnowa Nowicjusz (160 p.)
jak to dokładnie w tym programie zrobic? czy mozesz wkleic już zmieniony kod?

jestem poczatkujaca i nie wiem gdzie co dac :(
komentarz 24 września 2019 przez Mateusz51 Nałogowiec (28,180 p.)

Właśnie dlatego, że jesteś początkująca nie będę dawał Ci kodu :)
Poczytaj. Tu masz wszystko co potrzebujesz dokładnie opisana:
https://www.callicoder.com/java-multithreading-thread-and-runnable-tutorial/

komentarz 25 września 2019 przez wszystkoodnowa Nowicjusz (160 p.)

czy ponizszy kod jest prawidlowy?

 

class Napis implements Runnable{
    private String napis;
    private double czas;
 
    Napis(String napis, double czas){
        this.napis = napis;
        this.czas = czas;
    }
 
    public void run(){
        while (napis != ""){
            for(int i = 0; i < napis.length(); i++){
                try {
                    long czasd = (long)czas * 1000;
                    System.out.print(napis.charAt(i) + "-");
                    Thread.sleep(czasd);
                }
                catch (InterruptedException e){
                    System.out.print("0");
                }
            }
        }
    }
}
 
public class studies {
 
    public static void main(String[] args){
        Napis napis = new Napis("Studia\n", 1);
        napis.run();
    }
}

 

komentarz 26 września 2019 przez Mateusz51 Nałogowiec (28,180 p.)
Nie dokońca. Jak już masz runnable, to powinnaś na jego podstawie stworzyć Thread i uruchomić go metodą start.

1 odpowiedź

0 głosów
odpowiedź 22 września 2019 przez wszystkoodnowa Nowicjusz (160 p.)
a jak zmienic kod, aby wątek wypisał CAŁY napis pieciokrotnie (nie literka po literce), i aby po kazdym wypisaniu tych slow przeszedl do kolejnego wiersza i ponownie odczekal tyle czasu ile wynosi drugi parametr w konstruktorze?

Podobne pytania

0 głosów
0 odpowiedzi 121 wizyt
pytanie zadane 26 kwietnia 2019 w Sprzęt komputerowy przez Assasz Nałogowiec (30,460 p.)
–3 głosów
2 odpowiedzi 2,794 wizyt
pytanie zadane 13 maja 2017 w C i C++ przez jegor377 Stary wyjadacz (13,230 p.)
0 głosów
3 odpowiedzi 362 wizyt

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 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!

...