Wątek przeniesiony 2015-01-09 15:53 z C/C++ przez ŁF.

Wyświetlenie komunikatu w petli tylko raz?

0

Mam takie pytanie: czy da sie zrobic tak, ze w petli for ktora wykona sie nie wiadomo ile razy (decyduje o tym uzytkownik) wyswietlac komunikat tylko raz? Przykladowo:

 #include <iostream>

using namespace std;

int main()
{
	int a;
	cin >> a;
	
	for (int i=0; i<a; i++)
	{
		if(jakis warunek)
			cout << costam;
	}
	
	return 0;
}

I chodzi mi o to ze jesli powiedzmy w drugim przebiegu petli warunek zostanie spelniony to zeby w 4,5,6 przebiegu itd az do konca jesli znowu sie spelni to zeby ten cout nie zadzialal

2
 #include <iostream>
 
using namespace std;
 
int main()
{
    int a;
    cin >> a;
   bool visible=true;
    for (int i=0; i<a; i++)
    {
        if(visible){
            cout << costam;
      visible=false;}

    }
 
    return 0;
} 
0

Dzieki wielkie ;D tak wlasnie przed chwila pomyslalem ze typ boolowski by tu pasowal

0

wiem, że to nieoptymalne rozwiązanie, ale ja bym dodał drugą zmienną boolean, która kontrolowała by czy napis był już wyświetlony

0

A ja bym nie kombinował tylko dał tam break ;]

0

Może tak:

#include <iostream>
using namespace std;

int main()
  {
   int a;
   cin>>a;
   for(int i=0;i<a;++i)
     {
      if(!i) cout<<"costam";
     }
   return 0;
  }

Wersja specjalnie dla ... którym trzeba wszystko rozrzuć:

#include <iostream>
using namespace std;

int main()
  {
   int a;
   cin>>a;
   for(int i=0,k=0;i<a;++i)
     {
      if((jakiś_warunek)&&(!(k++))) cout<<"costam";
     }
   return 0;
  }

1 użytkowników online, w tym zalogowanych: 0, gości: 1