Skip to content
This repository has been archived by the owner on Jun 5, 2020. It is now read-only.

Metropolia University of Applied Sciences - Software Engineering Project 2016

License

Notifications You must be signed in to change notification settings

Diftraku/muas-sweng-project-2016

Repository files navigation

muas-sweng-project-2016

Metropolia University of Applied Sciences - Software Engineering Project 2016

Build Status Coverity Status

Kyseessä on monifunktiolaskin, jolla on tarkoitus pystyä suoraan käyttämään hankaliakin kaavoja suoraan keskellä funktioita. Tämä tarkoittaa sitä että kaavoja voi poistaa ja lisätä mielivaltaisesti käyttäjän valitsemalle paikalle. Kaavojen muuttujiin pääsy tehdään helpoksi käyttöliittymään. Muuttujat näytetään erillisessä listassa laskutoimituksen vierellä, jossa niihin voi antaa arvoja. Myös kosketusnäytön ominaisuudet otetaan huomioon.

Tällä hetkellä ohjelmassa toimii laskennalliset perustoiminnot, kuten yhteen-ja vähennyslaskut, jako-ja kertolaskut ja potenssit. Käyttöliittymästä on olemassa alpha-versio. Tietokannan valmistuttua sinne lisätään laskukaavat, josta ne haetaan itse ohjelmaan. Käyttäjä voi lisätä tietokantaan myös omia funktioita.

Ohjelma toimii MVC-mallin mukaan, siten että käyttöliittymä lähettää napinpainallukset kontrollerille. Kontrolleri luo toistaiseksi kaksi array-listaa, johon se tallentaa numerot ja toiseen merkit. Ohjelman kehittyessä muutamme sen luomaan pino- tai puutoteutus, johon merkit saadaan tallennettua. Kontrolleri paloittelee koodin sulkumerkkien ja erikoislaskutoimitusten mukaan osiin, jotka se lähettää yksitellen laskujärjestys luokalle. Laskujärjestysluokka laskee laskin luokan avulla siihen lähetetyn osan laskua ja palauttaa vastauksen haluttuun kohtaan laskutoimitusta.

Esimerkiksi laskutoimitus x-z*(a+s) paloitellaan siten että sulkujen sisällä oleva osa viedään ensin laskujärjestysluokkaan joka palauttaa (a+s) vastauksen d. Vastaus sijoitetaan alkuperäiseen laskuun omalle paikalleen, jolloin lasku näyttää tältä x-z*d. Lasku lähetetään kokonaan Laskujärjestys luokalle joka palauttaa lopullisen vastauksen.

About

Metropolia University of Applied Sciences - Software Engineering Project 2016

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages