Mam problem z tym kodem który wyświetla mi kwadrat z gwiazdek z wypełnieniem a chciał bym sam kontur
#include
using namespace std;
int main()
{
int a;
cout << "Wprowadz bok kwadratu ";
cin >> a;
for (int i=1;a>=i;i++)
{
for (int j=1;a>=j;j++)
{
if(j==1 || j==a) cout << "*";
else cout << " ";
}
cout <<"\n";
}
return 0;
}
drobok
(Drobok)
#2
Mieszasz pojęcia, brak ci górnej i dolnej linii. Musisz dodać do tego if
i==1 || i==a
(bowiem nie sprawdzasz którą linię rysujesz)
WOJEK64
(Wojtekbogocki)
#3
Jak chcesz to sobie jeszcze przeanalizuj to:
#include
int main(void)
{
int sideX, sideY;
printf("Side X: ");
scanf("%i", &sideX);
printf("Side Y: ");
scanf("%i", &sideY);
int i = 0;
for(; i < sideX; ++i)
putchar('#');
putchar('\n');
i = 0;
for(; i < (sideY - 2); ++i)
{
putchar('#');
int j = 0;
for(; j < (sideX - 2); ++j)
putchar(' ');
printf("#\n");
}
i = 0;
for(; i < sideX; ++i)
putchar('#');
fflush(stdin);
getchar();
return 0;
}
a w którym miejscu wstawić ten warunek zmiennej i?
drobok
(Drobok)
#5
W tym if (masz go dołożyć do tego co już masz). Jednak metoda poprzednika jest bardziej optymalna, bowiem nie musisz nic sprawdzać.
Czyli tak? tylko dalej jest pełny
if(j==1 || j==a && i==1 || i==a)
drobok
(Drobok)
#7
|| zamiast &&
On jest pusty a nie pełny …
Wstawiłem potoki zamiast ampersantów ale to nic nie dało