Keresés


Toplista

Toplista
  • betöltés...

Magántanár kereső

Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!

Számológép

321
Tudnának segíteni az alábbi feladatban? Ha nem is az egész feladatot, akkor csak azt hogy, hogy induljak el rajta

Készíts számológépet.
+ osszead
- kivon
* szoroz
: oszt
^ negyzet
! faktorialis
a bekeres nem külön történik, hanem "2x2"
Jelenleg 1 felhasználó nézi ezt a kérdést.
python, programozás, informatika
0
Középiskola / Informatika

Válaszok

3
(Ez nem válasz, csak hozzászólás a kérdéshez.)

Valami támpont még kellene arra vonatkozóan, hogy mit tanultatok amikor ezt feladták. Például GUI, TUI, CLI netalán webes kezelőfelülettel kéne?
Vagy a címbeli számológép nem zsebszámológép utánzatként értendő, hanem kifejezés kiértékelő? Esetleg valami REPL?
Módosítva: 1 éve
0

Hello!

Láttam, hogy az eval( ) függvényre kitértetek, de a faktoriálissal gond adódott :D Írtam egy rövideke kódot, ami annyit csinál, hogy az eredeti feladatban megadott faktoriális számot/számokat kicseréli a kiszámolt értékére.

Pl.: "4*5!+3!-9**2!" itt megtalálja az 5!, 3! és 2!-t, majd kicseréli a kiszámolt értékeire: "4*120+6-9**2" . Így már ! nélkül van, szóval erre már használható az eval( ) függvény.

Inkább linkeltem, mert nem kell akkor tabozgatni, ha kimásolod :D (Tudom, hibakezelés nincs benne (NEGATÍV !), de egyébként működik. Ha esetleg ez nagy probléma, akkor szólj.)

https://www.online-python.com/REfLhSAWkb


1

Az megoldásként jelölt válaszomban VF talált egy hibát, amit kijavítottam. Ebben a verzióban annyi a változás, hogy a hatványozást "^" jellel kell beírni, ahogy egyébként írtad a kérdésben.

https://www.online-python.com/i2mZD4l9Up

Az előző verzióra pár hiba:
11! + 1! = 39916801
(felcserélve pedig)
1! + 11! = 2

22! + 2! = 1124000727777607680002
(felcserélve pedig)
2! + 22! = 24
Módosítva: 1 éve
0