user51147: I need to control thousands of rgb leds.To make animations I want to assign led numbers(addressable led strip) to arrays.For example floor[2]room[14]=106 106 is the number of led,there are many floors and rooms.I want to change floor or room numbers with that way I will make animations.
  We can say its 92x30 pixel monitor.I tried to create list of floor and rooms but I couldnt make it.
  I'm new to programming,help please!
Solved with this way #define LEDNO(FLOOR, ROOM) ((ROOM) + (FLOOR * 92))

user50469: Something like this would work:
#define MAX_FLOORS  92
#define MAX_ROOMS   30

struct floor_str {
  int Room[MAX_ROOMS];
} Floor[MAX_FLOORS];

You would then access an individual LED address like:
Floor[2].Room[14] = 106;

user4143: You really don't need to maintain a list.
Just calculate the LED index from the location:
int room = 14;
int floor = 2;

const int rooms = 92;

int led = room + (floor * rooms);

That is, each floor below the current one (floors and rooms count from 0) is a full row of rooms (92 * floors), and there are "room" extra rooms on this floor to add to it.
You could make a macro:
#define LEDNO(FLOOR, ROOM) ((ROOM) + (FLOOR * 92))

Then your LED number is just:
int led = LEDNO(2, 14);

Here's an example taken from your code:
void floorsup(){

  FastLED.setBrightness(brightness);

  for(int a=1;a<255;a+=40){
    for (int floor = 0; floor < 30; floor++) {
      for (int room = 0; room < 92; room++) {
        leds[LEDNO(floor, room)].setHSV(a, 255, 255);
      }
      FastLED.show();
      delay(300);
    }
    for (int floor = 0; floor < 30; floor++) {
      for (int room = 0; room < 92; room++) {
        leds2[LEDNO(floor, room)].setHSV(a, 255, 255);
      }
      FastLED.show();
      delay(300);
    }
    for (int floor = 0; floor < 30; floor++) {
      for (int room = 0; room < 92; room++) {
        leds3[LEDNO(floor, room)].setHSV(a, 255, 255);
      }
      FastLED.show();
      delay(300);
    }
  }
}


51147: <p>I need to control thousands of rgb leds.To make animations I want to assign led numbers(addressable led strip) to arrays.For example <code>floor[2]room[14]=106</code> 106 is the number of led,there are many floors and rooms.I want to change floor or room numbers with that way I will make animations.
  We can say its 92x30 pixel monitor.I tried to create list of floor and rooms but I couldnt make it.
  I'm new to programming,help please!</p>

<p><strong>Solved with this way <code>#define LEDNO(FLOOR, ROOM) ((ROOM) + (FLOOR * 92))</code></strong></p>
 50469: <p>Something like this would work:</p>

<pre><code>#define MAX_FLOORS  92
#define MAX_ROOMS   30

struct floor_str {
  int Room[MAX_ROOMS];
} Floor[MAX_FLOORS];
</code></pre>

<p>You would then access an individual LED address like:</p>

<p>Floor[2].Room[14] = 106;</p>
 4143: <p>You really don't need to maintain a list.</p>

<p>Just calculate the LED index from the location:</p>

<pre><code>int room = 14;
int floor = 2;

const int rooms = 92;

int led = room + (floor * rooms);
</code></pre>

<p>That is, each floor below the current one (floors and rooms count from 0) is a full row of rooms (92 * floors), and there are "room" extra rooms on this floor to add to it.</p>

<p>You could make a macro:</p>

<pre><code>#define LEDNO(FLOOR, ROOM) ((ROOM) + (FLOOR * 92))
</code></pre>

<p>Then your LED number is just:</p>

<pre><code>int led = LEDNO(2, 14);
</code></pre>

<p>Here's an example taken from your code:</p>

<pre><code>void floorsup(){

  FastLED.setBrightness(brightness);

  for(int a=1;a&lt;255;a+=40){
    for (int floor = 0; floor &lt; 30; floor++) {
      for (int room = 0; room &lt; 92; room++) {
        leds[LEDNO(floor, room)].setHSV(a, 255, 255);
      }
      FastLED.show();
      delay(300);
    }
    for (int floor = 0; floor &lt; 30; floor++) {
      for (int room = 0; room &lt; 92; room++) {
        leds2[LEDNO(floor, room)].setHSV(a, 255, 255);
      }
      FastLED.show();
      delay(300);
    }
    for (int floor = 0; floor &lt; 30; floor++) {
      for (int room = 0; room &lt; 92; room++) {
        leds3[LEDNO(floor, room)].setHSV(a, 255, 255);
      }
      FastLED.show();
      delay(300);
    }
  }
}
</code></pre>
