|
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
|
ProblemNależy wygenerować n kolejnych wyrazów ciągu arytmetycznego. |
Wzór na i-ty wyraz ciągu arytmetycznego jest następujący:
ai = a1+(i-1)×d
K01: Dla i = 1, 2, …, n: wykonuj krok K02 K02: Pisz a = (i-1)×d K03: 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 odczytuje z jednego wiersza kolejno trzy liczby: n, a1 oraz d. Następnie wyświetla n kolejnych wyrazów ciągu arytmetycznego. |
Pascal// Ciąg arytmetyczny
// Data: 6.02.2011
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
program prg;
var n, i : integer;
a, d : double;
begin
readln(n, a, d);
for i := 1 to n do
write(a+(i-1)*d:9:3, ' ');
writeln;
end. |
// Ciąg arytmetyczny
// Data: 6.02.2011
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int n, i;
double a, d;
cout << fixed
<< setprecision(3);
cin >> n >> a >> d;
for(i = 1; i <= n; i++)
cout << setw(9)
<< a+(i-1)*d
<< " ";
cout << endl;
return 0;
} |
Basic' Ciąg arytmetyczny ' Data: 6.02.2011 ' (C)2020 mgr Jerzy Wałaszek '---------------------------- Dim As Integer n, i Dim As Double a, d Input n, a, d For i = 1 To n Print Using " #####.###";a+(i-1)*d; Next Print End |
Python (dodatek)# Ciąg arytmetyczny
# Data: 03.02.2024
# (C)2024 mgr Jerzy Wałaszek
# ----------------------------
arr = input().split()
n = int(arr[0])
a = float(arr[1])
d = float(arr[2])
for i in range(n):
print("%9.3f" % (a+i*d), end=" ")
print()
|
| Wynik: |
32 1 0.57
1.000 1.570 2.140 2.710 3.280 3.850 4.420 4.990
5.560 6.130 6.700 7.270 7.840 8.410 8.980 9.550
10.120 10.690 11.260 11.830 12.400 12.970 13.540 14.110
14.680 15.250 15.820 16.390 16.960 17.530 18.100 18.670
|
Jeśli generowany ciąg arytmetyczny ma wyrazy całkowite, to kolejne wyrazy możemy tworzyć rekurencyjnie, tzn. mając wyraz ai, następny otrzymujemy dodając do poprzedniego przyrost d. Korzyścią jest pozbycie się operacji mnożenia, zatem wyrazy będą generowane nieco szybciej. Metoda ta nie nadaje się dla ciągów rzeczywistych, ponieważ w wyniku dodawania mogą kumulować się błędy zaokrągleń.
K01: Dla i = 1, 2, …, n: wykonuj kroki K02…K03 K02: Pisz a ; wypisujemy bieżący wyraz K03: a ← a+d ; wyliczamy wyraz następny K04: 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 odczytuje z wiersza kolejno trzy liczby całkowite: n, a1 oraz d. Następnie wyświetla n kolejnych wyrazów ciągu arytmetycznego. |
Pascal// Całkowity ciąg arytmetyczny
// Data: 6.02.2011
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
program prg;
var n, i, a, d : integer;
begin
readln(n, a, d);
for i := 1 to n do
begin
write(a:7, ' ');
inc(a, d);
end;
writeln;
end. |
// Całkowity ciąg arytmetyczny
// Data: 6.02.2011
// (C)2020 mgr Jerzy Wałaszek
//----------------------------
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int n, i, a, d;
cin >> n >> a >> d;
for(i = 1; i <= n; i++)
{
cout << setw(7) << a << " ";
a += d;
}
cout << endl;
return 0;
} |
Basic' Całkowity ciąg arytmetyczny ' Data: 6.02.2011 ' (C)2020 mgr Jerzy Wałaszek '---------------------------- Dim As Integer n, i, a, d Input n, a, d For i = 1 To n Print Using " #######";a; a += d Next Print End |
Python (dodatek)# Całkowity ciąg arytmetyczny
# Data: 03.02.2024
# (C)2024 mgr Jerzy Wałaszek
# ----------------------------
arr = input().split()
n = int(arr[0])
a = int(arr[1])
d = int(arr[2])
for i in range(n):
print("%7d" % a, end=" ")
a += d
print()
|
| Wynik: |
20 2000 123
2000 2123 2246 2369 2492 2615 2738 2861 2984 3107
3230 3353 3476 3599 3722 3845 3968 4091 4214 4337
|
![]() |
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.