[Algorytmy] Zlicz liczby parzyte
[Algorytmy] Zlicz liczby parzyte
Znaleźć ile spośród n kolejno wczytywanych liczb całkowitych jest liczb parzystych
Ostatnio zmieniony 23 paź 2011, o 14:18 przez Afish, łącznie zmieniany 1 raz.
Powód: Staraj się lepiej dobierać nazwy tematów, tak by wskazywały o czym jest treść zadania.
Powód: Staraj się lepiej dobierać nazwy tematów, tak by wskazywały o czym jest treść zadania.
-
- Użytkownik
- Posty: 1272
- Rejestracja: 8 sty 2011, o 18:18
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 295 razy
- Pomógł: 115 razy
[Algorytmy] Zlicz liczby parzyte
ale z czym masz problem? w pętli wczytujesz te liczby i w zależności od tego czy dana wczytywana liczba jest parzysta, czy też nie, zwiększasz, bądź nie, licznik liczb parzystych który na samym początku ustawiasz na zero.. a sprawdzenie czy liczba jest parzysta, czy nie, ogranicza się do sprawdzenia jej reszty z dzielenia przez dwa..-- 23 paź 2011, o 12:36 --napisałem w Pascalu, bo jest najbliższy pseudokodowi, więc nie powinieneś mieć żadnych problemów z przerobieniem na schemat blokowy, czy co tam chcesz:
o to chodziło?
Kod: Zaznacz cały
program PARZYSTE;
var n,i,a,licznik:integer;
begin
licznik:=0;
readln(n);
for i:=1 to n do begin
read(a);
if a mod 2 = 0 then licznik:=licznik+1;
end;
writeln(licznik);
end.
[Algorytmy] Zlicz liczby parzyte
Chodziło mi o schemat blokowy, ale postatram się to przekształcić. Dzięki. Jeszcze tylko co znaczy "var"?
-
- Użytkownik
- Posty: 1272
- Rejestracja: 8 sty 2011, o 18:18
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 295 razy
- Pomógł: 115 razy
[Algorytmy] Zlicz liczby parzyte
var to tylko efekt Pascala - zaznacza początek deklarowania zmiennych, czyli linijka:
to po prostu zainicjalizowanie zmiennych n, i, a, licznik, które są typu integer (całkowity).. schemat blokowy będzie bardziej czytelny bo nie trzeba się martwić o składnię konkretnego języka, tylko o efekt działania (zgodnie z przyjętymi ustaleniami schematu blokowego)..
reszta wydaje mi się, że jest intuicyjna..
powodzenia
Kod: Zaznacz cały
var n,i,a,licznik:integer;
reszta wydaje mi się, że jest intuicyjna..
powodzenia
-
- Użytkownik
- Posty: 1272
- Rejestracja: 8 sty 2011, o 18:18
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 295 razy
- Pomógł: 115 razy
[Algorytmy] Zlicz liczby parzyte
w sylu takim, jaki jest w Cormenie:
może być?
Kod: Zaznacz cały
czytaj(n)
licznik <- 0
for i <- 1 to n
do czytaj(a)
if a mod 2 = 0
then licznik <- licznik + 1
wypisz(licznik)
[Algorytmy] Zlicz liczby parzyte
Ok. Jeszcze tylko pytanie co rozumiesz przez licznik liczb parzystych?
-
- Użytkownik
- Posty: 1272
- Rejestracja: 8 sty 2011, o 18:18
- Płeć: Mężczyzna
- Lokalizacja: Warszawa
- Podziękował: 295 razy
- Pomógł: 115 razy
[Algorytmy] Zlicz liczby parzyte
licznik liczb parzystych przyjmuje wartość równą ilości liczb parzystych w i-tym kroku pętli.. naszym zadaniem jest odpowiedzenie na pytanie ile jest liczb parzystych wśród kolejno wczytanych n liczb całkowitych.. no to na początku(przed rozpoczęciem pętli for a więc przed wczytaniem jakiejkolwiek liczby) nie ma żadnej parzystej więc ustawiamy go na wartość zero.. no i teraz prześledźmy wczytywanie np takich danych:
wczytujemy n=5 a potem w pętli 5 kroków:
1. wczytyjemy 2.. sprawdzamy resztę z dzielenia.. ok jest równa 0, więc licznik powiększamy o 1 i jest równy 1..
2. wczytujemy 3.. reszta z dzielenia? równa jeden więc nie zwiększamy licznika..
3. wczytujemy 4.. reszta równa zero więc powiększamy licznik i jest równy dwa..
4. licznik równy 2..
5. licznik równy trzy..
wypisujemy licznik czyli liczbę 3.. zgadza się, tyle było liczb parzystych w wczytanych pięciu liczbach.. czyli działa.. jasne?
Kod: Zaznacz cały
5
2 3 4 1 6
1. wczytyjemy 2.. sprawdzamy resztę z dzielenia.. ok jest równa 0, więc licznik powiększamy o 1 i jest równy 1..
2. wczytujemy 3.. reszta z dzielenia? równa jeden więc nie zwiększamy licznika..
3. wczytujemy 4.. reszta równa zero więc powiększamy licznik i jest równy dwa..
4. licznik równy 2..
5. licznik równy trzy..
wypisujemy licznik czyli liczbę 3.. zgadza się, tyle było liczb parzystych w wczytanych pięciu liczbach.. czyli działa.. jasne?