SomonScriptDocsТипы данных
Глава 3 • Типы данных

Типы данных в SomonScript

Тип (type) показывает, какое значение может хранить переменная: строку, число, логическое значение и так далее. Понимать типы очень важно, чтобы избегать ошибок и писать понятный код.

1. Примитивные типы (сатр, рақам, мантиқӣ)

Самые распространённые типы в SomonScript: сатр (текст), рақам (число) и мантиқӣ (истина/ложь).

Основные типы переменных

Простой пример с типами сатр, рақам и мантиқӣ для краткого профиля ученика.

example.som
// Примитивные типы: сатр, рақам, мантиқӣ
тағ ном: сатр = "Аҳмад";
тағ синну_сол: рақам = 16;
тағ донишҷӯ_аст: мантиқӣ = дуруст;

// Вывод значений на экран
чоп.сабт("Ном: " + ном);
чоп.сабт("Синну сол: " + синну_сол);
чоп.сабт("Донишҷӯ аст:", донишҷӯ_аст);
terminal
somon run types-basic.som
Ном: Аҳмад
Синну сол: 16
Донишҷӯ аст: дуруст

2. Пример посложнее: массив и объект

Составные типы, такие как массив (например, рақам[]) и объект, позволяют хранить несколько значений вместе. В примере ниже мы описываем данные студента с помощью этих типов.

Массив и объект для студента

Например, хранение данных студента с помощью разных типов: сатр, рақам, мантиқӣ, массив.

example.som
// Данные студента разных типов
собит НОМИ_ДОНИШГОҲ: сатр = "Донишгоҳи миллии Тоҷикистон";

// Объект с данными студента
тағ донишҷӯ: объект = {
  ном: "Аҳмад",
  синну_сол: 20,
  фаъол_аст: дуруст,
  бахоҳо: [5, 4, 5, 5, 4] // массив чисел
};

// Вывод данных на экран
чоп.сабт("=== " + НОМИ_ДОНИШГОҲ + " ===");
чоп.сабт("Донишҷӯ: " + донишҷӯ.ном);
чоп.сабт("Синну сол: " + донишҷӯ.синну_сол);

// Вычисление среднего балла
тағ ҷамъи_бахоҳо: рақам = 0;
барои (тағ и: рақам = 0; и < донишҷӯ.бахоҳо.дарозӣ; и++) {
  ҷамъи_бахоҳо = ҷамъи_бахоҳо + донишҷӯ.бахоҳо[и];
}
тағ миёнаи_бахо: рақам = ҷамъи_бахоҳо / донишҷӯ.бахоҳо.дарозӣ;
чоп.сабт("Миёнаи бахоҳо: " + миёнаи_бахо);
terminal
somon run types-student.som
=== Донишгоҳи миллии Тоҷикистон ===
Донишҷӯ: Аҳмад
Синну сол: 20
Миёнаи бахоҳо: 4.6

3. Упражнения

Эти упражнения помогают закрепить тему типов.

  1. Создайте массив из 5 ваших любимых чисел и выведите их на экран по одному.
  2. Создайте объект для книги со свойствами ном, муаллиф, соли_нашр и саҳифаҳо и выведите его на экран.
  3. Создайте два массива чисел, вычислите сумму всех их элементов и выведите результат на экран.