Форум программистов, компьютерный форум, киберфорум
Lua
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/47: Рейтинг темы: голосов - 47, средняя оценка - 4.66
0 / 0 / 0
Регистрация: 06.11.2018
Сообщений: 4
1

Как определить длину массива

14.11.2020, 12:41. Показов 9170. Ответов 2
Метки lua (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Вопрос от новичка.
Хочу определить длину массива

Lua
1
2
3
4
5
6
7
local Table = {}
 
for i = 1, 10, 2 do                             
    Table[i] = i                    
end
 
print("Количество строк в таблице Table равно:", #Table)
Если в цикле 1,10,1 - то все гуд #Table равно 10
Если в цикле 1,10,2 -то #Table равно 1
Почему так?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.11.2020, 12:41
Ответы с готовыми решениями:

Определить длину самой длинной последовательности подряд идущих элементов массива, равных нулю
надо сделать 2 проги, а я в фортране вообще не шарю) 2)Заданы число N и целочисленный массив...

Как определить длину отдельного элемента двумерного массива
Доброго времени суток! Хотел бы кое-что узнать, по скольку в поиске не нашел ответа: Как...

Определить длину массива
Собственно терроризировал вчера весь гугль, ничего кроме такого метода нахождения длины не нашел...

Определить длину вектора, сформированного из элементов массива
Еще одна проблема помогите пожалуйста.. Масив: Z = {−2; 9; 10; −2; 9; 1; 14; 9;...

2
1003 / 1858 / 176
Регистрация: 07.05.2013
Сообщений: 3,894
Записей в блоге: 12
14.11.2020, 13:10 2
Дело в том, что Луа считает массивом таблицу с индексами от 1 до N.
Только для массива работает операнд #.
Все остальное Луа считает списком - и размер его приходится считать ручками перебором элементов.

Добавлено через 2 минуты
Например вот так:

Lua
1
2
3
4
5
6
7
8
9
10
11
12
-- -------------------------------------------------------------
-- Возвращает длину списка
 
function list_length( t )
 
    local len = 0
    for _,_ in pairs( t ) do
        len = len + 1
    end
 
    return len
end
1
3881 / 2479 / 418
Регистрация: 09.09.2017
Сообщений: 10,888
16.11.2020, 13:14 3
Цитата Сообщение от Maxibo Посмотреть сообщение
Почему так?
Потому что метафункция len возвращает количество последовательно идущих элементов. Скажем, она не учитывает именованные поля, а в массивах останавливается на первой же "дырке".
0
16.11.2020, 13:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2020, 13:14
Помогаю со студенческими работами здесь

Определить длину самой упорядоченной части массива
Проверить упорядочен ли массив b(n) по возрастанию или убыванию элементов. Если массив не...

Определить минимальную длину последовательности ненулевых элементов массива
Задан массив четырехбайтовых чисел, содержащий нулевые элементы. Определить минимальную длину...

Определить среднюю длину непрерывных участков отрицательных значений элементов массива
в массиве A определить среднюю длину непрерывных участков отрицательных значений элементов буду...

Найти произведение элементов массива.Определить длину самого короткого слова.
1)Дан квадратный массив размерностью 5х5. Найти произведение элементов массива, расположенных в...

invalid qualifier при попытке определить длину массива внутри функции
Задача не суть важна. При попытке нажать кнопку, программа исправно работает до вызова функции,...

Определить длину и позицию слова, которое имеет наименьшую длину в строке
Определить длину и позицию слова, которое имеет наименьшую длину в строке. Строки Пожалуйста...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru