#include <iostream>
#include <stdio.h>
#define WIDTH 80
#define HEIGHT 40
using namespace std;
//just including basic stuff please try to make solution without including more lib.
int grid[HEIGHT][WIDTH];
int x, y, xp, xs, yp, ys, n;
int length=HEIGHT * WIDTH;
void printarray () {
//it will print array when it is called in to the console
for (y=0; y<HEIGHT; y++) {
for (x=0; x<WIDTH; x++) {
/*if (grid[y][x]%2 == 0){ //just test
printf("#");
}else{
printf("_");
}
}
printf("\n");
}
for (int n=0; n<WIDTH; ++n){
printf("=");
}
printf("\n");
}*/
if (grid[y][x]==1) {
//it just dicide if it draw # or _
printf("#");
}
else {
printf("_");
}
}
printf("\n");
}
for (int n=0; n<WIDTH; ++n) {
printf("=");
}
printf("\n");
}
void rect (int xp, int yp, int xs, int ys) {
//it should print rectangle
for (y=yp; y<=yp+ys; y++) {
//xp is position on x
grid[y][xp]=1; //xs is how long is on x
grid[y][xp+xs]=1; //every loop set 2 lines in array grid[][]
}
for (x=xp; x<=xp+xs; x++) {
grid[yp][x]=1;
grid[yp+ys][x]=1;
}
}
int main() { //main function
for (y=0; y<HEIGHT; y++)
for (x=0; x<WIDTH; x++) {
//grid[y][x] = x+y*(WIDTH-1); //just part of test
grid[y][x]=0;
} //and it sometimes write in my build log Process terminated with status -1073741510
rect(2, 2, 3, 5); //if i call this function my console crash or dont do anything
printarray();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RkaW8uaD4KI2RlZmluZSBXSURUSCA4MCAKI2RlZmluZSBIRUlHSFQgNDAgCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAgCi8vanVzdCBpbmNsdWRpbmcgYmFzaWMgc3R1ZmYgcGxlYXNlIHRyeSB0byBtYWtlIHNvbHV0aW9uIHdpdGhvdXQgaW5jbHVkaW5nIG1vcmUgbGliLgoKaW50IGdyaWRbSEVJR0hUXVtXSURUSF07CmludCB4LCB5LCB4cCwgeHMsIHlwLCB5cywgbjsKaW50IGxlbmd0aD1IRUlHSFQgKiBXSURUSDsKCnZvaWQgcHJpbnRhcnJheSAoKSB7CiAgLy9pdCB3aWxsIHByaW50IGFycmF5IHdoZW4gaXQgaXMgY2FsbGVkIGluIHRvIHRoZSBjb25zb2xlCiAgZm9yICh5PTA7IHk8SEVJR0hUOyB5KyspIHsKICAgIGZvciAoeD0wOyB4PFdJRFRIOyB4KyspIHsKICAgICAgLyppZiAoZ3JpZFt5XVt4XSUyID09IDApeyAgICAgIC8vanVzdCB0ZXN0CiAgICAgICAgcHJpbnRmKCIjIik7CiAgICB9ZWxzZXsKICAgICAgICBwcmludGYoIl8iKTsKICAgICAgICB9CiAgICB9CiAgICBwcmludGYoIlxuIik7CiAgICB9CgogICAgZm9yIChpbnQgbj0wOyBuPFdJRFRIOyArK24pewogICAgICAgIHByaW50ZigiPSIpOwogICAgfQogICAgcHJpbnRmKCJcbiIpOwp9Ki8KICAgICAgaWYgKGdyaWRbeV1beF09PTEpIHsKICAgICAgICAvL2l0IGp1c3QgZGljaWRlIGlmIGl0IGRyYXcgIyBvciBfCiAgICAgICAgcHJpbnRmKCIjIik7CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgcHJpbnRmKCJfIik7CiAgICAgIH0KICAgIH0KICAgIHByaW50ZigiXG4iKTsKICB9CiAgZm9yIChpbnQgbj0wOyBuPFdJRFRIOyArK24pIHsKICAgIHByaW50ZigiPSIpOwogIH0KICBwcmludGYoIlxuIik7Cn0KCnZvaWQgcmVjdCAoaW50IHhwLCBpbnQgeXAsIGludCB4cywgaW50IHlzKSB7CiAgLy9pdCBzaG91bGQgcHJpbnQgcmVjdGFuZ2xlCiAgZm9yICh5PXlwOyB5PD15cCt5czsgeSsrKSB7CiAgICAvL3hwIGlzIHBvc2l0aW9uIG9uIHgKICAgIGdyaWRbeV1beHBdPTE7IC8veHMgaXMgaG93IGxvbmcgaXMgb24geAogICAgZ3JpZFt5XVt4cCt4c109MTsgLy9ldmVyeSBsb29wIHNldCAyIGxpbmVzIGluIGFycmF5IGdyaWRbXVtdCiAgfQogIGZvciAoeD14cDsgeDw9eHAreHM7IHgrKykgewogICAgZ3JpZFt5cF1beF09MTsKICAgIGdyaWRbeXAreXNdW3hdPTE7CiAgfQp9CgppbnQgbWFpbigpIHsgICAgICAgICAgICAgICAgICAgICAgLy9tYWluIGZ1bmN0aW9uCiAgZm9yICh5PTA7IHk8SEVJR0hUOyB5KyspCiAgICAgIGZvciAoeD0wOyB4PFdJRFRIOyB4KyspIHsKICAgICAgLy9ncmlkW3ldW3hdID0geCt5KihXSURUSC0xKTsgLy9qdXN0IHBhcnQgb2YgdGVzdAogICAgICAgIGdyaWRbeV1beF09MDsKICAgICAgfSAvL2FuZCBpdCBzb21ldGltZXMgd3JpdGUgaW4gbXkgYnVpbGQgbG9nIFByb2Nlc3MgdGVybWluYXRlZCB3aXRoIHN0YXR1cyAtMTA3Mzc0MTUxMAogIHJlY3QoMiwgMiwgMywgNSk7IC8vaWYgaSBjYWxsIHRoaXMgZnVuY3Rpb24gbXkgY29uc29sZSBjcmFzaCBvciBkb250IGRvIGFueXRoaW5nCiAgcHJpbnRhcnJheSgpOwogIHJldHVybiAwOwp9