Da się zrobić prosciej? -Rysunek

0

Da się narysować taką figurę prościej?
http://www.filedropper.com/rysunek

Kod:


#include<stdio.h>
#define WYM 10

int main()
{
    int i,j,k;

    for(i=0;i<=WYM+1;i++) printf("*");
    printf("\n");

    for(i=0;i<WYM;i++)
    {
        printf("*");

        for(j=0;j<i;j++) printf(" ");

        printf("*");

        for(k=0;k<=WYM-j-2;k++) printf(" ");

        printf("*\n");

    }

    for(i=0;i<=WYM+1;i++) printf("*");

    printf("\n\n\n");

    system("Pause");
    return 0;
0

Na pewno dało się rysunek prościej wstawić, w dodatku ludziom by się go prościej ściągało ;)

#include <stdio.h>
#define SIZE 12

int main() 
{
    int i, j;
    for (i = 0; i <= SIZE; ++i)
    {
        for (j = 0; j <= SIZE; ++j)
        {
            if (i == 0 || i == SIZE || j == 0 || j == SIZE || i == j)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }

    return 0;
}
0

Nie umiałem włąśnie inaczej :(

Dzięki za zadanie :D
Nie wpadłem na to!

1
#include <stdio.h>
#define SIZE 12

int main()
{
  for (int i = 0; i < SIZE; ++i)
    printf("*"); printf("\n");

  for (int i = 1; i < SIZE - 1; ++i)
    printf("*%*c%*c\n", i, '*', SIZE - i - 1, '*');

  for (int i = 0; i < SIZE; ++i)
    printf("*"); printf("\n");

  return 0;
}
1

I tak przyjdzie @_13th_Dragon albo ktoś inny i napisze ten program w 3 linijkach :)

1

@RewAnd, teoretycznie da się ale ze szkodą dla czytelności:

#include <stdio.h>
#define SIZE 12

int main() 
  {
   int y,x;
   for(y=0;y<=SIZE;++y,printf("\n")) for(x=0;x<=SIZE;++x) putchar(" *"[!((y)&&(SIZE-y)&&(x)&&(SIZE-x)&&(y-x))]);
   return 0;
  }

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