|
Serwis Edukacyjny w I-LO w Tarnowie
Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor artykułu: mgr Jerzy Wałaszek |
©2026 mgr Jerzy Wałaszek
|
ProblemW przedziale całkowitym |
W wielu algorytmach musimy wygenerować liczby parzyste z zadanego
przedziału
Parzystość a sprawdzimy badając resztę z dzielenia a przez 2. Jeśli reszta jest zerowa, to a jest liczbą parzystą. Jeśli a nie jest liczbą parzystą, to:
Z powyższego wnioskujemy, iż pierwszą liczbę parzystą w przedziale
całkowitym
i =
a
Jeśli reszta z dzielenia
a przez 2 jest różna od 0, to
Następna liczba parzysta jest zawsze o 2 większa. Podsumowując
otrzymujemy następujący, prosty algorytm generacji liczb parzystych w przedziale całkowitym
K01: i ← a ; obliczamy pierwszą liczbę parzystą K02: Jeśli a mod 2 ≠ 0, to i ← i+1 K03: Dopóki i ≤ b: ; generujemy liczby parzyste w przedziale <a, b> wykonuj kroki K04…K05 K04: Pisz i ; wyprowadzamy liczbę parzystą K05: i ← i+2 ; następna liczba parzysta K06: Zakończ
|
Uwaga:
Zanim uruchomisz program, przeczytaj wstęp do tego artykułu, w którym wyjaśniamy funkcje tych programów oraz sposób korzystania z nich. |
| Program spodziewa się w pierwszym wierszu liczb a i b. W kolejnych wierszach wyświetla liczby parzyste zawarte w przedziale <a, b>. |
Pascal// Liczby parzyste
// Data: 11.03.2008
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
program prg;
var a, b, i : longint;
begin
readln(a, b);
i := a;
if(a mod 2 <> 0) then
inc(i);
while(i <= b) do
begin
write(i, ' ');
inc(i, 2);
end;
writeln;
end. |
// Liczby parzyste
// Data: 11.03.2008
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
#include <iostream>
using namespace std;
int main()
{
int a, b, i;
cin >> a >> b;
i = a;
if(a%2) i++;
while(i <= b)
{
cout << i << " ";
i += 2;
}
cout << endl;
return 0;
} |
Basic' Liczby parzyste ' Data: 11.03.2008 ' (C)2020 mgr Jerzy Wałaszek '---------------------------- Dim As Integer a, b, i Input a, b i = a If a Mod 2 Then _ i += 1 While i <= b Print i;" "; i += 2 Wend Print End |
Python (dodatek)# Liczby parzyste
# Data: 01.02.2023
# (C)2023 mgr Jerzy Wałaszek
#----------------------------
a = int(input("a = "))
b = int(input("b = "))
i = a+a%2
while i <= b:
print(i, end=" ")
i += 2
print()
|
| Wynik: |
-3 15 -2 0 2 4 6 8 10 12 14 |
Liczby nieparzyste generujemy w identyczny sposób: wyznaczamy pierwszą liczbę
nieparzystą w przedziale
Poniższy program czyta krańce przedziału
|
Uwaga: Zanim uruchomisz program, przeczytaj wstęp do tego artykułu, w którym wyjaśniamy funkcje tych programów oraz sposób korzystania z nich. |
| Program spodziewa się w pierwszym wierszu liczb a i b. |
Pascal// Liczby nieparzyste
// Data: 11.03.2008
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
program prg;
var a, b, i : longint;
begin
readln(a, b);
i := a;
if(a mod 2 = 0) then
inc(i);
while(i <= b) do
begin
write(i, ' ');
inc(i, 2);
end;
writeln;
end. |
// Liczby nieparzyste
// Data: 11.03.2008
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
#include <iostream>
using namespace std;
int main()
{
int a, b, i;
cin >> a >> b;
i = a;
if(!(a%2)) i++;
while(i <= b)
{
cout << i << " ";
i += 2;
}
cout << endl;
return 0;
} |
Basic' Liczby nieparzyste ' Data: 11.03.2008 ' (C)2020 mgr Jerzy Wałaszek '---------------------------- Dim As Integer a, b, i Input a, b i = a If a Mod 2 = 0 Then _ i += 1 While i <= b Print i;" "; i += 2 Wend Print End |
Python (dodatek)# Liczby nieparzyste
# Data: 01.02.2023
# (C)2023 mgr Jerzy Wałaszek
#----------------------------
a = int(input("a = "))
b = int(input("b = "))
i = a+1-(a%2)
while i <= b:
print(i, end=" ")
i += 2
print()
|
| Wynik: |
-10 10 -9 -7 -5 -3 -1 1 3 5 7 9 |
![]() |
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2026 mgr Jerzy Wałaszek |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email:
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.