alutka** utworzono 15 czerwca 2012 utworzono 15 czerwca 2012 Witam Mam problem ze skompilowaniem programu dla ubezpieczyciela pojazdów. Program na podstawie ceny pojazdu znizek i zwyzek ma obliczyc skłądke OC I wygląda on tak: uses crt; VAR wartosc,podstawa:integer; plec,zamieszkanie,zawod,wiek,jazda:string; Begin clrscr; writeln('Podaj wartosc twojego pojazdu (pln)'); readln(wartosc); writeln('Czy mieszkasz na wsi (t/n)'); readln(zamieszkanie); writeln('Czy jestes kobieta (t/n)?'); readln(plec); writeln('Czy pracujesz (t/n)'); readln(zawod); writeln('Czy miales stluczke w ostatnim czasie (t/n)?'); readln(jazda); writeln('Ile masz lat'); readln(wiek); podstawa:=wartosc*0,01; IF(zamieszkanie='t') THEN Begin znizka1:=podstawa-0,05; End; IF(plec='t') THEN Begin znizka2:=podstawa-0,05; End; IF(zawod='t') THEN Begin znizka3:=podstawa-0,05; End; IF(jazda='n') THEN BEGIN znizka4:=podstawa-0,1; End; IF(jazda='t') THEN Begin zwyzka1:=podstawa+0,1; End; IF(wiek<=25) THEN Begin zwyzka2:=podstawa+0,05; End; wysokosc skladki:=(podstawa-znizka1-znizka2-znizka3-znizka4)+zwyzka1+zwyzka2 writeln('Wysokosc skladki dla ciebie to', wysokosc skladki:2:2, zl); end; END. Ja nie widze żadnego błedu ale podczas kompilowania ich pokolei troche wyskakuje. Dokładnie wyskakuje błąd przy przecinku : podstawa:=wartosc*0,01; Wiecie może czemu i jak to poprawić? Z góry dziękuje za pomoc
leggo komentarz 15 czerwca 2012 komentarz 15 czerwca 2012 (edytowane) 1. W kodzie cyfry rzeczywiste zapisujemy przy pomocy kropki, a nie przecinka. Czyli nie powinno być [b]0,5[/b] tylko: [CODE] 0.5 [/CODE] 2. Liczby rzeczywiste przechowujemy w zmiennych typu [b]real[/b], [b]single[/b] lub [b]double[/b], a nie w [b]integer[/b]. 3. Masz kilka niezdefiniowanych zmiennych: [b]znizka1, znizka2, znizka3, znizka4, zwyzka1, zwyzka2, wysokosc[/b]. Kompilator zawsze pisze co jest nie tak, trzeba tylko chcieć go posłuchać.
alutka** komentarz 15 czerwca 2012 Autor komentarz 15 czerwca 2012 Dzięki wielkie, udało się skompilować było by już super ale niestety gdy testuje program po podaniu wieku program znika czy wiesz moze dlaczego??
leggo komentarz 15 czerwca 2012 komentarz 15 czerwca 2012 Program kończy swoje obliczenia i się wyłącza. Przed ostatniego end-a wpisz taką linijkę: [CODE] readln(); [/CODE] Dzięki temu program po skończeniu obliczeń i wypisaniu tego co ma wypisać zaczeka aż użytkownik wciśnie enter.
alutka** komentarz 15 czerwca 2012 Autor komentarz 15 czerwca 2012 Dzieki bardzo mi pomogles:) musze sie jeszcze bardziej posdszkolic
Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!
Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.