#include <iostream>
#include <cstdlib>
using namespace std;
struct range {
int min, max;
};
struct point {
int x, y;
};
point random_point(range x_range, range y_range) {
return {
(rand()%x_range.max)+x_range.min,
(rand()%y_range.max)+y_range.min
};
}
void randomize_points(point *points, size_t size, range x_range, range y_range) {
while(size --> 0) {
points[size] = random_point(x_range, y_range);
}
}
void view_point(point const &p) {
cout << "{x: " << p.x << ", y: " << p.y << "}";
}
void view_points(point *points, size_t size) {
for(size_t i = 0; i < size; ++i) {
view_point(points[i]);
cout << endl;
}
}
int main() {
range x_range { 0, 100 }, y_range { 0, 100 };
point points[10];
randomize_points(points, 10, x_range, y_range);
view_points(points, 10);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCByYW5nZSB7CglpbnQgbWluLCBtYXg7Cn07CgpzdHJ1Y3QgcG9pbnQgewoJaW50IHgsIHk7Cn07Cgpwb2ludCByYW5kb21fcG9pbnQocmFuZ2UgeF9yYW5nZSwgcmFuZ2UgeV9yYW5nZSkgewoJcmV0dXJuIHsKCQkocmFuZCgpJXhfcmFuZ2UubWF4KSt4X3JhbmdlLm1pbiwKCQkocmFuZCgpJXlfcmFuZ2UubWF4KSt5X3JhbmdlLm1pbgoJfTsKfQoKdm9pZCByYW5kb21pemVfcG9pbnRzKHBvaW50ICpwb2ludHMsIHNpemVfdCBzaXplLCByYW5nZSB4X3JhbmdlLCByYW5nZSB5X3JhbmdlKSB7Cgl3aGlsZShzaXplIC0tPiAwKSB7CgkJcG9pbnRzW3NpemVdID0gcmFuZG9tX3BvaW50KHhfcmFuZ2UsIHlfcmFuZ2UpOwoJfQp9Cgp2b2lkIHZpZXdfcG9pbnQocG9pbnQgY29uc3QgJnApIHsKCWNvdXQgPDwgInt4OiAiIDw8IHAueCA8PCAiLCB5OiAiIDw8IHAueSA8PCAifSI7Cn0KCnZvaWQgdmlld19wb2ludHMocG9pbnQgKnBvaW50cywgc2l6ZV90IHNpemUpIHsKCWZvcihzaXplX3QgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKCQl2aWV3X3BvaW50KHBvaW50c1tpXSk7CgkJY291dCA8PCBlbmRsOwoJfQp9IAoKaW50IG1haW4oKSB7CglyYW5nZSB4X3JhbmdlIHsgMCwgMTAwIH0sIHlfcmFuZ2UgeyAwLCAxMDAgfTsKCXBvaW50IHBvaW50c1sxMF07CglyYW5kb21pemVfcG9pbnRzKHBvaW50cywgMTAsIHhfcmFuZ2UsIHlfcmFuZ2UpOwoJdmlld19wb2ludHMocG9pbnRzLCAxMCk7CglyZXR1cm4gMDsKfQ==
{x: 72, y: 36}
{x: 40, y: 26}
{x: 63, y: 26}
{x: 90, y: 59}
{x: 62, y: 27}
{x: 49, y: 21}
{x: 86, y: 92}
{x: 93, y: 35}
{x: 77, y: 15}
{x: 83, y: 86}