Miten saisin tietyn kuvion C++:ssa?

Pitäisi saada tietty kuvio tulostettua tällä ohjelmalla,tai tarkemmin sanottuna laatikko, eli tähtimerkillä tehdään laatikko eli tulostetaan tähtimerkeillä neliö.
Tässä on koodini, joka toimii muuten, mutta en saa tulostettua sillä tuota oikeaa reunaa,siitä jää puuttumaan osa merkeistä. Missähän on vika? Voisikohan joku neuvoa minua?

#include

void main()
{
char merkki;

int vaaka,pysty;
int j,i;

   printf("Tehdään ohjelma, joka tulostaa tähdillä (*) tietyn kokoisen laatikon
");
   printf("Anna tähtimerkki (*)
");
   scanf("%c",&merkki);

   printf("Anna laatikolle leveys lukuna: 3-10
");
   scanf("%d",&vaaka);

   printf("Anna laatikon korkeus lukuna 3- 10
");
   scanf("%d",&pysty);
   {
   for (j=1;j=3 && vaaka
3553
Äänestä

Muut lukivat myös

Vastaukset 3

Vanhimmat

Jos merkin täytyy olla tähtimerkki, alusta se suoraan tähtimerkillä.

Muutoin en ottanut oikein selkoa tuosta ratkaisustasi niin tein uuden :)

'putchar' tulostaa yhden merkin niinkuin nimikin jo sanoo. Käytännössä se tekee saman kuin printf("%c", merkki), mutta printf on merkkijonon muotoilufunktio, ja turhan "hieno" yhden merkin tulostamiseen.

#include

void main()
{
char merkki='*';
int vaaka,pysty;
int j,i;

printf("Anna laatikolle leveys lukuna: ");
scanf("%d",&vaaka);

printf("Anna laatikon korkeus lukuna: ");
scanf("%d",&pysty);

for(j=1;j

Äänestä
  • ja tuo alin putchar on tietysti rivinvaihto eli keno ja n

    Äänestä

  • keijo kirjoitti:

    ja tuo alin putchar on tietysti rivinvaihto eli keno ja n

    Sain apua neuvoistasi. Olen nyt saanut ohjelmani toimimaan, vaikkakin siihen kului aikaa tosi kauan.

    Äänestä

Kommentoi aloitusta


ongelma kirjoitti:

Pitäisi saada tietty kuvio tulostettua tällä ohjelmalla,tai tarkemmin sanottuna laatikko, eli tähtimerkillä tehdään laatikko eli tulostetaan tähtimerkeillä neliö.
Tässä on koodini, joka toimii muuten, mutta en saa tulostettua sillä tuota oikeaa reunaa,siitä jää puuttumaan osa merkeistä. Missähän on vika? Voisikohan joku neuvoa minua?

#include

void main()
{
char merkki;

int vaaka,pysty;
int j,i;

   printf("Tehdään ohjelma, joka tulostaa tähdillä (*) tietyn kokoisen laatikon
");
   printf("Anna tähtimerkki (*)
");
   scanf("%c",&merkki);

   printf("Anna laatikolle leveys lukuna: 3-10
");
   scanf("%d",&vaaka);

   printf("Anna laatikon korkeus lukuna 3- 10
");
   scanf("%d",&pysty);
   {
   for (j=1;j=3 && vaaka

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu