Mash Script: Змінні

Зміст
Хтось взагалі переглядає код з таких фото?

Змінні використовуються для зберігання та маніпуляції даними у програмі. Вони мають ім'я, яке використовується для звернення до них, і значення, яке вони зберігають. Змінні можуть змінювати своє значення під час виконання програми. Наприклад, у програмі можна оголосити змінну age і присвоїти їй значення 23, а потім використовувати цю змінну для перевірки умови if(age >= 18).

Динамічна типізація

Mash Script є динамічно типізованою мовою, тому тип змінної може змінюватися під час її життєвого циклу. Проте, зміна типу змінної може призвести до неочікуваної поведінки програми та складнощів у розумінні коду. Тому рекомендується робити це лише якщо це абсолютно необхідно і ви розумієте наслідки цієї дії.

1. Оголошення змінних

Оголошення змінної - це процес введення нової змінної в програму. Інтерпретатор виділить пам'ять для зберігання значення змінної. Після оголошення змінну можна ініціалізувати, тобто присвоїти їй початкове значення.

1.1. Синтаксис оголошення змінної

Щоб оголосити змінну, необхідно вказати її тип та ім’я:

ТИП ІМ'Я; // Крапка з комою обов`язкова.

Де:

  • ТИП— це один із типів Mash Script (наприклад, number або string).

  • ІМ'Я — це ім’я змінної.

Типи даних, які використовуються для оголошення змінних:

  • int - для цілих чисел, наприклад: int age = 18;

  • float - для чисел з плаваючою комою, наприклад: float price = 19.99;

  • number - для чисел узагальненого типу, який може включати цілі числа, числа з плаваючою комою.

  • string - для рядків тексту, наприклад: string name = "John";

  • boolean - для значень true або false, наприклад: boolean isAdult = true;

  • Інші.

За замовчуванням, при оголошенні, змінні отримують значення null, що позначає відсутність значення або посилання на об'єкт. Такий підхід дає можливість явно вказати, що змінна (ІМ’Я) повинна бути певного типу (ТИП), але, поки що, не ініціалізована значенням.

1.2. Приклад оголошення

// Оголошення змінної floor, цілого числового типу
int floor;

// Оголошення змінної pi, дробового типу
float pi;

// Оголошення змінної msg, рядкового типу
string msg;

// Оголошення булевої змінної is_prime
boolean is_prime;

У цьому випадку, наприклад, змінна msg буде мати значення null, але дає можливість явно вказати, що змінна повинна бути типу string.

2. Ініціалізація змінної

Ініціалізація змінної - це процес виділення пам'яті для зберігання значення змінної та присвоєння їй початкового значення.

2.1. Загальний синтаксис ініціалізації

Щоб ініціалізувати змінну, необхідно вказати тип, ім’я і присвоїти їй значення:

ТИП ІМ'Я = ЗНАЧЕННЯ; 

Де:

  • ТИП— це один із типів Mash Script.

  • ІМ'Я — це ім’я змінної.

  • ЗНАЧЕННЯ - початкове значення змінної.

2.2. Приклад ініціалізації

// Оголошення змінної floor, цілого числового типу, із значенням 4
int floor = 4;

// Оголошення змінної pi, із значенням 3.14
float pi = 3.14;

// Оголошення змінної msg, із значенням "Привіт, світ!"
string msg = "Привіт, світ!";

// Оголошення змінної is_prime, із значенням false (хиба)
boolean is_prime = false;

2.3. Ініціалізація після оголошення

В Mash Script можна спочатку оголосити змінну, а потім ініціалізувати її значенням:

// Оголошення змінної age
int age;

// Ініціалізація змінної age, із значенням 21
age = 21;

// Аналогічно із змінною рядкового типу:
string name;
name = 'Роман';

2.4. Обмеження

У Mash Script змінну можна оголошувати лише один раз, але її значення можна змінювати пізніше в коді. Одноразове оголошення змінної гарантує, що змінна буде відома тільки у межах області видимості, де вона була оголошена, і уникне конфліктів імен. Наприклад:

// Перше оголошення змінної x
int x;

// Допустимо: змінюємо значення змінної x
x = 20;

// Неприпустимо: оголошення змінної x вже було зроблено
int x = 30; 

2.5. Приклад програми

Напишемо Ехо програму, використовуючи змінні:

import { * } from stdl;

void main()
{
  // Зберігаємо рядок, який введе користувач, до змінної text
  string text = In.line("-> "); // Метод line повертає радок

  // Друкуємо рядок, що міститься в зміній text 
  Out.println(text);
}

Ця програма зчитує рядок, введений користувачем, та виводить його на екран консолі. Вона використовує метод In.line("-> ") для зчитування рядка з консолі з підказкою "-> " і зберігає його в змінну text типу string. Потім вона використовує метод Out.println(text) для виведення зчитаного рядка на екран консолі.

Повторюю питання…

3. Зміна змінної

Після ініціалізації змінну можна змінити, просто присвоївши їй нове значення. Це дає можливість динамічно змінювати дані, з якими працює програма, у процесі її виконання.

// Оголошення та ініціалізація змінної із значенням 25
int age = 25;

// Зміна значення змінної на 30
age = 30;

У цьому прикладі спочатку змінна age ініціалізується значенням 25, а потім її значення змінюється на 30. Якщо ж ви присвоїте нове значення існуючій змінній, воно просто перезапише попереднє значення. Наприклад:

// Оголошення та ініціалізація змінної x
int x = 10; 

// Зміна значення змінної x на 20
x = 20;

// Зміна значення змінної x на 30 (попереднє значення 20 буде замінено)
x = 30; 

Читати далі

  1. Оголошення зміних з ініціалізатором.

  2. Друк змінних.

  3. Константи.

  4. Змінні та незмінні типи даних.

  5. Область бачення змінних.

  6. Оператори +=, -= та інші.

  7. Інкремент і декремент.

  8. Вказівники.

  9. Ключове слово mutable.

  10. Унарний оператор “->”.

  11. Ключове слово delete.

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Romashka
Romashka@Romashka

Створюю інтерпретатор Mash Src

99Прочитань
1Автори
1Читачі
На Друкарні з 16 березня

Більше від автора

  • Mash Script: Базовий синтаксис

    Опис базової структури програми написаної мовою Mash Script

    Теми цього довгочиту:

    Programming
  • λanguage: Написання парсера

    Написання парсера - це досить складне завдання. У сутності, він повинен перетворити фрагмент коду у "абстрактне синтаксичне дерево". Це структуроване представлення програми в пам'яті, воно абстрактне в тому сенсі, що не має значення, з яких саме символів складається вихідний код.

    Теми цього довгочиту:

    Парсер

Вам також сподобається

  • Virtual DOM in React

    Коротко про те, що таке Virtual DOM і як він підвищує продуктивність вебсайту.

    Теми цього довгочиту:

    React
  • Пайтон: дескриптори - що це???

    Можливо, навіть далеко не всі чули, що таке дескриптори, але точно всі використовували їхЯ кажу це так впевнено, оскільки @property є дескриптором

    Теми цього довгочиту:

    Програмування

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Вам також сподобається

  • Virtual DOM in React

    Коротко про те, що таке Virtual DOM і як він підвищує продуктивність вебсайту.

    Теми цього довгочиту:

    React
  • Пайтон: дескриптори - що це???

    Можливо, навіть далеко не всі чули, що таке дескриптори, але точно всі використовували їхЯ кажу це так впевнено, оскільки @property є дескриптором

    Теми цього довгочиту:

    Програмування