Kordialne
Pascal jak ogarnąć - Wersja do druku

+- Kordialne (https://kordialne.trafne-miejsce.pl)
+-- Dział: DOM (https://kordialne.trafne-miejsce.pl/forumdisplay.php?fid=40)
+--- Dział: Elektryka (https://kordialne.trafne-miejsce.pl/forumdisplay.php?fid=57)
+--- Wątek: Pascal jak ogarnąć (/showthread.php?tid=6241)

Strony: 1 2


Pascal jak ogarnąć - satox - 05-02-2021

Znam  kilka języków programowania lecz męczę  się  niemiłosiernie  z pascalem.

Chciałbym  aby ktoś mi pomógł  poprawiając błędy w moich  programach które  napiszę.

Szczególnie  interesuje  mnie  pomoc JózkaKg który  programuje w tym  języku.

Chodzi tu  o dialekt   free pascal  i object  pascal.

Programy ukażą się na moim githubie w tym okienkowe.

Będą tutaj: https://github.com/JERUKA9/Fix-And-Improvments-Object-Pascal

Licencja publiczna do dowolnego użytku.


Dziękuję za uwagę.


RE: Pascal jak ogarnąć - jozekkg - 08-02-2021

Cześć

O ile moja wiedza i czas pozwolą. spróbuję Ci pomóc


RE: Pascal jak ogarnąć - satox - 08-02-2021

(08-02-2021, 10:03 )jozekkg napisał(a):  Cześć

O ile moja wiedza i czas pozwolą. spróbuję Ci pomóc

Dzięki  niebawem się odezwę  i je wrzucę.


RE: Pascal jak ogarnąć - satox - 08-02-2021

https://github.com/JERUKA9/Fix-And-Improvments-Object-Pascal/blob/main/Calc_no_gui.pas


RE: Pascal jak ogarnąć - jozekkg - 10-02-2021

Jeruka, zajrzałem na ten program.
Jak go uruchomisz, to nie robi kompletnie nic. Żadnego komunikatu co się dzieje, co masz zrobić.
Ładnie by było uzupełnić go o jakieś komunikaty, np. Write('Podaj liczbę a= ');Readln(a); itd.
Wyniki możesz opisać w ten sposób
writeln('a*b*c*d*f*g*h= ',a*b*c*d*f*g*h);

Nie chcę jednak zaśmiecać forum takimi rzeczami. Może lepiej było by to pisać na priva, albo jeszcze gdzie indziej.


RE: Pascal jak ogarnąć - bonaparte - 10-02-2021

Czy wiecie że nazwa Pascal wzięła się od nazwiska znanego matematyka Blaisa Pascala?


RE: Pascal jak ogarnąć - satox - 10-02-2021

(10-02-2021, 8:28 )jozekkg napisał(a):  Jeruka, zajrzałem na ten program.
Jak go uruchomisz, to nie robi kompletnie nic. Żadnego komunikatu co się dzieje, co masz zrobić.
Ładnie by było uzupełnić go o jakieś komunikaty, np. Write('Podaj liczbę a= ');Readln(a); itd.
Wyniki możesz opisać w ten sposób
writeln('a*b*c*d*f*g*h= ',a*b*c*d*f*g*h);

Nie chcę jednak zaśmiecać forum takimi rzeczami. Może lepiej było by to pisać na priva, albo jeszcze gdzie indziej.


Poprawię  jeszcze dziś.

Dziękuję za uwagę.


RE: Pascal jak ogarnąć - satox - 10-02-2021

(10-02-2021, 8:51 )bonaparte napisał(a):  Czy wiecie że nazwa Pascal wzięła się od nazwiska znanego matematyka Blaisa Pascala?

Wiem  bo miałem  wyjaśnione  to w kursie  programowania.


RE: Pascal jak ogarnąć - satox - 19-02-2021

https://github.com/JERUKA9/Fix-And-Improvments-Object-Pascal/blob/main/calc2.pas


RE: Pascal jak ogarnąć - jozekkg - 21-02-2021

program calc2;

var

a:integer;{Our values to read integer numbers}

b:integer;

const

V = 12;{Our const number}



begin

clrscr; // czyszczenie ekranu, bez tego wyświetlone będą niepotrzebne śmieci.

write('Podaj liczbę całkowitą a= ');

{Wyświetli prośbę o podanie liczby a.bez tego na monitorze będzie migał sam kursor i nie będzie wiadomo o co chodzi.
Skolei naciśnięcie Enter spowoduje wczytanie jakiejś przypadkowej liczby znajdującej się w pamięci komputera,albo po prostu wywali błąd.}

readln(a);{Reading from keybord}

write('Podaj liczbę całkowitą b= '); // podobnie jak w przypadku liczby a.
readln(b);

writeln(a+b*V);{Multiply our values by const twelve}

writeln(a-b*V);

writeln(a/b*V);
{w tym przypadku wyświetli wymik w postaci wykładniczej czyli np. 6.2500000000E+00. Jest to nieczytelne.
proponuję a byś spróbował tak
writeln(a/b*V:8:3); czyli osiem cyfr, w tym trzy miejsca po przecinku.}



writeln(a*b*V);

writeln(a mod b*V);{Modulus give the rest of division}
{tutaj podobnie jak w przypadkudzielenia}

writeln(a div b*V);{Integer division}

{division,czyli dzielenie bez reszty, może tak być}

{Jeszcze jedna uwaga. Program wyświetli cztery linijki jakichś liczb i za tydzień sam nie będziesz wiedział o co chodzi.
Proponuję wyświetlać wyniki z opisami. Np. w ten sposób: writeln('a div b*V= ',a div b*V);
Uzyskasz tedy wynik np. a div b*V= 26
Możesz taki wynik wyświetlić też tak: writeln('Dla a= ',a,' i b= ',b,' przy stałej V= ',v,' a div b*V= ',a div b*V:8:3};

Proponuję to poćwiczyć na zadaniu.
Spróbuj napisać program obliczający pole powierzchni bocznej oraz objętość graniastosłupa o zadanych wymiarach.
Jak dasz radę,to niech program oblicza też minimalną powierzchnię arkusza potrzebnego do wycięcia siatki takiego graniastosłupa.
Tutaj może być pomocne, jak sobie na kartce wyrysujesz przykładową siatkę.
Oczekuję, aby program wyświetlał wyniki w postaci

Dla wymiarów a=20, b=25, c=30, objętość graniastosłupa wynosi V=15000.
Dla wymiarów a=20, b=25, c=30, pow.boczna graniastosłupa wynosi S=3700.
Dla wymiarów a=20, b=25, c=30, pow.arkusza wynosi A=6300.
Oczywiście wartości liczb powinny odpowiadać tym, które wstawisz.






end.