Глава 7 • Объекты и массивы
Объекты и массивы в SomonScript
Массивы используются для хранения списков значений, а объекты - для хранения сложных данных. Здесь мы посмотрим, как создать простой список и массив объектов.
1. Простой массив с именами
Сначала создадим простой список имён и по очереди выведем их на экран. Этот пример показывает ученикам, что индексы начинаются с 0.
Список учеников
Простой массив и цикл барои для вывода всех имён.
example.som
// Список имён учеников
тағ номҳо: сатр[] = ["Аҳмад", "Фотима", "Ҳасан"];
// Вывод списка на экран
чоп.сабт("=== Рӯйхати донишҷӯён ===");
барои (тағйирёбанда и: рақам = 0; и < номҳо.дарозӣ; и++) {
чоп.сабт(номҳо[и]);
}terminal
somon run objects-basic.som
=== Рӯйхати донишҷӯён ===
Аҳмад
Фотима
Ҳасан2. Массив объектов и средний балл
Теперь создадим список объектов, каждый из которых описывает одного ученика: его имя, возраст и оценку. Затем вычислим средний балл.
Массив объектов учеников
Использование массива объектов для хранения данных класса и вычисления среднего балла.
example.som
// Список объектов учеников
тағ донишҷӯён: объект[] = [
{ ном: "Аҳмад", синну_сол: 20, бахо: 4.5 },
{ ном: "Фотима", синну_сол: 19, бахо: 4.8 },
{ ном: "Ҳасан", синну_сол: 21, бахо: 4.2 }
];
// Вывод списка и вычисление среднего балла
чоп.сабт("=== Рӯйхати донишҷӯён ===");
тағ ҷамъи_бахоҳо: рақам = 0;
барои (тағ и: рақам = 0; и < донишҷӯён.дарозӣ; и++) {
тағ д: объект = донишҷӯён[и];
чоп.сабт(д.ном + " (" + д.синну_сол + " сол) - Бахо: " + д.бахо);
ҷамъи_бахоҳо = ҷамъи_бахоҳо + д.бахо;
}
тағ миёна: рақам = ҷамъи_бахоҳо / донишҷӯён.дарозӣ;
чоп.сабт("Миёнаи бахо: " + миёна);terminal
somon run objects-students.som
=== Рӯйхати донишҷӯён ===
Аҳмад (20 сол) - Бахо: 4.5
Фотима (19 сол) - Бахо: 4.8
Ҳасан (21 сол) - Бахо: 4.2
Миёнаи бахо: 4.53. Упражнения
Эти упражнения закрепляют тему объектов и массивов.
- Создайте массив из 10 случайных чисел и найдите среди них наибольшее и наименьшее.
- Создайте объект для автомобиля со свойствами и методами (завести, остановиться, ускориться) и используйте его несколько раз.
- Создайте список учеников с именами и оценками и выведите на экран учеников с оценкой выше 4.5.