Pascal zliczanie klocków w piramidzie

Wszystko co dotyczy tworzenia i optymalizacji stron internetowych oraz programowania
mir

Stały bywalec
Posty: 617
Rejestracja: 01 kwie 2009, 15:23

Pascal zliczanie klocków w piramidzie

Post16 paź 2011, 17:04

s:= 0 to po prostu inicjalizacja zmiennej -> nadanie jej wartości jakiej tam chcesz (byle liczy całkowitej- typ integer)
Musi być w tym wypadku równe 0 bo do początkowej wartości cały czas stopniowo dodajesz kolejne poziomy piramidy.
Zauważ, że (mówię to z doświadczenia w C++ czy Pascal zeruje na początku wartości to nie jestem pewien-sądzę że nie) samo zadeklarowanie zmiennej(var i:integer) tworzy zmienną całkowitą o nieznanej wartości. Może tam być wszystko dlatego daliśmy na początku zero - bo co gdyby do sumy trafiła jakaś ogromna liczba, a może ujemna?
Nie ma recepty gdzie trzeba wstawiać, sama musisz ocenić gdzie to jest potrzebne, a gdzie nie.
Można by to zrobić na while lub repeat, tyle że sama musisz się troszczyć o inkrementację i.
'i' to po prostu zmienna typu integer - mechanizmy pętli for automatycznie co każdy obrót ją inkrementują( zwiększają o 1)
startuje to od 1 (for i:=1 ) aż do 10 (to 10) to co się wykonuje (do) wykona się 10 razy.
W pętlach zwyczajowo stosuje się nazwę i. co nie znaczy że nie może być for q:=5 to 10000 do write(q);
np. z pętlą while

program p1;
var
i,s: integer;
begin
i:=1;
s:=0;
while(i <= 10) do
begin
s:=s+(10-i+1);
i := i + 1; //inkrementacja, gdyby nie to pętla była by wieczna bowiem zawsze miałaby i < niż 10
end;
end.

anula943

Użytkownik
Posty: 10
Rejestracja: 15 paź 2011, 21:38

Pascal zliczanie klocków w piramidzie

Post17 paź 2011, 10:57

Dziękuje Ci bardzo jak i poprzedniej osobie ;* Mam z pascala sprawdzian jutro i nie wiem jak to napisze ;(

-- 17 paź 2011, 10:57 ---

A może mi ktoś wytłumaczyc te pętle repeat i while?? Bardzo proszę <prosi> ;) :oops: :oops: :oops: :oops:

mir

Stały bywalec
Posty: 617
Rejestracja: 01 kwie 2009, 15:23

Pascal zliczanie klocków w piramidzie

Post19 paź 2011, 15:03

while znaczy dopóki, zgodzisz się prawda?
zatem:
program p1;
var
begin
n:=1;
n:integer;
while n <= 10 do
begin
writeln(n);
n:=n+1;
end;
end.
pętla wykona się dokładnie 10razy, przeanalizuj działanie i zobacz, pokombinuj z warunkiem, a w mig pojmiesz zasadę działania.
podobnie działa pętla repeat - zauważ że nie zależnie od warunku wykona się CO NAJMNIEJ RAZ, bo:

repeat //mozemy powiedziec ze zawiera w sobie begin dla tej petli
//jakies intrukcje

until // tutaj zasada jest nieco inna, spróbują się z tym zapoznać. Pamiętaj, że musisz zadbać aby pętla nie była wieczna



  • Reklama

Wróć do „Webmastering i programowanie”



Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości