Фиксация мамы нолнан с сфере IT с симпатией к атусу стоещему на полигоне

с афроо лошадьми
This commit is contained in:
SkrinVex
2026-01-20 22:04:44 +05:00
parent 024444abdb
commit 4365a50cda
45 changed files with 2941 additions and 470 deletions
+47
View File
@@ -0,0 +1,47 @@
// Тест массивов
print("=== Arrays Test ===");
// Создание массива
array numbers 5;
// Заполнение массива
set(numbers, 0, 10);
set(numbers, 1, 20);
set(numbers, 2, 30);
set(numbers, 3, 40);
set(numbers, 4, 50);
// Чтение из массива
print("Array elements:");
int i = 0;
while (i < 5) {
int value = get(numbers, i);
print("numbers[" + i + "] = " + value);
i = i + 1;
}
// Массив с подчеркиванием в имени
array test_array 3;
set(test_array, 0, 100);
set(test_array, 1, 200);
set(test_array, 2, 300);
print("Test array:");
int j = 0;
while (j < 3) {
int val = get(test_array, j);
print("test_array[" + j + "] = " + val);
j = j + 1;
}
// Сумма элементов массива
int sum = 0;
int k = 0;
while (k < 5) {
sum = sum + get(numbers, k);
k = k + 1;
}
print("Sum of numbers: " + sum);
print("Arrays test completed!");
fox();
+15
View File
@@ -0,0 +1,15 @@
// Тест встроенных функций
print("=== Built-in Functions Test ===");
// Тест print
print("Testing print function");
// Тест математических функций (заглушки)
print("Testing math functions (built-in):");
print("Math functions work!");
// Тест fox функции
print("Testing fox function:");
fox();
print("Built-in functions test completed!");
+60
View File
@@ -0,0 +1,60 @@
// Тест циклов и условий
print("=== Control Flow Test ===");
// Тест if/else
int x = 10;
if (x > 5) {
print("x is greater than 5");
} else {
print("x is not greater than 5");
}
// Тест логических операторов
bool a = true;
bool b = false;
if (a && !b) {
print("a is true and b is false");
}
if (a || b) {
print("a or b is true");
}
// Тест while цикла
print("While loop test:");
int counter = 0;
while (counter < 5) {
print("Counter: " + counter);
counter = counter + 1;
}
// Тест for цикла
print("For loop test:");
int i = 0;
while (i < 3) {
print("For loop i: " + i);
i = i + 1;
}
// Вложенные циклы
print("Nested loops test:");
int outer = 0;
while (outer < 3) {
int inner = 0;
while (inner < 2) {
print("outer: " + outer + ", inner: " + inner);
inner = inner + 1;
}
outer = outer + 1;
}
// Переменные с подчеркиваниями в циклах
int loop_counter = 0;
while (loop_counter < 3) {
print("loop_counter: " + loop_counter);
loop_counter = loop_counter + 1;
}
print("Control flow test completed!");
fox();
+30
View File
@@ -0,0 +1,30 @@
// Простой тест пользовательских функций
print("=== Functions Test ===");
// Простая функция
int add(int a, int b) {
return a + b;
}
// Функция со строкой
string greet(string name) {
return "Hello!";
}
// Void функция
void say_hello() {
print("Hello from function!");
}
// Тестирование
print("Testing add function:");
print("Result: " + add(5, 3));
print("Testing greet function:");
print(greet("Alice"));
print("Testing void function:");
say_hello();
print("Functions test completed!");
fox();
-38
View File
@@ -1,38 +0,0 @@
print(">>> Library 'lib_utils.fox' loaded successfully!");
// Глобальные переменные для передачи "аргументов" в функции
// (так как в v4.0 аргументы передаются через глобальную память)
int arg_val = 0;
int return_val = 0;
// --- Функция 1: Вычисление факториала ---
void factorial() {
int counter = 1;
int result = 1;
// Цикл while
while (counter < arg_val + 1) {
result = result * counter;
counter = counter + 1;
}
return_val = result;
}
// --- Функция 2: Красивый заголовок ---
void printHeader() {
print("===================================");
print(" FOX LANG v4.0 DEMO SYSTEM ");
print("===================================");
fox(); // Вызов встроенной лисы
}
// --- Функция 3: Проверка четности ---
void checkParity() {
// Используем оператор остатка %
int rem = arg_val % 2;
if (rem == 0) {
print("Number " + arg_val + " is EVEN (Chetnoe).");
} else {
print("Number " + arg_val + " is ODD (Nechetnoe).");
}
}
-102
View File
@@ -1,102 +0,0 @@
// 1. Подключаем нашу библиотеку
include("lib_utils.fox");
// Используем функцию из библиотеки
printHeader();
// ==========================================
// ЧАСТЬ 1: Работа с вводом и условиями
// ==========================================
print("");
print("--- Step 1: User Interaction ---");
print("Enter your name:");
string name = input();
if (name == "Fox") {
print("Hello, Creator!");
} else {
print("Welcome, user " + name);
}
// ==========================================
// ЧАСТЬ 2: Математика и Библиотечные функции
// ==========================================
print("");
print("--- Step 2: Math & Logic ---");
print("Enter a small number to calculate Factorial:");
string inputNum = input();
int num = inputNum; // Автоматическое преобразование типов (строка -> число)
// Передаем аргумент через глобальную переменную библиотеки
arg_val = num;
factorial(); // Вызываем функцию из lib_utils.fox
print("Factorial of " + num + " is: " + return_val);
// Проверяем на четность
checkParity();
// ==========================================
// ЧАСТЬ 3: Массивы и Сортировка (Bubble Sort)
// ==========================================
print("");
print("--- Step 3: Array Sorting (Bubble Sort) ---");
// Объявляем массив на 5 элементов
int arrSize = 5;
array myNumbers arrSize;
// Заполняем массив случайными числами
int i = 0;
while (i < arrSize) {
int rnd = random();
set(myNumbers, i, rnd);
i = i + 1;
}
// Выводим исходный массив
print("Original Array:");
int k = 0;
while (k < arrSize) {
print("Index " + k + ": " + get(myNumbers, k));
k = k + 1;
}
print("Sorting now... please wait...");
// Реализация сортировки пузырьком
int n = arrSize;
int pass = 0;
// Внешний цикл
while (pass < n) {
int j = 0;
// Внутренний цикл (n - 1)
while (j < n - 1) {
// Получаем два соседних элемента
int val1 = get(myNumbers, j);
int val2 = get(myNumbers, j + 1);
// Если левый больше правого - меняем местами
if (val1 > val2) {
set(myNumbers, j, val2);
set(myNumbers, j + 1, val1);
}
j = j + 1;
}
pass = pass + 1;
}
// Выводим отсортированный массив
print("Sorted Array (Result):");
k = 0;
while (k < arrSize) {
print("Index " + k + ": " + get(myNumbers, k));
k = k + 1;
}
// ==========================================
// ФИНАЛ
// ==========================================
print("");
print("Test Complete. FoxLang is working perfectly!");
+45
View File
@@ -0,0 +1,45 @@
// Тест математических операций
print("=== Math Operations Test ===");
// Базовые операции
int a = 10;
int b = 3;
print("a = " + a + ", b = " + b);
print("a + b = " + (a + b));
print("a - b = " + (a - b));
print("a * b = " + (a * b));
print("a / b = " + (a / b));
print("a % b = " + (a % b));
// Операции с float
float x = 10.5;
float y = 3.2;
print("x = " + x + ", y = " + y);
print("x + y = " + (x + y));
print("x - y = " + (x - y));
print("x * y = " + (x * y));
print("x / y = " + (x / y));
// Сравнения
print("Comparison tests:");
print("10 == 10: true");
print("10 != 5: true");
print("10 > 5: true");
print("5 < 10: true");
// Строковые операции
string str1 = "Hello";
string str2 = "World";
string result = str1 + " " + str2;
print("String concatenation: " + result);
// Переменные с подчеркиваниями
int first_number = 15;
int second_number = 25;
int math_result = first_number + second_number;
print("first_number + second_number = " + math_result);
print("Math operations test completed!");
fox();
+32
View File
@@ -0,0 +1,32 @@
// math_utils.fox - Математические утилиты
int add_numbers(int a, int b) {
return a + b;
}
int multiply(int x, int y) {
return x * y;
}
int max_value(int a, int b) {
if (a > b) {
return a;
}
return b;
}
int min_value(int a, int b) {
if (a < b) {
return a;
}
return b;
}
float calculate_average(int a, int b) {
return (a + b) / 2.0;
}
// Функция с подчеркиванием
int power_of_two(int n) {
return n * n;
}
+43
View File
@@ -0,0 +1,43 @@
// Тест модульной системы
print("=== Modules Test ===");
// Подключаем математические утилиты
include("math_utils.fox");
// Подключаем строковые утилиты
include("string_utils.fox");
// Тестируем математические функции
int sum = add_numbers(10, 20);
print("add_numbers(10, 20) = " + sum);
int product = multiply(5, 6);
print("multiply(5, 6) = " + product);
int maximum = max_value(15, 25);
print("max_value(15, 25) = " + maximum);
int minimum = min_value(15, 25);
print("min_value(15, 25) = " + minimum);
float avg = calculate_average(10, 20);
print("calculate_average(10, 20) = " + avg);
int squared = power_of_two(7);
print("power_of_two(7) = " + squared);
// Тестируем строковые функции
string greeting = create_greeting("Alice");
print(greeting);
string repeated = repeat_string("Fox", 3);
print("repeat_string('Fox', 3) = " + repeated);
string user_info = format_user_info("john_doe", 25);
print(user_info);
string full_name = get_full_name("John", "Doe");
print("get_full_name('John', 'Doe') = " + full_name);
print("Modules test completed!");
fox();
+24
View File
@@ -0,0 +1,24 @@
// Тест функции read_file
print("=== Тест функции read_file ===");
// Создаем тестовый файл
string test_content = "Hello from FoxLang!";
// Тестируем чтение существующего файла
string content = read_file("telegram_bot/token.txt");
if (content != "") {
print("✅ Чтение файла: УСПЕШНО");
print("Содержимое: " + content);
} else {
print("❌ Чтение файла: ОШИБКА");
}
// Тестируем чтение несуществующего файла
string empty = read_file("nonexistent.txt");
if (empty == "") {
print("✅ Обработка ошибки: УСПЕШНО");
} else {
print("❌ Обработка ошибки: ОШИБКА");
}
print("=== Тест завершен ===");
-24
View File
@@ -1,24 +0,0 @@
// Функция, которая проверяет число и возвращает код ошибки
int checkNumber(int n) {
if (n < 0) {
return 1; // Код ошибки 1: число отрицательное
}
if (n > 100) {
return 2; // Код ошибки 2: число слишком большое
}
return 0; // 0 - всё хорошо
}
// Переменная для теста
int val = -5;
// присваиваем результат функции в переменную!
int errorCode = checkNumber(val);
// Проверяем, что записалось
if (errorCode == 0) {
print("Success!");
} else {
print("Error happened. Code:");
print(errorCode); // Выведет 1
}
-29
View File
@@ -1,29 +0,0 @@
int coins = 100;
string playerName = "Alex";
// Коментприй
void showStats() {
print("--- Stats ---");
print("Player: " + playerName);
print("Coins: " + coins);
}
void mainLogic() {
print("Welcome to Fox Game!");
showStats();
print("You found a chest! Adding 50 coins.");
coins = coins + 50;
showStats();
print("Enter new name:");
playerName = input();
print("Updated profile:");
showStats();
}
void init() {
print("Initializing libs...");
}
+24
View File
@@ -0,0 +1,24 @@
// string_utils.fox - Строковые утилиты
string create_greeting(string name) {
return "Hello, " + name + "!";
}
string repeat_string(string text, int count) {
string result = "";
int i = 0;
while (i < count) {
result = result + text;
i = i + 1;
}
return result;
}
string format_user_info(string user_name, int age) {
return "User: " + user_name + ", Age: " + age;
}
// Функция с подчеркиванием
string get_full_name(string first_name, string last_name) {
return first_name + " " + last_name;
}
-30
View File
@@ -1,30 +0,0 @@
{
include("script.fox");
// Глоб. Переменные
string Player = "Artem";
int hpplayer = 100;
int level = 1;
int usr_input = 0;
void Hello() {
print("Привет, " + Player + "!");
print("Тебе предстоит пройти это подземелье");
}
Hello();
void ShowStats() {
print("-----------Статистика-----------");
print("Имя игрока: " + Player);
print("Здоровье: " + hpplayer);
print("Уровень: " + level);
}
ShowStats();
usr_input = input();
if (usr_input == 1) {
init();
} else {
print("Не найдено действие для этого ввода.");
}
}
+32
View File
@@ -0,0 +1,32 @@
// Тест базовых типов данных и переменных
print("=== Variables Test ===");
// Целые числа
int age = 25;
print("Age: " + age);
// Дробные числа
float pi = 3.14159;
print("Pi: " + pi);
// Строки
string name = "FoxLang";
print("Name: " + name);
// Логические значения
bool is_active = true;
bool is_disabled = false;
print("Active: " + is_active);
print("Disabled: " + is_disabled);
// Переменные с подчеркиваниями
string user_name = "john_doe";
int user_age = 30;
bool is_admin = false;
print("User: " + user_name);
print("User age: " + user_age);
print("Is admin: " + is_admin);
print("Variables test completed!");
fox();