Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 3.772 pregleda

Najnovija ↓

Kalkulator sa postovanjem reda operacija 23.10.2008. u 16:30 · pre 219 meseci
izmenjeno 1 put, poslednji put strongnikola 24.10.2008. u 14:12
  1. strongnikola24.10.2008. u 14:12zapis iz teksta poruke
#1
Evo ovako, profesor nam je zadao da za domaci napravimo dva kalkulatora. Jedan u kome se ne postuje red racunskih operacija sto znaci da kada ukucavam 3 pa pritisnem + pa ukucam 5 pa pritisnem * 2 treba da izadje rezultat 16. I drugi u kome se postuje to koja je operacija starija. u ovom slucaju, rezultat bi bio 13 jer se prvo mnoze 5 i 2. Ja sam ovaj prvi napravio ali drugi ne znam. Ne znam preko koje procedure da ja ocitam pritisnutu operaciju pa da on reci sta ce da radi prvo i s' obzirom da ima beskonacno mnogo operanda to je malo teze. Mislim da bi trebala da se koristi procedura okkeypress s obzirom da imam jedno edit polje u kome unosim rucno na tastaturi brojeve i ono sluzi istovremeno za ispis rezultata i imam dugmice +,-,*,/,=,ce. Nadam se da vam pada nesto na pamet! Hvala
Re: Kalkulator sa postovanjem reda operacija 23.10.2008. u 23:12 · pre 219 meseci #2
napravis dva Tstringlist, u prvi dodajes brojeve u drugi operande. Listas operande redom i trazis one koji imaju prednost. Dakle mnozenje i deljenje prvo, brises ih i operises s brojevima, brises brojeve i na to mesto dodajes broj koji si izracunao. Ponavljas isto za ostale operacije... na kraju stampas broj koji ti ostane u tstringlist.
Re: Kalkulator sa postovanjem reda operacija 24.10.2008. u 15:23 · pre 219 meseci #5
TStringList je klasa koja u sebi sadrzi listu stringova. Umesto nje mozes koristiti i array, svejedno je, mada je lakse izbrisati neku vrednost iz TStringlist umesto iz arraya. Ako ti jos uvek treba, mogu da ti napisem...
Re: Kalkulator sa postovanjem reda operacija 25.10.2008. u 13:49 · pre 219 meseci #7
dakle kao u onoj tvojoj aplikaciji imas 5 buttona, + - / * i =. Imas i jedan edit u koji se upisuje broj. Deklarises dve TStringlist, globalno.
Code:

var
 brojevi,oper: TStringList;

u form oncreate stavis:

Code:

 brojevi := TStringlist.create;
 oper := TStringlist.create;


svaki od buttona sem = u sebi ima:

Code:

 brojevi.add(edit1.text);
 oper.add('*'); // ili koja je vec operacija na tom buttonu.


sad u onclick za = ubacis ovako nesto:

Code:

var
 x,y,z : integer;

begin

 for z:=o to oper.count -1 do

  if oper[z] = '*' then
   begin
    x := strtoint(brojevi[z]);
    y := strtoint(brojevi[z+1]);
    x := x * y;
    brojevi.insert(z,inttostr(x));
    brojevi.delete(z+1);
    oper.delete(z);
   end;

kad proveri za mnozenja, onda predjes na deljenje, pa sabiranje, oduzimanje...
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme