Program w Pascalu - procedury
-
- Użytkownik
- Posty: 9
- Rejestracja: 10 lis 2006, o 01:01
- Płeć: Mężczyzna
- Lokalizacja: Śląsk(Bielsko-Biala)
- Podziękował: 3 razy
Program w Pascalu - procedury
Witam wszystkich;
Mam do napisania 5 zadan w pascalu oto one :
1. Napisac procedure wyznaczajaca elementy ciagu arytmetycznego (ma wyswietlac tyle
elementow ile chcesz).
2. Napisac procedure wyznaczajaca sume ciagu geometrycznego
3. Napisac procedure wyznaczajaca maksimum oraz jego pozycje, minimum oraz jego pozycje,
srednia arytmetyczna dla ciagu liczb zakonczonego 0. Uwaga, wartosc max oraz min ma byc wyznaczona
co do wartosci bezwzglednej
4. napisac procedure wyswietlajaca dzien tygodnia oraz miesiac, przyjac, ze dane te sa podane
jako liczby
5. napisac procedure sortowania trzech liczb od najwiekszej do najmniejszej
Czy jest ktos z obecnych tu na forum kto pomoglby mi w tych zadaniach
Dziekuje z gory i pozdrawiam.
Mam do napisania 5 zadan w pascalu oto one :
1. Napisac procedure wyznaczajaca elementy ciagu arytmetycznego (ma wyswietlac tyle
elementow ile chcesz).
2. Napisac procedure wyznaczajaca sume ciagu geometrycznego
3. Napisac procedure wyznaczajaca maksimum oraz jego pozycje, minimum oraz jego pozycje,
srednia arytmetyczna dla ciagu liczb zakonczonego 0. Uwaga, wartosc max oraz min ma byc wyznaczona
co do wartosci bezwzglednej
4. napisac procedure wyswietlajaca dzien tygodnia oraz miesiac, przyjac, ze dane te sa podane
jako liczby
5. napisac procedure sortowania trzech liczb od najwiekszej do najmniejszej
Czy jest ktos z obecnych tu na forum kto pomoglby mi w tych zadaniach
Dziekuje z gory i pozdrawiam.
- Sokół
- Użytkownik
- Posty: 451
- Rejestracja: 17 wrz 2006, o 19:22
- Płeć: Mężczyzna
- Lokalizacja: Zielona Góra
- Podziękował: 15 razy
- Pomógł: 55 razy
Program w Pascalu - procedury
ale podawane sa jako data? Np. na podstawie 10.11.2006 trzeba stwierdzic, ze to piatek a miesiac listopad? Czy np. podawane sa w formie 5 11, czyli piaty dzien tygodnia (liczac od poniedzialku, czyli piatek) i miesiac listopad?kleeex pisze:4. napisac procedure wyswietlajaca dzien tygodnia oraz miesiac, przyjac, ze dane te sa podane
jako liczby
co do piatego:
Kod: Zaznacz cały
program sortownik;
uses crt;
var a,b,c : integer;
begin
clrscr;
write('podaj liczbe a: ');
readln(a);
write('podaj liczbe b: ');
readln(b);
write('podaj liczbe c: ');
readln(c);
if a<=b then
begin
if c<=a then writeln('c= ',c,' a= ',a,' b= ',b) else
begin
if c>b then writeln('a= ',a,' b= ',b,' c= ',c) else writeln('a= ',a,' c= ',c,' b=' ,b);
end;
end else if c<=b then writeln('c= ',c,' b= ',b,' a= ',a) else
begin
if c>=a then writeln('b= ',b,' a= ',a,' c= ',c) else writeln('b= ',b,' c= ',c,' a=' ,a);
end;
readln();
end.
- ADAM1234
- Użytkownik
- Posty: 46
- Rejestracja: 19 wrz 2006, o 18:43
- Płeć: Mężczyzna
- Lokalizacja: BBa
- Podziękował: 8 razy
- Pomógł: 2 razy
Program w Pascalu - procedury
Zadanie pierwsze
Kod: Zaznacz cały
procedure arytm(a1: real; r:real; wyswietl_od,wyswietl_do: integer);
var tablica: array[1..100] of real;
i: integer;
begin
tablica[1] := a1;
{//--wpisywanie ciagu do tablicy}
for i := 2 to wyswietl_do do
begin
tablica[i] := a1 + r;
a1 := a1 + r;
end;
{//--wypisywanie}
writeln('Wypisuje te poszczegolne elementy ciagu: ');
for i := wyswietl_od to wyswietl_do do
writeln('element ',i:2,': ',tablica[i]:2:4);
end;
-
- Użytkownik
- Posty: 9
- Rejestracja: 10 lis 2006, o 01:01
- Płeć: Mężczyzna
- Lokalizacja: Śląsk(Bielsko-Biala)
- Podziękował: 3 razy
Program w Pascalu - procedury
@adam1234
Dzieki za zadanie, nie moge wymyslic jak wpisac w 2 zadaniu wzor na sume ciagu geometrycznego, moze wiesz ?
@Sokol
trzeba podac je w formie 5 11 , czyli piaty dzien tygodnia i miesiac listopad, ale jezeli bylbys w stanie pokazac mi tez ta pierwsza forme co napisales bylbym wdzieczny.
Pozdrawiam.
Dzieki za zadanie, nie moge wymyslic jak wpisac w 2 zadaniu wzor na sume ciagu geometrycznego, moze wiesz ?
@Sokol
trzeba podac je w formie 5 11 , czyli piaty dzien tygodnia i miesiac listopad, ale jezeli bylbys w stanie pokazac mi tez ta pierwsza forme co napisales bylbym wdzieczny.
Pozdrawiam.
- ADAM1234
- Użytkownik
- Posty: 46
- Rejestracja: 19 wrz 2006, o 18:43
- Płeć: Mężczyzna
- Lokalizacja: BBa
- Podziękował: 8 razy
- Pomógł: 2 razy
Program w Pascalu - procedury
robisz najpierw funkcję:
założenie: k należy to całkowitych dodatnich
Kod: Zaznacz cały
function pot(podstawa:real;wykladnik:integer):real;
var i:integer;
pom:real;
begin
pom:=1;
for i:=1 to wykladnik do
pom:=pom*podstawa;
pot := pom;
end;
Kod: Zaznacz cały
S := a1*(1-pot(q,k))/(1-q);
-
- Użytkownik
- Posty: 9
- Rejestracja: 10 lis 2006, o 01:01
- Płeć: Mężczyzna
- Lokalizacja: Śląsk(Bielsko-Biala)
- Podziękował: 3 razy
Program w Pascalu - procedury
@ADAM1234
Zrobilem sume ciagu arytmetycznego :
Ja juz jestem za stary na to wszystko
Zrobilem sume ciagu arytmetycznego :
mam zrobic sume ciagu geometrycznego, nie daje sobie z tym rady, ta funkcje od ciebie mam wstawic przed procedura ?program procedura;
begin
procedure Suma_aryt(a1,r:double;n:integer; var suma:double);
var
i:integer;
begin
suma:=0;
for i:= 1 to n do
suma:=suma+a1+(i-1)*r;
end;
var
w1,roznica:double;
ilosc:integer;
suma1:double;
begin
writeln('podaj pierwszy wyraz');
readln(w1);
writeln('podaj roznice wyrazow');
readln(roznica);
writeln('podaj ilosc wyrazow');
readln(ilosc);
writeln(suma1:6:2,roznica:6:2);
Suma_aryt(w1,roznica,ilosc,suma1);
writeln(suma1:6:2);
readln;
end.
Ja juz jestem za stary na to wszystko
- ADAM1234
- Użytkownik
- Posty: 46
- Rejestracja: 19 wrz 2006, o 18:43
- Płeć: Mężczyzna
- Lokalizacja: BBa
- Podziękował: 8 razy
- Pomógł: 2 razy
Program w Pascalu - procedury
Kod: Zaznacz cały
program liczy_sume_c_geometrycznego;
uses crt;
var podstawa,a1,q:real;
wykladnik,k:integer;
function pot(podstawa:real;wykladnik:integer):real;
var i:integer;
pom:real;
begin
pom:=1;
for i:=1 to wykladnik do
pom:=pom*podstawa;
pot := pom;
end;
procedure suma(a1: real; q:real; k:integer); { k - ile wyrazow sumy }
var S:real;
begin
S := a1*(1-pot(q,k))/(1-q);
writeln('suma ciagu geometrycznego',k:2,'-wyrazow dla:');
writeln('a1: ',a1:2:4);
writeln(' q: ',q:2:4);
writeln('Wynosi: ',S:2:4);
end;
BEGIN
clrscr;
suma(2,2,3);
repeat until KeyPressed;
END.
-
- Użytkownik
- Posty: 9
- Rejestracja: 10 lis 2006, o 01:01
- Płeć: Mężczyzna
- Lokalizacja: Śląsk(Bielsko-Biala)
- Podziękował: 3 razy
Program w Pascalu - procedury
@adam1234
napisalem juz kiedys wczesniej program ciag, gdzie wprowadzam x liczb, koncze go 0 i wyliczam maximum, jak przerobic go na procedure w zadaniu 3 ?
i jeszcze bym cie prosil o pomoc z tym sortowaniem, samo sortowanie wiem jak to zrobic, ale wpisac to do procedury nie kumam, wogole to do tej poru wiedzialem o co chodzi, jak zaczely sie procedury mam ciemno przed oczami, ciekawe co bedzie dalej.
Bardzo ci dziekuje za pomoc dotychczasowa i pozdrawiam.
napisalem juz kiedys wczesniej program ciag, gdzie wprowadzam x liczb, koncze go 0 i wyliczam maximum, jak przerobic go na procedure w zadaniu 3 ?
i jeszcze jedno pytanie do zadania 1 ktore podales, jak wywolac procedure w tym zadaniu ?program Ciag;
{$APPTYPE CONSOLE}
var
i,a,m,max:integer;
begin
i := 1;
max := 0;
repeat
writeln ('Podaj liczbe : ',i);
readln(a);
if a >= max then
begin
m := i;
max := a;
end;
i := i+1
until a=0;
writeln ('Maksymalna liczba to : ',max,' i jest na ',m,' miejscu.');
readln;
end.
i jeszcze bym cie prosil o pomoc z tym sortowaniem, samo sortowanie wiem jak to zrobic, ale wpisac to do procedury nie kumam, wogole to do tej poru wiedzialem o co chodzi, jak zaczely sie procedury mam ciemno przed oczami, ciekawe co bedzie dalej.
Bardzo ci dziekuje za pomoc dotychczasowa i pozdrawiam.
- ADAM1234
- Użytkownik
- Posty: 46
- Rejestracja: 19 wrz 2006, o 18:43
- Płeć: Mężczyzna
- Lokalizacja: BBa
- Podziękował: 8 razy
- Pomógł: 2 razy
Program w Pascalu - procedury
przykładowe wywołania procedury z zadania pierwszego:
cała reszta jutro(obiecuje) bo dziśjuż nie dam rady(szkoła)
===============================================================
[ Dodano: 13 Listopad 2006, 15:13 ]
[url=http://members.lycos.co.uk/serwermoj/SORT.PAS]ćwiczenie piąte[/url]
===============================================================
Kod: Zaznacz cały
arytm(1.5,2.5,1,18); {wyświetli wszystkie osiemnaście elementów}
arytm(1.5,2.5,4,17); {wyświetli (17-4) elementów od czwartego do ostatniego(17)}
===============================================================
[ Dodano: 13 Listopad 2006, 15:13 ]
[url=http://members.lycos.co.uk/serwermoj/SORT.PAS]ćwiczenie piąte[/url]
===============================================================
-
- Użytkownik
- Posty: 9
- Rejestracja: 10 lis 2006, o 01:01
- Płeć: Mężczyzna
- Lokalizacja: Śląsk(Bielsko-Biala)
- Podziękował: 3 razy
Program w Pascalu - procedury
@adam1234
Serdecznie ci dziekuje za pomoc, jak tak patrze na te zadania teraz, to po glebokim przeanalizowaniu stwierdzam ze nie sa one takie trudne, no ale zawsze tak jest w takich sytuacjach, zastanawiam sie jak mam do tego wszystkiego podejsc, zeby sie tak nauczyc myslec w tym programowaniu zebym mogl sam na to wpasc ze dane zadanie ma byc tak napisane (szukam i szukam i nie moge znalezsc rozwiazania), a pewno w sobote dostane nastepne 5 zadan i co wtedy ? ??:
Pozdrawiam serdecznie .
Ps.Moge prosic o pomoc gdy bede mial znow problem z jakims zadaniem ?
Dzieki twojej pomocy sklecilem cos takiego :
Serdecznie ci dziekuje za pomoc, jak tak patrze na te zadania teraz, to po glebokim przeanalizowaniu stwierdzam ze nie sa one takie trudne, no ale zawsze tak jest w takich sytuacjach, zastanawiam sie jak mam do tego wszystkiego podejsc, zeby sie tak nauczyc myslec w tym programowaniu zebym mogl sam na to wpasc ze dane zadanie ma byc tak napisane (szukam i szukam i nie moge znalezsc rozwiazania), a pewno w sobote dostane nastepne 5 zadan i co wtedy ? ??:
Pozdrawiam serdecznie .
Ps.Moge prosic o pomoc gdy bede mial znow problem z jakims zadaniem ?
Dzieki twojej pomocy sklecilem cos takiego :
I DZIALA !!!!!!!!program suma_ciagu_geometrycznego;
function potega(a:real;n:integer):real;
var i:integer;
x:real;
begin
x:=1;
for i:=1 to n do
x:=x*a;
potega := x;
end;
procedure suma(a1,q:real; k:integer; var suma:double); // k - ile wyrazow sumy
var
i:integer;
begin
for i := 1 to k do
suma :=a1*(1-potega(q,k))/(1-q);
end;
var
ilosc:integer;
w1,iloczyn:real;
suma1:double;
begin
writeln('podaj 1 wyraz : ');
readln(w1);
writeln('podaj ilosc wyrazow ');
readln(ilosc);
writeln('podaj iloczyn wyrazow ');
readln(iloczyn);
suma(w1,iloczyn,ilosc,suma1);
writeln('suma ciagu geometrycznego',ilosc:2,' wyrazow dla:');
writeln;
writeln(' w1: ',w1:4:2);
writeln(' iloczyn: ',iloczyn:4:2);
writeln;
writeln('Wynosi: ',suma1:4:2);
readln;
end.