Wypisanie kolejnych wielokrotności liczby za pomocą pętli

0

Chciałem (hobbystycznie) napisać kod, który wypisywałby 10 kolejnych wielokrotności liczby 13. I utknąłem w miejscu
Pomysł miałem taki: za pomocą nieskończonej pętli whilę i warunku if wypisać kolejne wielokrotności 13. Co jednak zrobić , aby wypisywanie zatrzymać po 10 wielokrotnościach( pętla for i instrukcja break ?)


#include <iostream>

int main()
{

	int liczba = 1;

	while (true)

	{ if(liczba%13==0)
		std::cout << liczba;
		liczba++;

	}

    return 0;
}





Z góry dziękuję za pomoc.

5
liczba = 13
Dla i = 1, 2, 3, ..., n
   wyświetl liczba*i
5
for(int i=1;i<=10;++i) cout<<13*i<<endl;
for(int i=13;i<=130;i+=13) cout<<i<<endl;
4

Jest jak najbardziej możliwy, ale to sztuka dla sztuki, skoro masz pętlę for, która jest ładnym opakowaniem dla tego typu zastosowań while.

Ponadto jeśli chcesz wypisywać wielokrotności, to możesz dodawać liczbę, której wielokrotności chcesz wypisać, zamiast iterować po wszystkich liczbach.

0

@kq: Wielkie dzięki za pomoc. KQ Przepraszam za śmiałość. Wiem, że to nadużycie z mojej strony, ale czy mógłbyś w wolnej chwili napisać kod zgodnie moim „pomysłem” czyli nieskończona pętla while dająca ciąg liczb podzielnych przez 13 a następnie ograniczenie wyświetlanych liczb do 10 z rzędu. Może jeszcze się przyda dla kogoś innego rozwiązującego podobne zadania.
Nie jestem związany z informatyką, nie zamierzam zostać programista. Kod nie ma żadnego komercyjnego ani szkolnego/uczelnianego zastosowania poza satysfakcją że jednak coś udało mi się w sposób przekombinowany rozwiązać.
Pozdrawiam

4
crispia napisał(a):

czy mógłbyś w wolnej chwili napisać kod zgodnie moim „pomysłem” czyli nieskończona pętla while dająca ciąg liczb podzielnych przez 13 a następnie ograniczenie wyświetlanych liczb do 10 z rzędu

tylko że problem jest dokładni taki jak sam zauważyłeś na początku, czyli kiedy przerwać. A żeby wiedzieć kiedy przerwać i tak trzeba wprowadzić licznik i przerywać nieskończoną pętlę przy liczniku równym 10. BTW z tego wniosek że każdą sensowną pętlę z licznikiem można zamienić na bezsensowną nieskończoną z licznikiem:

int i = 1;
while (true) { 
  if (10 < i) break;
  std::cout << 13 * i << endl;
  ++i;
}
3

Jeżeli chcesz użyć pętli while to w taki sposób:

	int liczba {};
	while( ( liczba += 13 ) <= 13*10 ) std::cout << liczba << std::endl;

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