Sun Sunshine
Мастер
(1913)
4 года назад
нарисуй на бумаге в клеточку, что надо.
больше будет шансов, что напишут.
в таком виде - париться, высчитывать, где ставить пробелы, а где - буквы, вряд ли кто станет.
и что уже изучали, чтоб знать, на каком уровне должна быть прога, чтоб преподавателя инфаркт не настиг от твоего гениального решения.
leonid kurachЗнаток (293)
4 года назад
Изучали: функции, типы данных, do while. Тут надо реализовать так: вводишь елемент "а" и оно выдает тебе пустой восьмиугольник, а во втором вводишь "а, в, с" и выдает заполненный восьмиугольник. Только это сделать двумя разными кодами.
wwork ok
Профи
(537)
4 года назад
на мой нубский взгляд так, но наверняка можно оптимизировать.
ПУСТОЙ:
int side=8;//длина стороны, допустим 8
int space=2;//пробелы
int height=side+4;//высота
do
{ if(height>=side+2)//убывание пробелов в верхней части
space--;
else if(height<=2)//возрастание пробелов в нижней части
space++;
for(int fillRows=0;fillRows<side+3-space;++fillRows)//fillRows ряды
{ if(fillRows<=space||(fillRows>space+1&&fillRows<side+2-space&&space<1))//условие для пробелов
std::cout<<" ";
else
std::cout<<"*";//условие для звездочек
}
std::cout<<"\n";//ряд закончен
}
while(--height);
ПОЛНЫЙ
int side=8;
int space=2;
int height=side+4;
do
{ if(height>=side+2)
space--;
else if(height<=2)
space++;
for(int fillRows=0;fillRows<side+3-space;++fillRows)
{ if(fillRows<=space)
std::cout<<" ";
else
std::cout<<"*";}
std::cout<<"\n";}
while(--height);
Батаев Дмитрий
Просветленный
(22267)
4 года назад
#include iostream
using namespace std;
int main (void)
{
setlocale(LC_ALL,"rus");
string line [7]={" aaa "," a a ","a a","a a","a a"," a a "," aaa "};
int a=0;
do
{
cout<<line[a]<<endl;
a++;
}while (a<7);
system("pause");
return 0;
}
Батаев ДмитрийПросветленный (22267)
4 года назад
#include iostream
#include locale
using namespace std;
int main (void)
{
setlocale(LC_ALL,"rus");
string line1 [7]={" aaa "," a a ","a a","a a","a a"," a a "," aaa "};
string line [7]={" aaa "," abbba ","abcccba","abcccba","abcccba"," abbba "," aaa "};
int a=0;
do
{
cout<<line1[a]<<"\t\t"<<line[a]<<endl;
a++;
}while (a<7);
system("pause");
return 0;
}