Kalkulator zużycia cegieł

0

Witam, mam do zrealizowania kalkulator zużycia cegieł. Program ma zliczyć , ile cegieł będzie potrzebne do zbudowania muru. Użytkownik podaje długość, wysokość, szerokośc muru, a ja na podstawie tego podaje mu ile potrzebuje cegieł. Wymiary cegły 24 cm długości, 12 cm szerokości, 6 cm wysokości, szerokość spoiwy 1 cm. Nie wiem jak do tego się zabrać, zważywszy na to, że ma być to zrobione w postaci komponentu. Będę wdzięczny za każdą próbę pomocy, pozdrawiam.

0

Ale z czym problem? Z matemaatyką? Dzielisz wys muru przez wys cegły i masz ilość linii cegieł. Sumujesz dlugosc linii i dzielisz przez długość cegły. Plus poprawki na zaprawę jak masz takie PARAMETRY.

0

O co chodzi z tym komponentem? Masz napisać własny komponent (kontrolkę?), czy źle zrozumiałeś co mówiła osoba zlecająca zadanie?

0

Co do idei to liczba cegieł to kubatura muru podzielona przez wymiary poszczególnych cegieł plus zaprawa
No ale jaka to ma być ściana? Jednowarstwowa? Wielowarstwowa? Jak układane mają być cegły?
Poniżej przykładowe murki z cegieł
screenshot-20180110213436.png

Potem pewnie okaże się, że cegły mają być też inne. Potem znów okaże się, że mają być pustaki a na koniec to dobrze by było i policzyć koszt ściany wielowarstwowej ;).

@soul22: coś więcej i bardziej konkretnie możesz napisać? Jaka technologia? Jak to ma wyglądać - ten komponent?

0

Oryginalna treść polecenia: "Kalkulator zużycia cegieł. (znając wymiar cegły 6,12,24 oraz szerokość muru 6,12,24,32
podaj wymiary muru A i B znając szerokość spoiny 1cm oblicz potrzebna ilość cegieł)". Facet wysłał polecenie na zasadzie " masz i sobie radź" jak to na studiach często bywa, z gościem nie ma kontaktu bo nie odpisuje na maile z zapytaniami na temat tego. Wiem, że ma być to w postaci komponentu z prostym GUI, dla mnie te polecenie jest niejasne i nie wiem po prostu jak się zabrać za to.

0

a gdzie tu masz cokolwiek o komponencie?

0

To wiem z pierwszych zajęć, sam przedmiot nazywa się programowanie komponentowe. Gość ma gdzieś ten przedmiot, sam mówił na pierwszym wykładzie, ale zaliczyć trzeba. Mam mętlik w głowie , jak patrze na to zadanie, dodatkowo od groma innych projektów, dlatego pytam się tu na forum bo wiem, że dla wielu z Was to nie taki problem jak dla mnie. Każda wskazówka albo podpowiedź odnośnie klas/struktur jakie można by użyć w tym zadaniu będą bardzo mile widziane. Może wydawać się, że idę na łatwiznę ale "deadline is coming" i jestem trochę pod ścianą. Dzięki z góry i pozdrawiam.

0

Dział "ogłoszenia drobne" zaprasza ;).

0

@soul22: ale to ma być komponent GUI czy po prostu możliwy do używania kawałek kodu jak np. biblioteka dll?

0

Komponent GUI, który może być używany jako osobny program, a także wykorzystany do większych projektów.

0

To jest aplikacja okienkowa? WinForms/WPF?

0

Tak, zgadza się, Windows Forms.

1

Jeśli to być komponent w sensie graficznym to projekt typu Class library a w nim UserControl i na nim kilka TextBoxów do wpisania wymiarów muru, domyślnych wymiarów cegły i wynikami. Przycisk Oblicz.
Dodatkowo klasa z jakaś metoda obliczającą przyjmującą parametry muru i cegły i zwracająca ilość cegieł (do wykorzystania w komponencie i konsolowej aplikacji. Przycisk oblicz wywołuje obliczenia z klasy z metoda obliczeniową. Programowanie komponentowe w praktyce :)

1

Czyli zapewne chodzi o to, żebyś zrobił UserControl z dwoma NumericUpDown na wymiary A i B muru, dropdownem do wyboru szerokości muru (jedna z czterech) oraz Buttonem, który uruchamia obliczenia w klasie do tego służącej. Do tego jakiś TextBox readonly na wynik.

0

A nie powinny być 3 NumericUpDown'y, aby uwzględnić wysokość, szerokość i długość? Jakaś kontrolka inna niż DropDownList bo (nie wiem czemu, przy Web Forms ją mam) nie mam jej w toolkicie. Jak mogłyby wyglądać te obliczenia? Jeśli jedna cegła ma wymiary 6x12x24cm a wymiary muru podane przez użytkownika miałyby powiedzmy 2x1x5m(wysokość x szerokość x długość)? Dodatkowo uwzględnić spoiwę 1cm. polecenie jest nieprecyzyjne oraz trochę chaotycznie napisane. Ciężko z niego ustalić, jak dokładnie ma to wyglądać.

Edit: Zrobiłem to po swojemu, użyłem 3 numericUpDown na 3 wymiary muru, po przemnożeniu podzieliłem przez objętość cegły wraz ze spoiwem i wyszło. Dzięki za pomoc, temat do zamknięcia.

1
soul22 napisał(a):

A nie powinny być 3 NumericUpDown'y, aby uwzględnić wysokość, szerokość i długość?

Zgodnie z treścią zadania możliwe szerokości muru to: 6,12,24,32, więc potrzebujesz pobrać tylko dwa pozostałe wymiary w formie liczbowej, a trzeci ze stałej listy wartości, czyli dropdowna. W WinForms służy do tego chyba ComboBox w odpowiednim trybie, nie pamiętam już dokładnie.

Dodatkowo uwzględnić spoiwę 1cm. polecenie jest nieprecyzyjne oraz trochę chaotycznie napisane. Ciężko z niego ustalić, jak dokładnie ma to wyglądać.

To akurat jest oczywiste dla każdego, kto widział w życiu mur. Wiadomo, że spoiw między cegłami jest o jedno mniej niż cegieł. Wiadomo, że nie mogą wyjść ujemne ani ułamkowe wartości liczby potrzebnych cegieł. No i w zależności od podanej szerokości muru odpowiednio należy odpowiednio dobrać ułożenie cegieł aby wiedzieć jak podzielić wymiary A i B muru przez pozostałe wymiary cegły.

Edit: Zrobiłem to po swojemu, użyłem 3 numericUpDown na 3 wymiary muru, po przemnożeniu podzieliłem przez objętość cegły wraz ze spoiwem i wyszło.

Powodzenia!
Daj znać czy dostaniesz zaliczenie, bo jeśli tak, to prowadzący jest totalnym idiotą.

0

Cześć.
Mimo że programowanie traktuje jako hobby i tu na forum zaglądam z czystej ciekawości i w poszukiwaniu wiedzy to muszę się wtrącić do rozmowy.
Otóż jak chcesz policzyć ilość cegieł w ścianie to obmiary ścian podaje się zazwyczaj w m2, zależnie od grubości ściany (dla cegieł czerwonych o wymiarach 25x12x6,5cm są grubości - 1/4 cegły, 1/2 cegły, 1 cegła, 1 1/2 cegły itp.) szukasz w sieci info ile wchodzi cegły dla ściany takiej i takiej grubości. Proste liczenie powierzchnia x ilość szt/m2. Podobnie jest dla innych materiałów budowlanych, liczy się ilość szt/m2, grubości ścian są ustandaryzowane. W metrach sześciennych liczy się tylko kominy. Połówkami cegieł się nie zajmujemy bo zawsz gdzieś wejdzie, a budownictwo to nie apteka, zawsze muszą być jakieś małe zapasy zazwyczaj od 5 do 10%.
Więc nie ma co liczyć samemu jak już wszystko jest policzone.
W swojej aplikacji dałbym (opisze to po javowemu bo w tym języku obecnie się bardziej orientuje) :

  • jedną kontrolkę JCombobox do wybierania typu ściany i jej standardowych wymiarów.
  • dwie kontroli JSpinner do pobierania danych od użytkownika długość, wysokość lub powierzchnię ściany
  • jedna kontrolka JSpinner do pobierania informacji o polu powierzchni ewentualnych otworów w ścianie
  • jedna kontrolka JLabel do wyświetlania wyników

Mam nadzieje że coś pomogłem.
Pozdrawiam TJ

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