Autor |
Wiadomość |
burza
redaktor
Dołączył: 13 Cze 2008
Posty: 239
Przeczytał: 0 tematów
Pomógł: 2 razy Ostrzeżeń: 0/5 Skąd: Legnica
|
|
|
|
Hmmm wiesz ciężko mi jest trochę to ogarnąć podam Ci swój kod bo nie kminie zbytnio co masz na myśli zmienna 1 i 2 bo jeśli to są liczby które się podaje do obliczenia to czy mogą być typu bool ?
![](http://picsrv.fora.pl/AcidTech/images/code_header.gif) | ![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
void __fastcall TForm1::PlusClick(TObject *Sender)
{
liczba1=RichEdit1->Text.ToDouble();
RichEdit1->Clear();
wybor=1;
}
void __fastcall TForm1::Rowna_sieClick(TObject *Sender)
{
liczba2=RichEdit1->Text.ToDouble();
RichEdit1->Clear();
switch (wybor)
{
case 1: wynik = liczba1 + liczba2;
RichEdit1->Text=wynik;break;
case 2: wynik = liczba1 - liczba2;
RichEdit1->Text=wynik;break;
case 3: wynik = liczba1 * liczba2;
RichEdit1->Text=wynik;break;
case 4:
if (liczba2>0)
{
wynik = liczba1 / liczba2;
RichEdit1->Text=wynik;
}
else
{
RichEdit1->Text="Nie można dzielic przez 0";
}break;
|
Post został pochwalony 0 razy
Ostatnio zmieniony przez burza dnia Sob 16:41, 07 Mar 2009, w całości zmieniany 1 raz
|
|
Sob 16:40, 07 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
|
![](http://picsrv.fora.pl/subSilver/images/spacer.gif) |
Gość
|
|
|
nie do końca. Mam dwie zmienne: Liczba1 i Liczba2, do nich mam zmienne typu bool IfLiczba1 i IfLiczba2.
IfLiczba1 jest na true zawsze, poza przypadkiem naciśnięcia klawisza C(kasuj wszystko) i pierwszym odpalaniem programu. Poza tym jest zawsze na false (czyli coś w niej jest) bo do niej po działaniu zawsze przenoszę wynik.
IfLiczba2 jest po działaniu ustawiona na false i jeśli wykonuje działanie i funkcja wykryje tam false, to do niej przenosi wartość z CStringa (z pola gdzie wpisujemy dane).
Program ma dwie zmienne typu char: cZnak i cPoprzedniZnak.
Ten drugi ma wartość działania (+ - * /) jeśli nie kliknę na przycisk Wynik, tylko zapętle działania (2+2+2+2+2+...+...) i jeśli kliknięty zostanie przycisk od działania to program wywołuje funkcję wykonującą to działanie i cZnak jest przenoszony do cPoprzedniZnak. Jeśli kliknę na przycisk Wynik to wywołuję funkcję, gdzie jest normalne obliczanie wyniku z aktualnym znakiem (cZnak).
Tak by to w skrócie wyglądało.
Akurat nad tym zapętlaniem działań kminiłem dwa dni, chyba z 4 algorytmy przerobiłem zanim trafiłem na ten właściwy...
A co mi się rzuciło w oczy...w tym if'ie, gdzie masz komunikat, że nie można dzielić przez zero jest moim zdaniem błąd. Bo masz tam liczba<0 - czyli nie można dzielić przez liczbę mniejszą jak zero, czyli -1, -2, -3 itd, a przez te liczby można, więc jeśli faktycznie nie chcesz dzielić jeszcze przez liczby minusowe, to daj liczba<=0, albo jeśli tylko przez 0, to daj liczba == 0.
Ostatnio zmieniony przez Gość dnia Sob 17:15, 07 Mar 2009, w całości zmieniany 2 razy
|
|
Sob 17:03, 07 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
burza
redaktor
Dołączył: 13 Cze 2008
Posty: 239
Przeczytał: 0 tematów
Pomógł: 2 razy Ostrzeżeń: 0/5 Skąd: Legnica
|
|
|
|
no spoko już coś skminiłem a mam pytanie zrobiłeś może ten kalkulator jako kalkulator idiotoodporny to znaczy ze jak ktos odpali kalkulator i kliknie odrazu + albo = to ma sie nie wysypac itp ![Smile](http://picsrv.fora.pl/images/smiles/icon_smile.gif)
Post został pochwalony 0 razy
|
|
Sob 17:15, 07 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
Gość
|
|
|
takie bajery to już dodam na końcu ;]
|
|
Sob 17:22, 07 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
burza
redaktor
Dołączył: 13 Cze 2008
Posty: 239
Przeczytał: 0 tematów
Pomógł: 2 razy Ostrzeżeń: 0/5 Skąd: Legnica
|
|
|
|
No ja jak zrobię ze nie wysypuje się to wtedy mi nie liczy dobrze :/
![](http://picsrv.fora.pl/AcidTech/images/quote_header.gif) | ![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) | IfLiczba1 jest na true zawsze, poza przypadkiem naciśnięcia klawisza C(kasuj wszystko) i pierwszym odpalaniem programu. Poza tym jest zawsze na false (czyli coś w niej jest) bo do niej po działaniu zawsze przenoszę wynik. |
Szczerze trochę to zagmatwane to kiedy ta zmienna jest na true a kiedy na false bo u ciebie zawsze jest na true i zawsze jest na false :/
Post został pochwalony 0 razy
Ostatnio zmieniony przez burza dnia Sob 23:12, 07 Mar 2009, w całości zmieniany 1 raz
|
|
Sob 20:01, 07 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
jrbari
Wartościowy Pisarz
Dołączył: 27 Lis 2007
Posty: 430
Przeczytał: 0 tematów
Pomógł: 2 razy Ostrzeżeń: 0/5 Skąd: Miasto Mistrzów [LUBIN]
|
|
|
|
Ten kalkulator trzeba oddać na następne zajęcia? każdy musi?
Post został pochwalony 0 razy
|
|
Sob 23:52, 07 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
Gość
|
|
|
![](http://picsrv.fora.pl/AcidTech/images/quote_header.gif) | ![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) | No ja jak zrobię ze nie wysypuje się to wtedy mi nie liczy dobrze :/
![](http://picsrv.fora.pl/AcidTech/images/quote_header.gif) | ![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) | IfLiczba1 jest na true zawsze, poza przypadkiem naciśnięcia klawisza C(kasuj wszystko) i pierwszym odpalaniem programu. Poza tym jest zawsze na false (czyli coś w niej jest) bo do niej po działaniu zawsze przenoszę wynik. |
Szczerze trochę to zagmatwane to kiedy ta zmienna jest na true a kiedy na false bo u ciebie zawsze jest na true i zawsze jest na false :/ |
Źle się wyraziłem...
IfLiczba1 jest zawsze na true poza przypadkiem, kiedy naciśniemy klawisz C(kasuj wszystko) albo zaraz po odpaleniu programu.
A ten kalkulator trzeba było zrobić na ostatnich zajęciach, tzn robił ten, kto miał edytor zrobiony. Było to jako możliwość zdobycia dodatkowej oceny.
|
|
Nie 0:05, 08 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
burza
redaktor
Dołączył: 13 Cze 2008
Posty: 239
Przeczytał: 0 tematów
Pomógł: 2 razy Ostrzeżeń: 0/5 Skąd: Legnica
|
|
|
|
Czyli nie musimy tego mu oddawać ? Na ćwiczenia tylko ta biblioteka ?
Post został pochwalony 0 razy
|
|
Nie 0:33, 08 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
Slavo
współtwórca
Dołączył: 06 Lis 2007
Posty: 451
Przeczytał: 0 tematów
Pomógł: 3 razy Ostrzeżeń: 0/5 Skąd: z pierdalaj
|
|
|
|
Kolor czcionki mi nie działa. Np chcę zmienić kolor napisu na przycisku. Co jest nie tak ?
Post został pochwalony 0 razy
Ostatnio zmieniony przez Slavo dnia Nie 21:38, 08 Mar 2009, w całości zmieniany 2 razy
|
|
Nie 20:55, 08 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
Slavo
współtwórca
Dołączył: 06 Lis 2007
Posty: 451
Przeczytał: 0 tematów
Pomógł: 3 razy Ostrzeżeń: 0/5 Skąd: z pierdalaj
|
|
|
|
[link widoczny dla zalogowanych]
Post został pochwalony 0 razy
|
|
Pon 15:34, 09 Mar 2009 |
|
![](http://picsrv.fora.pl/AcidTech/images/spacer.gif) |
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
|
|