C++ -> PĘTLE ZAGNIEŻDŻONE
SPIS TREŚCI
Szkoła podstawowa
- Przykłady i zadania – str. 1
- Rozwiązania zadań – str. 2
Liceum i technikum
- Zadania – str. 3
- Rozwiązania zadań – str. 4
POZIOM 1 – SZKOŁA PODSTAWOWA
WSTĘP
Pętla zagnieżdżona to inaczej pętla umieszczona wewnątrz innej pętli. Pewnie zastanawiasz się do czego takie zagnieżdżenie może się przydać? Już wyjaśniam. W przyszłości przedstawione tutaj przykłady będziemy używać do zapisu/odczytu danych z tablic wielowymiarowych. Przykłady, której tutaj widzisz poprawią również twoje umiejętności związane z posługiwaniem się instrukcją warunkową. Postaraj się przerobić ten materiał dokładnie. Gwarantuję, że zaprocentuje to już niebawem i pozwoli ci pisać bardziej skomplikowane programy.
PRZYKŁADY
Przykład 1
Rozważmy następujący program. Co twoim zdaniem wyświetli się na ekranie?
#include <iostream>
using namespace std;
int main() {
for (int i=1;i<=2;i++)
{
for (int j=1;j<=4;j++)
{
cout << i <<' '<< j <<'\n';
}
}
return 0;
}
Pierwsza pętla for wykonuje się 2x. Pierwszy raz dla i=1 i drugi raz dla i=2.
W każdym obiegu pętla zagnieżdżona wykona się aż 4x. Dla j=1, j=2, j=3, j=4.
Jeżeli w pętli zagnieżdżonej umieścisz instrukcję cout, wykona się ona 8x. Dla i=1 4x i dla i=2 też 4x. Przemyśl to! Chciałbym abyś dokładnie zrozumiał o co tutaj chodzi, dlatego napisałem dla ciebie więcej przykładów.
Co wyświetli się na ekranie?
Odpowiedź
1 11 2
1 3
1 4
2 1
2 2
2 3
2 4
Przykład 2
[Platforma edukacyjna]
Przykład 3
[Platforma edukacyjna]
Przykład 4
[Platforma edukacyjna]
Przykład 5
[Platforma edukacyjna]
ZADANIA
Program ten ułatwi ci rozwiązanie zadań.
#include <iostream>
using namespace std;
int main() {
int r;
cout << "Podaj rozmiar: ";
cin >> r;
for (int wiersz=1;wiersz<=r;wiersz++)
{
for (int kolumna=1;kolumna<=r;kolumna++)
{
cout << "*";
}
cout << "\n";
}
return 0;
}
Wynik programu:
dla r=4
****
****
****
****
dla r=7
*******
*******
*******
*******
*******
*******
*******
Zadanie 1
Napisz program wyświetlający figurę z rysunku. Rozmiar figury podaje użytkownik. Może to być np. 4, 7 lub 15. Wysokość i szerokość figury zawsze jest sobie równa.
Aby troszkę ułatwić…
int r;cout << „Podaj rozmiar: „;
cin >> r;
for (int wiersz=1;wiersz<=r;wiersz++)
{
for (int kolumna=1;kolumna<=r;kolumna++)
{
if (wiersz%2==1)
cout << „*”;
else
cout << „.”;
}
cout << „\n”;
}
Zadanie 2
[Platforma edukacyjna]
Zadanie 3
[Platforma edukacyjna]
Zadanie 4
[Platforma edukacyjna]
Zadanie 5
[Platforma edukacyjna]