[java] zadanie - prosze o pomoc

0

Dzien dobry,

Otoz to jestem na erasmusie w Niemczech i mam przedmiot, na ktorm programuje sie w Javie ( pocztaki programowania).

Tak sie skalda, ze dowiedzialem sie, ze do jutra musze oddac jakis program napisany w tym jezyku ( no niestety nie ogarnalem wszystekeigo tutaj i przeoczylem to wczesniej).
Nigdy w zyciu nie programowalem, wiec bardzo prosze o pomoc.

Klasa AsciiiShop jest do utworzenia i powinna byc klasa wykonywalna oraz musi zawierac

public static void main(String args[]) metode.

Program powinien czytac obraz ASCII linijke po linijce ze standardowego wejsciai sprawdzac, czy wszystkie linie są sobie równe. Po odczytaniu zostaje wyswietlona wysokosc i szerokosc obrazu (tj. długość i liczba). Jeśli dane wejsciowe (input) sa blednewyswietla sie komunikat o bledzie.

Program powinien obraz czytac linijka po linijce. Pozwolcie tak dlugo czytac programowi libijki obrazu, az do momentu kiedy nastapi koniec danej wejsciowej. Liczcie ile juz linijek dotychczasowo odczytal i sprawdzcie czy kazda nowo-wczytana linijka tak samo dluga jest jak dotychczas odczytane linijki. Jesli jakas linijka jest dluzsza lub krotsza, wczystywanie zostaje przerwane i pojawia sie „INPUT MISMATCH”. Jesli wszystkie linijki sa tej samej szerokosci, wtedy po wczytaniu ostatniej linijki, szerkosc i wysokosc wczystanego obrazka w jednej linijsce przez standardoutput jest podawana.

Wczytywanie obrazka ASCII:

Nalezy uzyc klasy Scanner i metod w niej zawartych : next i hasNext lub nextLine oraz hasNextLine.
http://java.sun.com/javase/6/docs/api/?j...anner.html

W kazym badz razie nalezy wprowadzic obrazek ASCII i wykonac operacje.
Tutaj ucza sie programowac wykorzystujac jEdit.

Blagam odpowiedz, bowiem do jutra potrzebuje rozwiazania :)

Postaram sie odwdzieczyc za to jak bede mogl.

Dziekuje.

Pozdrawiam,
Jarek

0
import java.util.Scanner;

public class AsciiShop
{
    public static void main(String[] args)
    {
        Scanner scanner = new Scanner(System.in);
        int height = 0;
        int width = -1;
        boolean endedSuccessfully = true;

        while(scanner.hasNextLine())
        {
            String line = scanner.nextLine();
            ++height;

            if(width == -1)
                width = line.length();

            if(width != line.length())
            {
                System.out.println("INPUT MISMATCH\nLine "+height+" length is "+line.length()+" instead of "+width);
                endedSuccessfully = false;
                break;
            }
        }

        if(endedSuccessfully)
            System.out.println(height+"x"+width);
    }
}

Zapisz to do pliku AsciiShop.java i powinno grać. Kod przetestowany - działa :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1