Drukowanie wzoru - co robie zle?

0

Witam,
Czy ktos moze pomoc mi zrozumiec co mi ucieka?

Napisz program, który używa tylko następujących terminów do drukowania

cout << "*";
cout << " ";
cout << endl;

aby utworzyć poniższy wzór (tylko gwiazdki)
UWAGA! Musisz użyć jakiegoś stwierdzenia powtórzenia.
Pomocne mogą tu być operatory Division i Modulo, a także zagnieżdżona struktura powtórzeń.

££££££££
££££££££
££££££££
££££££££
££££££££
££££££££
££££££££
££££££££
#include <iostream>
#include <cstdlib>
using namespace std;

int main()
{
   int i = 0;
   for ( int i = 0; i <= 64; i++) cout << "£ ";
   if (i = 8) cout << '\n';
   
}
0

Nie rozumiem polecenia. Jak chcesz narysować znak £ za pomocą gwiazdek?

0

Przepraszam, chcialem podmienic gwiazdki na £ bo w tresci nie ukazywaly sie gwiazdki.

cout << "£";
cout << " ";
cout << endl;
1

stwierdzenia powtórzenia
.......czy autor miał na myśli pętlę? :​|

Twój kod nie ma sensu, przede wszystkim: używaj pętli z klamrami - zawsze.

if(x = 8) to przypisanie, a nie porównanie. Porównanie jest z ==.

0
if (i = 8)

to nie jest porownanie a ustawienie wartosci (zobacz ze masz jeden znak rownosci

a nie prosciej Ci bedzie zrobic to na dwoch petlach?

for(int height = 0; height < 8; height++)
{
  for(int width = 0; width < 8; width++)
  {
    cout << "*";
  }
  cout << endl;
}

zamieniasz 8 na jakas zmienna oraz * na zmienna i mozesz generowac jaki prostokat chcesz ze znakiem jakim chcesz

0

Dziękuję Ci. Jak mogę wyświetlać znaki po 8 w rzędzie?

int main()
{
   for ( int i = 0; i <= 64; i++) 
   {
       cout << "£ ";
       if (i == 8) 
       {
           cout << '\n';
       }
   }
   
}
0

zrob sobie druga petle jak Ci pokazalem

albo zamist 8 miej operator modulo z 8 i sprawdzaj czy wynikiem jest zero

0

Dziękuję Ci bardzo.
Czy możesz mi jeszcze powiedzieć, co powinienem zrobić, aby co druga linia była z wcięciem(-)?

& & & & & & & &
-& & & & & & & &
& & & & & & & &
-& & & & & & & &
& & & & & & & &
-& & & & & & & &
& & & & & & & &
-& & & & & & & &
0

bez kodu srednio.

jezeli robisz na jednej petli to modulu z 8*2 a jezeli na drugiej petli to sprawdzaj czy modulo 2 z iteracji == 0 wtedy wyswietl po prostu znak -

0

Chyba nie rozumiem zbyt wiele ... czy powinienem użyć tutaj modulo?

int main()
{
    for(int height = 0; height < 8; height++)
    {
        for(int width = 0; width < 8; width++)
        {
            cout << "* ";
          
        }
        cout << endl;
        
    }
 
}
0

pzred druga petla

if (height % 2 == 0) cout << "-";

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