В настоящее время у меня трудное время для увеличения формы окна. Итак, вот картина:
Это мой код до сих пор:
#include <iostream>
using namespace std;
int box(int);
int main() {
int input;
cout << "Enter input: ";
cin >> input;
cout << endl;
box(input);
return 0;
}
int box(int input) {
if (input == 1 || input == 2 || input == 3) {
switch(input) {
case 1:
for (int a=1; a<=3; a++) {
cout << "*";
}
cout << endl;
for (int b=1; b<=1; b++) {
for (int c=1; c<=1; c++) {
cout << "*";
}
for(int d=1; d<=1; d++) {
cout << " ";
}
cout << "*" << endl;
}
for (int e=1; e<=3; e++) {
cout << "*";
}
break;
}
}
else {
cout << "Wrong input." << endl;
}
return input;
}
Я новичок в программировании на C ++. Я пытаюсь получить логику и код здесь. Но мне так трудно это сделать. Я пытаюсь ввести 1, и окно появится. Я хочу воссоздать код с одной функцией, чей ввод будет увеличивать поле.
Вы начали решать это слишком конкретно: начиная с одной коробки. Попробуйте посмотреть, что у них общего. принятие N
в качестве входа,
2 * N + 1
"*"
, затем N
раз " * *"
N
пары"*"
, а потом N
раз " "
(4 пробела) или " *"
(3 пробела и звезда). За I
линия, есть I
из первых, и N - I
из последних, с I
переходя от 0 до N - 1
,"*"
и затем либо " "
(4 пробела) или " * *"
, с I + 1
из первых, и N - (I + 1)
из последних.Теперь вы можете нарисовать даже 4 или 5 блоков — все они следуют одним и тем же правилам.
Других решений пока нет …