Заставить поле повториться?

Это мое задание для compsci, и я застрял в самом конце, как заставить звездное поле «*» повторять, сколько раз пользователь хочет.

Напишите программу, которая распечатывает серию звездных полей (т. Е. «*»). Каждое поле будет иметь n строк и m столбцов. Разрешить пользователю вводить количество строк (не менее 1, но не более 5) и столбцов (не менее 5, но не более 50), а также количество полей (не менее 3, но не более 10) , Каждое поле должно быть разделено 3 полными пустыми строками.

Ваша программа должна включать как минимум две функции: одну для получения входных данных от пользователя и одну для рисования каждого поля. Используйте циклы for для создания полей, а также для распечатки нескольких полей. НЕ используйте строку «». Скорее распечатайте персонажа».

код

#include <iostream>

using namespace std;

void displayField(int numrows, int numcolums);

void getData (int numrows, int numcolumns, int numfields);

const char c = '*';int main(void)
{
int numrows, numcolumns, numfields;

cout << "Welcome to the banner creation program!" << endl;

cout << "Enter the number of rows (1 - 5) --> ";
cin >> numrows;

if(numrows<1 || numrows>5){
cout << "Your entered value is outside the range!" << endl;
cout << "Program will now halt..." << endl;
exit(0);}cout << "Enter the number of columns (5 - 50) --> ";
cin >> numcolumns;

if(numcolumns<5 || numcolumns>50){
cout << "Your entered value is outside the range!" << endl;
cout << "Program will now halt..." << endl;
exit(0);
}

cout << "Enter the number of rows (3 - 10) --> ";
cin >> numfields;

if(numfields<3 || numrows>10){
cout << "Your entered value is outside the range!" << endl;
cout << "Program will now halt..." << endl;
exit(0);
}
for(int i=1; i<=numrows; i++){
for (int j=1; j<=numcolumns; j++)
cout << c;
cout <<endl;

}}

0

Решение

Чтобы сломать вещи …

1) Для каждого поля есть множество строк.

2) Для каждой строки есть многочисленные столбцы

3) Для каждого столбца есть символ ‘*’

Теперь, когда мы так написали, мы знаем, что нам нужно иметь 3 разных цикла. Но есть ограничения.

В конце каждой строки нам нужно начать новую строку.

В конце каждого поля нам нужно три пустых строки.

for (int i = 0; i < numFields; i++) {
for (int j = 0; j < numRows; j++) {
for (int k = 0; k < numColumns; k++) {
cout << c;
}
cout << endl;
}
cout << endl << endl << endl;
}

Кроме того, вы должны дважды проверить свою работу. Я заметил, что вы используете несколько переменных в неправильных местах Подсказка Подсказка.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector