Datoteka: 1. naloga
 

1. naloga

/*

      NALOGA 1, KOMPLET 55

 

Napišite program, ki bo izrisal naslednji lik, katerega dimenzije

vpišemo preko terminala: 

 

          *************************       -prva vrstica

          *         *   *         *

          *       *       *       *       -prvi blok

          *     *           *     *

          *************************       -srednja vrstica

           *    *           *    *

             *  *           *  *          -drugi blok

               **           **

                *************             -zadnja vrstica

*/

 

#include <iostream.h>

 

void izpisi(char, int );

 

int main()

{

      int dimenzija=0;

      int i;

 

      cout << endl << "Vpiçite dimenzijo lika: ";

      do

      {

            cin >> dimenzija;

            cout << endl << "NapaŸna vrednost. Vpiçite dimenzijo lika: ";

      }

      while (dimenzija < 1);

      dimenzija = dimenzija * 8 + 1;

 

      //izpis prve vrstice - polne

      cout << "\n\n\n\n\n";

      izpisi('*',dimenzija);

      cout << endl;

 

      //risanje prvega bloka

      for (i = 2;i <= ((dimenzija - 1) / 4);i += 2)

      {

            cout << "*";

            izpisi(' ',(dimenzija - 3) / 2 - i);

            cout << "*";

            izpisi (' ',(2*i - 1));

            cout << "*";

            izpisi(' ',(dimenzija - 3) / 2 - i);

            cout << "*";

            cout << endl;

      }

 

      //risanje srednje vrstice

      izpisi('*',dimenzija);

      cout << endl;

 

      //risanje drugega bloka

      for (i = 1;i <= ((dimenzija - 1) / 4);i += 2)

      {

            izpisi(' ',i);

            cout << "*";

            izpisi(' ',((dimenzija - 1) / 4 - (i + 1)));

            cout << "*";

            izpisi(' ',(dimenzija - 1) / 2 - 1);

            cout << "*";

            izpisi(' ',((dimenzija - 1) / 4 - (i + 1)));

            cout << "*";

            cout<< endl;

 

      }

 

      //risanje zadnje vrstice

      izpisi(' ',i - 1);

      izpisi('*',(dimenzija - 1) / 2 + 1);

      cout << endl << endl << endl;

      return 0;

}

 

void izpisi(char znak, int kolikokrat)

{

      int i;

      for (i = 1;i <= kolikokrat;i++)

            cout << znak;

}

Avtor:


V kolikor želite sodelovati z nami, vas vljudno vabimo, da se nam pridružite, pošljete članke, ali pa samo izrazite vaša mnenja.