1. Even though the values for variables are declared/shown in decimal, they are always stored as "bits" in memory locations. Accordingly, the numbers: 30000, 60000, and 90000 would be stored as: 0x7530 (written in hex base for convenience), 0xEA60, and 0x00015F90 respectively.
Note that 0x15F90 (for 90000) is written as 0x00015F90 (32-bit) due to the fact that in Computer memory, the numbers are stored as 8-bit or 16-bit or 32-bit or 64-bit chunk; where, the required sizes are maintained by appending 0s.
2. To avoid mistakes in the selection of appropriate data type, it is peferable that the hex versions of the decimal numbers are written down on note papers.
3. As the values of Step-1 are to be stored in a 3-elemnt array, the sizes of the array elements should be the same. Accordingly, we can declare the following data type for the array, which can hold number from 0 to 4 294 967 295 (0x00000000 to 0xFFFFFFFF).
unsigned long int timeInterval; //the data type is: "unsigned long int"
4. The int type variable holds data of this range: -32768 to 32767 (0x8000 to 0x7FFF). Obviously, the data value 90000 would not be accomodated in an int type variable.
5. The following sketch stores/prints the data correctly (Fig-1) on Arduino UNO.
int timeStep = 30000;
unsigned long int timeIntervall;
int i = 0;
unsigned long int t = timeStep;
for (i = 0; i < 3; i++)
timeIntervall[i] = t;
t = t + timeStep;