UGNJEŽDENE PETLJE U JEZIKU C
Petlje ili ciklusi su naredbe čija je uloga da neku, ili više drugih naredbi ponavljaju određen broj puta. Te naredbe koje se ponavljaju se pišu u telu for petlje. To može biti bilo koja druga naredba, pa samim tim i nova for naredba.
Posmatrajmo sada sledeći zadatak
Posmatrajmo sada sledeći zadatak
Primer 1: Ispisati prvih 100 prirodnih brojeva u 10 redova i 10 kolona.
Ovaj zadatak može da se uradi i bez ugnježdenih petlji. Vidi primer na Petlje u C/C++ primeri
Međutim, mi ćemo pokazati ovde kako se isti primer može uraditi upotrebom ugnježdenih petlji.
Međutim, mi ćemo pokazati ovde kako se isti primer može uraditi upotrebom ugnježdenih petlji.
Za ispisivanje jednog broja koristimo printf naredbu:
printf("%2d",broj);
u jeziku c++
cout << broj << " ";
Za ispisivanje jednog reda koristimo for petlju u kojoj ćemo kontrolnu promenljivu označiti slovom j i to će predstavljati i redni broj kolone matrice koju treba ispisati:
for(int j=1; j<10; j++)
{
printf("/n");
{
printf("%2d",broj);
}printf("/n");
U jeziku C++
for(int j=1; j<=10; j++)
{
cout << endl;
{
cout << broj << " ";
}cout << endl;
Ovo će ispisati 1 red. Ovo sada treba ponoviti 10 puta, za svaki red. Za to ćemo koristiti još jednu petlju, tako da prethodne naredbe budu u telu te petlje, tj između vitičastih zagrada. Kontrolna promenljiva spoljašnje petlje koju ćemo označiti sa i biće broj reda umanjena za 1, tako da se menja od 0 do 9.
Promenljiva broj treba da bude povezan kako sa j tako i sa i na sledeći način:
broj =10 * i + j;
Kada se ispisuje prvi red, i=0, pa se ispisuju brojevi koji samo zavise od tekuće kolone j, tako da se u 1. koloni ispisuje 1, u 2. koloni 2 itd.
U sledećem redu se ispisuju vrednosti koje su veće od vrednosti prethodnog reda za 1*10, tako da dobijemo redom 11,12,13,....
U svakom sledećem redu brojevi su za 10 veći nego u prethodnom.
Promenljiva broj treba da bude povezan kako sa j tako i sa i na sledeći način:
broj =10 * i + j;
Kada se ispisuje prvi red, i=0, pa se ispisuju brojevi koji samo zavise od tekuće kolone j, tako da se u 1. koloni ispisuje 1, u 2. koloni 2 itd.
U sledećem redu se ispisuju vrednosti koje su veće od vrednosti prethodnog reda za 1*10, tako da dobijemo redom 11,12,13,....
U svakom sledećem redu brojevi su za 10 veći nego u prethodnom.
int broj;
for(int i=0; i<10; i++)
{
for(int i=0; i<10; i++)
{
for(int j=1; j<=10; j++)
{
printf("/n");
}{
broj=10*i+j;
printf("%2d",broj);
}printf("%2d",broj);
printf("/n");
Ili u C++ programskom jeziku:
int broj;
for(int i=0; i<10; i++)
{
for(int i=0; i<10; i++)
{
for(int j=1; j<=10; j++)
{
cout << endl;
}{
broj=10*i+j;
cout << broj << " ";
}cout << broj << " ";
cout << endl;
Više primera iz ove oblasti možete naći na web strani: Ugnježdene petlje u C/C++ primeri
Sledeće
Nizovi u jeziku C >| |