• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Ogarnięcie Pętli v2(for)

Object Storage Arubacloud
0 głosów
323 wizyt
pytanie zadane 16 listopada 2016 w C i C++ przez Apper97 Obywatel (1,380 p.)

Witam. Wczoraj miałem podobny problem. Nie wiem, czy to ze mną jest coś nie tak, czy o co chodzi, ale nie dam rady ogarnąc tych(dla wiekszości )banalnych zadań... aż wstyd!

Problem dotyczy tego, że muszę wykonać to polecenie "Napisz program ktory drujuke na ekranie wieżę z literek O"

tak wygląda mój "kod" a raczej porażka jakaś :D Nie potrafię tego ułożyć w sensowną całość, aby za pomocą 3,4 pętli wyszła mi ta wieża. z tego kodu wynika, że pisząc co chwile to samo dodaje tylko kolejne klocki... bez sensu.

#include <iostream>

using namespace std;

int i,j;

int main()
{
    for(int i=0; i<1; i++)
    {
        cout<<"O"<<endl;

    }

        for(int j=1; j<=2; j++)
        {
            cout<<"O";

        }
        cout<<endl;

        for(int i=2; i<=4; i++)
        {
            cout<<"O";
        }







    return 0;
}

 

4 odpowiedzi

+1 głos
odpowiedź 16 listopada 2016 przez niezalogowany
edycja 30 sierpnia 2017
 
Najlepsza

Zauważ, że Twoje elementy się powtarzają. Możesz zrobić pętle w pętli:

#include <iostream>

using namespace std;

int main()
{
    // Krok 1
    for(int i=0; i<1; i++)
    {
        cout<<"O";
    }
    cout<<endl;

    // Krok 2
    for(int i=0; i<2; i++) // To sie powtarza
    {
        cout<<"O";
    }
    cout<<endl;


    // Krok 3
    for(int i=0; i<3; i++) // tu też 
    {
        cout<<"O";
    }
    cout<<endl;
    
    //Kroki sie powtarzaja, a jedyne co sie zmienia to wartosc przy "i<" 

    cout<<endl;

    for(int wiersz=0; wiersz<=3; wiersz++)
    {
        for(int i=0; i<wiersz; i++)
        {
            cout<<"O";
        }
        cout<<endl;
    }
    return 0;
}
+1 głos
odpowiedź 16 listopada 2016 przez Knayder Nałogowiec (37,640 p.)
Wczoraj ładnie ci to opisałem, jeżeli masz ponownie podobny problem, to dlaczego nie wrócisz do tamtego tematu?
0 głosów
odpowiedź 16 listopada 2016 przez mbabane Szeryf (79,280 p.)

wszystko zalezy od tego jak ta wieza ma wygladac, jesli tak:

O
OO
OOO
OOOO
OOOOO
OOOOOO
OOOOOOO

To sprawa jest bardzo prosta, odpowiednia ilosc petli (idac Twoim tokiem myslenia) i przed kazda przejscie do nowego wiersza, ale wystarczy przysiasc i pomyslec troche, a wlasciwie ogarnac jak dziala petla for bo zdaje sie ze z tym masz problem.

https://www.youtube.com/watch?v=y6GOYVTVvqo&list=PLOYHgt8dIdoxx0Y5wzs7CFpmBzb40PaDo&index=4

Nie ogladalem tego, ale pewnie wytlumaczyl to lopatologicznie jak zawsze

komentarz 16 listopada 2016 przez Apper97 Obywatel (1,380 p.)
Wytlumaczył dośc jasno, tylko, że w tym przypadku będzie pętla w pętli, a ja sobie z tym nie radze
komentarz 16 listopada 2016 przez mbabane Szeryf (79,280 p.)

to proste! Zasada jest taka ze wewnetrzna petla (jako calosc) wykonuje sie tyle razy ile zewnetrzna przyklad:

for (int i = 0; i < 3; i++)
{
     cout<<"i: "<<i<<endl; //wypisuje i   
     for (int j = 0; j < 3; j++)
     {     
       cout<<"j: "<<j<<endl; //wypisuje j
     }
     cout<<endl;
}

wynik:
i: 0
j: 0
j: 1
j: 2

i: 1
j: 0
j: 1
j: 2

i: 2
j: 0
j: 1
j: 2 

 

0 głosów
odpowiedź 17 listopada 2016 przez Przemysław Obywatel (1,510 p.)

Jeśli masz problem ze zrozumieniem o co chodzi w "pętli w pętli", przeanalizuj tej przykład:


 

#include <iostream>
 
using namespace std;
 
int main()
{
	for(int miesiac=1; miesiac<=12; miesiac++)
	{
		for(int dzien=1; dzien<=31; dzien++)
		{
			cout << "miesiac: " << miesiac << " dzien: " << dzien;
		}
	}
	 

	return 0;
}

 

Podobne pytania

0 głosów
2 odpowiedzi 144 wizyt
pytanie zadane 5 lutego 2016 w C i C++ przez Jonki Dyskutant (8,180 p.)
0 głosów
1 odpowiedź 300 wizyt
0 głosów
1 odpowiedź 289 wizyt

92,555 zapytań

141,403 odpowiedzi

319,560 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...