[#1] Kalkulator w CLI
Zna ktoś jakiś zgrabny kalkulator, który byłby komendą CLI? Ale taki trochę bardziej zaawansowany żeby miał działania na systemie szesnastkowym, dwójkowym, żeby kumał kolejność działań, miał funkcje trygonometryczne.
Na Aminecie znalazłem tylko coś stworzonego prawie 30 lat temu:
  • util/cli/PCalc - nie ma funkcji trygonometrycznych i działa tylko na liczbach całkowitych,
  • util/cli/calc - bardzo prosty, tylko cztery podstawowe działania i mnożenie trzeba brać w nawias żeby nie wykonywał po dodawaniu.

Najchętniej dla MorphOS ale nie ma problemu jeżeli będzie dla AmigaOS3.
[#2] Re: Kalkulator w CLI

@MDW, post #1

Brzmi jak wyzwanie. Najwięcej roboty to parser. Można oczywiście użyć odwrotnej notacji polskiej, ale to znacznie ograniczy krąg odbiorców...
1
[#3] Re: Kalkulator w CLI

@Krashan, post #2

O rety, nie odwrotna notacja. Ja mieszkam w Polsce, nie potrafię myśleć w odwrotnej notacji polskiej.
Pisanie tego od podstaw to byłoby spore wyzwanie i kupa roboty. Chociaż oczywiście można zacząć od pierwszych czterech działań i powoli rozwijać...
Ale myślałem, że może ktoś coś takiego przeportował z innych platform. Pewnie są takie narzędzie dla konsolowych dziwaków. Powinny być w miarę portowalne skoro nie używają dźwięku, grafiki.

Ostatnia aktualizacja: 17.06.2024 15:26:07 przez MDW
[#4] Re: Kalkulator w CLI

@MDW, post #3

Proponuję przeportowac jakąś klasyczną konstrukcję np.:
link
albo któregoś Texasa:link
Ogólnie chodzi o to, że do nich jest mnóstwo materiałów edukacyjnych, bo to narzucony odgórnie kalkulator w amerykańskiej szkole.

Pozdr
[#5] Re: Kalkulator w CLI

@MDW, post #1

hexy to o ilepamietam nawet systemowy eval obsluguje
[#6] Re: Kalkulator w CLI

@Mikrobi, post #4

Tak, to chyba dobry pomysł. Nie musi być to aż tak strasznie rozbudowane narzędzie, ale jeżeli będzie to nie problem.
Plusem jest, że takie rozwiązania są już sprawdzone. Minusem, że pewnie ciągną za sobą jakieś wielkie multiplatformowe biblioteki i nie wyjdzie z tego malutka pchełka w SYS:C. Chociaż... właściwie nie ma to wielkiego znaczenia. I tak nie czuję różnicy czy z dysku odczytuje się 20KB czy 5MB.
[#7] Re: Kalkulator w CLI

@Mikrobi, post #4

Pari jest silny i otwarty i również znany. Nie wiem jednak nic o porcie na amigowe systemy.
[#8] Re: Kalkulator w CLI

@MDW, post #1

propo kolejności działań. Ja tam się nie znam, ale w ostatnich czasach mocno forsowane jest to całe BEDMAS/PEMDAS - na facebooku co krok widywałem różne "wyzwania" dla nudzących się przed komputerem babć - z podanym do wykonania działaniem z nawiasami i mnożeniem, dzieleniem, dodawaniem... (oraz obowiązkowym "Tylko jedna na milion osób podaje prawidłową odpowiedź! "). Ja tam nie wiem - w życiu nie uczono mnie o żadnych bedmasach, za to w szkole podstawowej wychowawczynią była nauczycielka matematyki i według wpojonych zasad wynik tamtego działania przedstawiał się zgoła inaczej, niż podawała większość komentujących w oparciu o te amerykańskie upraszczacze. Nie byłem bynajmniej jedyną osobą, która taki wynik uznała za właściwy, jednak była nas zdecydowana mniejszość i zwykle w reakcji osoby takie były wyśmiewane czy to przez "😆", czy komentarzami od różnych "alfa i omega", w stylu "to policz jeszcze raz".
zaciekawiło mnie to na tyle, że poszukałem odpowiedzi na jutubie (taa, dobre miejsce do szukania rzetelnych informacji OK). Wszedłem na któryś z brzegu filmik traktujący o podobnym problemie z tymi działaniami. Przejrzałem sobie komentarze - i wśród nich był jeden, który można streścić: "Amerykańscy nauczyciele w szkołach średnich i większość amerykańskich kalkulatorów poda odpowiedź #1 [czyli te całe pemdasy]. Japońskie kalkulatory oraz ktokolwiek, kto ukończył szkołę wyższą, poda odpowiedź #2".
Jak jest w rzeczywistości? - nie wiem, nie mam pod ręką japońskiego kalkulatora.
[#9] Re: Kalkulator w CLI

@MDW, post #1

Tylko czy wymagasz, żeby dostawał działanie jako argumenty przy wywołaniu (żeby skryptować) czy interaktywnie chcesz używać już po uruchomieniu? Bo jak druga opcja, to ja zwykle odpalam sobie któryś interpreter. Chociażby można Perla, żeby było zabawnie.
[#10] Re: Kalkulator w CLI

@snajper, post #8

Czy to przypadkiem nie chodzi o to, że w świecie... matematyki dla ludzi nie ma takiego operatora jak ÷ (podzielić), jest tylko kreska ułamkowa? Tymczasem kalkulatory (i komputery) potrzebują jakiegoś sposobu wprowadzania danych i rysowanie kresek ułamkowych (często na wielu poziomach, czyli ułamek np. w liczniku ułamka) było słabo wykonywalne, więc każdy wymyślał zapisy poziome, jednolinijkowe? Po wprowadzeniu tego sztucznego operatora każdy miał potem inny pomysł jak on powinien domyślnie "kleić" parametry jeśli nie zastosuje się nawiasów aby opakować licznik i mianownik... no i wyszły potworki. wtf!?
[#11] Re: Kalkulator w CLI

@Mario, post #10

podaję link do filmiku: https://www.youtube.com/watch?v=wzchhbrqIBI
Działanie 60÷5(2) i odpowiedzi w zależności od sposobu obliczeń: 24 według pemdasów lub 6.
oraz treść komentarza (jedna z odpowiedzi na komentarz mattsmith7490):
"Almost anyone who works in STEM or has higher education will give the answer of 6. Japanese calculators also give the answer of 6. Anyone who only did high school, American high school teachers, and newer American calculators, will give the answer of 24. Make of that what you will".
[#12] Re: Kalkulator w CLI

@MDW, post #6

Pytanie brzmi: jak mają być wprowadzane dane?
Czy ma mieć GUI i w nim sobie operujemy, czy wprowadzane w linii poleceń?

P.S. Kiszę taki niedokończony kalkulator na dysku, dla AmigaOS3, z GUI - czyli kiedyś musiałem się zetknąć z problemem i coś zacząłem grzebać.
[#13] Re: Kalkulator w CLI

@snajper, post #11

Muszę oddać dyplom i chyba zajmę się uprawą ziemniaka pastewnego.
[#14] Re: Kalkulator w CLI

@MDW, post #1

Na aminecie jest AMath. Nawet natywna wersja pod MOSa. Ma chyba wszystko czego potrzebujesz.
2
[#15] Re: Kalkulator w CLI

@widelec, post #9

ja zwykle odpalam sobie któryś interpreter. Chociażby można Perla

Dobre! Dzięki.
Takie oczywiste, a zupełnie nie przyszło mi do głowy. Przecież jedną komendą mogę odpalić sobie Pythona i mam dosłownie wszystko co sobie wymyślę. Nawet wartości w zmiennych mogę zapamiętać i później ich użyć w kolejnych działaniach. Nawet oętle.
Nie potrzebuję kalkulatora przyjmującego wartości w argumentach. Po prostu nie chcę używać takich kalkulatorów klikanych myszą w których nie widzę całego działania.
[#16] Re: Kalkulator w CLI

@michal_zukowski, post #5

Tak jest. Ja do prostych obliczeń to właśnie EVAL używam, a jak jestem leniwy to odpalam asm-one.
[#17] Re: Kalkulator w CLI

@asman, post #16

Tak, Asm-one is the best.
Od razu pokazuje wynik dzialania dziesietnie, w bitach i jako hex.
Bez takiej wizualizacji wyniku ciezko by mi bylo np. zamienic mnozenie na kombinacje przesuniec i dodawan.
Bo jestem wzrokowcem.
[#18] Re: Kalkulator w CLI

@Skotos, post #12

Pytanie brzmi: jak mają być wprowadzane dane?
Czy ma mieć GUI i w nim sobie operujemy, czy wprowadzane w linii poleceń?

No właśnie taki bez GUI chciałem. Tak jakby właśnie na przykład wiersz poleceń z Pythona.
[#19] Re: Kalkulator w CLI

@ppill, post #14

Na aminecie jest AMath. Nawet natywna wersja pod MOSa. Ma chyba wszystko czego potrzebujesz.

Sprawdziłem AMath i wygląda nieźle. Jeżeli poda mu się działanie jako argument wywołania programu to od razu dostaję wynik, a jeżeli się nie poda to otwiera własne okno i w nim można pisać. Jest też parametr SHELL, który sprawia, że działamy w standardowym CLI. Patrzę po opcjach i faktycznie jest nawet więcej niż bym chciał, można definiować zmienne, a nawet funkcje. Rety, czego tutaj nie ma...
Dzięki za bardzo trafione polecenie! OK

Ostatnia aktualizacja: 17.06.2024 22:48:32 przez MDW
1
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem